What is the process to configure and run a group of tests in Playwright Test API?


Running Grouped Tests with Playwright

In @playwright/test, you can group your tests using test.describe(). This function takes a title and a callback function containing your tests. Here's an example:

test.describe('two tests', () => {
  test('one', async ({ page }) => {
    // ... 
  test('two', async ({ page }) => {
    // ...

You can also configure your tests to run in parallel or serially. To run all tests in parallel, use test.describe.configure({ mode: 'parallel' }); before declaring any groups or tests.

test.describe.configure({ mode: 'parallel' });

If you want your tests to run serially, use test.describe.serial(). For parallel execution, use test.describe.parallel.only().

test.describe.serial('serial tests', () => {
  // ...

test.describe.parallel.only('parallel tests', () => {
  // ...

Remember, running tests serially isn't recommended as it's better to have isolated tests. Parallel execution might cause inter-dependency issues.

You can also configure retries and timeouts for each test case using retries and timeout properties in the options object.

test.describe.configure({ retries: 2, timeout: 5000 });

For more tips on efficient test writing, check out this blog post.


Thank you!
Was this helpful?
Still have questions?

If you still have questions, please ask a question and I will try to answer it.

Related Questions

AboutQuestionsDiscord ForumBrowser ExtensionTagsQA Jobs

Rayrun is a community for QA engineers. I am constantly looking for new ways to add value to people learning Playwright and other browser automation frameworks. If you have feedback, email luc@ray.run.