When performance tests are executed, the main focus is on how the application behaves under heavy load. To analyze it, you need to extract data from a web page and create a new HTTP request with the retrieved value. Or you just need to parse the response and validate an assertion. To deal with these challenges efficiently, you can use CSS Selectors in your JMeter.

In this article, we’ll go through the basic usage of CSS Selectors in JMeter scripts. If you need more on this topic, please feel free to contact me through our contact us form.

How to use CSS selector / CSS Selector Performance Test

We have an HTTP Sampler which makes a GET request to a landing page e-commerce website. In the main page, products are listed. To make a randomized navigation from the main page, the URL of the new pages needs to be extracted. To do

  • Add a CSS Extractor which will fetch the URLs.

css selectors Jmeter

Extracting Data from Response

ProductLink Extractor looks like the above figure.

  • Reference Name field needs to be filled out. This variable will be used in different places with this reference name.
  • CSS / JQuery expression should be detected from the console of your web browser. In case you are familiar with Selenium, you won’t have any difficulty.
  • Attribute field defines the attribute of the extracted web element.
CSS Selector in JMeter SCripts

CSS Selector

  • In order to make a GET request to a random link from a list, you should enter “0” in Match No.
  • Set default value to NoLinkFound or a valid product Link.

Loadium compatible with Jmeter

Making a New Request

  • Fill your second HTTP sampler’s Path field with the productLink variable by using ${variableName} syntax.
  • Set Name of the HTTP sampler with the same variable so you will be able to understand which pages you hit during the test run.
Jmeter Selectors

Jmeter

By doing so in every run, you will visit a different link.

debug_css_selector

Jmeter – CSS Selector

How to debug CSS Selector

  • Add a “View Result Tree” listener in your Thread and run your test once.
  • After the execution, open “View Result Tree” listener and switch to CSS/JQuery Tester View.

There, you can debug your CSS expression in JMeter.

CSS Selector - Jmeter

CSS Selection

CSS Selector Tips

1- Absolute Path

Using .list-group>a to reach an element directly.

 

2 – Non-Absolute Path

Using a white space between tags to locate the element. Use “.” for class and “#” for id.

.list-group .facebook-signin find the login button

 

3- Starting Text of an Attribute

You can use tag[attribute^=’starting text’] syntax.