IBM Support

Recording with DevOps Test Performance does not need to be done with multiple browsers

White Papers


Abstract

DevOps Test Performance (DTP) users are sometimes presented with a requirement to record tests that use multiple, different browsers. In most cases, this requirement is unnecessary.

Content

DevOps Test Performance Notes

Recording – Choosing a browser

The short answer to the question "Which browser do we use for recording?" is “It does not matter.”

The DevOps Test Performance (formerly Rational Performance Tester) tool is designed to capture protocol between a browser and a server application to produce a human-readable script, and then use that script to emulate 1-n users interacting with the same server application. In its emulation, DTP does not use a browser.

Scripts

Here are three scripts recorded against the www.thebcdl.org site with Firefox, Internet Explorer, Chrome, and Edge* browsers. The user steps recorded were identical.

image-20200520133401-1

image-20200520133401-2

image-20200520133401-3

image-20200520133401-4

*Note: Recording of the Edge browser is not officially supported but it is easily achievable by starting an Internet Explorer recording and switching to the Edge browser to navigate the application under test.

At a script level, they are practically identical. The differences are in the order of some requests – which is not specific to a browser – and timestamps – the long strings of digits beginning with “15898…”. Recording again, with any browser, would produce a similar script with differences in request order and current timestamp.

Requests

Here is the primary request from the first page of the Firefox recording:

  GET / HTTP/1.1  Host: www.thebcdl.org  User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:76.0) Gecko/20100101 Firefox/76.0  Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8  Accept-Language: en-US,en;q=0.5  Accept-Encoding: gzip, deflate  Connection: keep-alive  Upgrade-Insecure-Requests: 1

Here is the primary request from the first page of the Internet Explorer recording:

  GET / HTTP/1.1  Accept: text/html, application/xhtml+xml, image/jxr, */*  Accept-Language: en-US  User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; Trident/7.0; rv:11.0) like Gecko  Accept-Encoding: gzip, deflate  Host: www.thebcdl.org  Connection: Keep-Alive

Here is the primary request from the first page of the Chrome recording:

  GET / HTTP/1.1  Host: www.thebcdl.org  Connection: keep-alive  Upgrade-Insecure-Requests: 1  User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/81.0.4044.138 Safari/537.36  Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9  Accept-Encoding: gzip, deflate Accept-Language: en-US,en;q=0.9

Here is the primary request from the first page of the Chrome recording:

  GET / HTTP/1.1  User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/64.0.3282.140 Safari/537.36 Edge/17.17134  Accept-Language: en-US  Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8  Upgrade-Insecure-Requests: 1  Accept-Encoding: gzip, deflate  Host: www.thebcdl.org  Connection: Keep-Alive

The differences are in the order of headers, which is irrelevant as the application server accepts any, and the User-Agent and Accept headers.

The User-Agent header informs server of client application identity, OS, vendor, and version of the requesting process. This information is generally not processed by servers.

The Accept header tells the requesting process what types of data are acceptable in a response. DevOps Test Performance maintains the recorded Accept header but accepts all response type data.

The Upgrade-Insecure-Requests header sends a signal to the server expressing client’s preference for an encrypted and authenticated response (HTTPS). This header is not supported by Internet Explorer. This header is not widely used on the server side.  Applications that require it do not work with Internet Explorer.

Conclusion

At the protocol level, the meaningful pieces of a request are browser independent. Practically speaking that means that a requirement to record tests with more than one browser is generally unnecessary.

The exception comes IF AND ONLY IF the server application flow takes radically different paths based on the browser being used. Such instances are rare.

[{"Business Unit":{"code":"BU048","label":"IBM Software"},"Product":{"code":"SSMMM5","label":"IBM Rational Performance Tester"},"ARM Category":[{"code":"a8m0z000000bpOIAAY","label":"Performance Tester-\u003ERecording"}],"ARM Case Number":"","Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"All Version(s)","Line of Business":{"code":"LOB67","label":"IT Automation \u0026 App Modernization"}},{"Type":"MASTER","Line of Business":{"code":"LOB67","label":"IT Automation \u0026 App Modernization"},"Business Unit":{"code":"BU048","label":"IBM Software"},"Product":{"code":"SSE8AUA","label":"IBM DevOps Test Performance"},"ARM Category":[{"code":"a8m0z000000bpOIAAY","label":"Performance Tester-\u003ERecording"}],"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"All Versions"}]

Document Information

Modified date:
30 June 2024

UID

ibm16211910