Using the HTTP Proxy to record actions
The HTTP Proxy allows you to route a browser, such as Internet Explorer, Firefox, or Chrome, through JMeter before accessing the entered URL. It behaves in similar fashion to HTTP proxies such as Fiddler and HTTP Watch in that it stores a copy of each request and the corresponding headers, cookies, and web form values passed along with the request.
By using this component we can record entire BI workflows and use the individual requests to quickly build comprehensive test plans or regression tests. The HTTP Proxy setup in JMeter is described below.
Adding and Using an HTTP Proxy
Organizing samplers within logic controllers
Once the samplers have been collected we can organize them using logic controllers. While this isn't strictly necessary, it makes individual samplers easier to find and enables meaningful results analysis.
Customizing for Dynamic Data
The samplers grouped above represent a workflow where a user performs a login to the BI4 system and then logs off again. That workflow was recorded with a specific user account (such as the administrator) and received a unique session identifier (identified by the string bttoken). The BI4 user experience is customized for individual users by leveraging this type of dynamic data.
In order to properly emulate distinct users and sessions we must extract user specific data from the HTTP responses provided by the BI4 web applications such as BI Launch Pad.
For this simple test plan we have but a single piece of dynamic data, the bttoken value extracted in the previous section. The fact that JMeter stores test plans in the plain text JMX format means that we can use a text editor such as Notepad to apply variables wherever they are required without a significant amount of manual effort.
Executing the Test Plan
Now we will execute the test and ensure it is functioning properly.
The final step in this workflow is to execute the test for a large number of users and evaluate the performance of the test. This represents the most important part of any performance test and will be covered in each of the test plans on this wiki.
For our immediate purposes we will not cover server resource consumption, but that process is documented in an existing SCN Blog Post.
You have now successfully created your first test plan! This plan provides a foundation for many other test plans involving the BI Launch Pad and should prove useful as you continue leveraging JMeter for your SAP BusinessObjects BI Platform performance testing needs.