How to search with Playwright
Searching a website is an everyday action for most internet users. For most services, the speed at which their customers are able to get to the products they are looking for is directly tied to revenue. To enable that, a performant and reliable search function is needed.
Steps
The example below, which is running against our test webshop, shows how we can verify the correctness of a search’s result from an end-to-end perspective. In short, we will:
- Enter a known search term
- Firstly, assert the expected number of results is being shown
- If the previous point is true, assert that all expected search results are shown
Run this example as follows:
When testing search on large sets of data, you might additionally need to handle result pagination, together with the possibility of duplicate results.
Listing search terms and their corresponding expected results in a file could be helpful for additional, more thorough testing. The contents of the file would be then used to drive the searches and comparisons. An example could look like the following JSON:
Takeaways
- Moving test data to a separate file can help when running more thorough comparisons.
- Assertion libraries help us cleanly verify multiple constraints in our test.