- vừa được xem lúc

[Playwright Interview question #13]: Parallel execution trong Playwright hoạt động ra sao?

0 0 2

Người đăng: Playwright Việt Nam

Theo Viblo Asia

Câu hỏi phỏng vấn #13: Parallel execution trong Playwright hoạt động ra sao?

Trả lời mẫu:

Playwright Test hỗ trợ parallel execution mạnh mẽ:

1. Config workers:

// playwright.config.js
export default { workers: 4, // Số parallel workers fullyParallel: true, // Run all tests in parallel
}

2. Control parallel mode:

// Parallel by default trong file
test.describe.parallel('suite', () => { test('test 1', async ({ page }) => { // runs in parallel }); test('test 2', async ({ page }) => { // runs in parallel });
}); // Serial execution
test.describe.serial('dependent tests', () => { test('create user', async ({ page }) => { // runs first }); test('update user', async ({ page }) => { // runs after create });
});

3. Sharding cho CI:

#Split tests across machines
npx playwright test --shard=1/3
npx playwright test --shard=2/3
npx playwright test --shard=3/3

4. Worker-scoped fixtures:

// Shared per worker
test.use({ workerStorageState: async ({}, use, workerInfo) => { const id = workerInfo.workerIndex; await use(`worker-${id}-auth.json`); }
});

💡 Tips:

  • Default: 1 worker per test file
  • Tăng workers = tăng tốc độ nhưng tốn resources
  • Use serial mode cho dependent tests
  • Isolated browser contexts ensure test independence

Lời Kết

Playwright đang trở thành một trong những automation frameworks phổ biến nhất cho web testing. Thông qua series này, hy vọng bạn sẽ:

  • Nắm vững kiến thức từ cơ bản đến nâng cao
  • Tự tin trong các buổi phỏng vấn
  • Áp dụng hiệu quả vào dự án thực tế
  • Trở thành một phần của cộng đồng Playwright Việt Nam năng động

📚 Bắt đầu hành trình của bạn với: Bài 1: Playwright vs Selenium

💬 Có câu hỏi? Tham gia group Facebook của chúng mình!

Theo dõi series để không bỏ lỡ bài viết mới!

Bình luận

Bài viết tương tự

- vừa được xem lúc

JavaScript "cơ bản" (Phần 2): Lexical Environment - Thứ cần biết để hiểu về Closures

Trong phần trước chúng ta đã tìm hiểu một số thành phần cơ bản trong bộ Complier của JavaScript. Trong bài viết trước có xuất hiện khái niệm Lexical Environment mà mình chưa có thời gian để giải thích cụ thể, vậy thì trong bài viết này chúng ta sẽ cùng tìm hiểu cụ thể hơn về khái niệm này và cách nó

0 0 118

- vừa được xem lúc

JavaScript Execution Contexts and Call Stacks

JavaScript đã trở thành một trong những ngôn ngữ lập trình phổ biến nhất hiện nay. Nó cũng dẫn đầu về số lượng repository GitHub và là ngôn ngữ lập trình được thảo luận nhiều nhất trên StackOverflow.

0 0 71

- vừa được xem lúc

JavaScript "cơ bản" (Phần 1): Compiler

JavaScript là một trong những ngôn ngữ lập trình phổ biến nhất hiện nay. Có thể bạn chưa quen với nó hoặc có thể bạn đã sử dụng nó trong nhiều năm.

0 0 46

- vừa được xem lúc

Call Stack và Execution Context trong JavaScript

Execution Context. Execution context là nơi mà JavaScript code được thực thi.

0 0 26

- vừa được xem lúc

Sử dụng Playwright để crawl dữ liệu - Phần 1

Nhân dịp đầu xuân, chúc anh chị em Viblo dồi dào sức khỏe, mã đáo thành công ạ ^^. Xin chào mọi người, hôm nay mình xin chia sẻ cách sử dụng Playwright - 1 framework cho testing mới ra lò cách đây.

0 0 45

- vừa được xem lúc

End-to-End Testing Renec Chain - Tương tác ví Demon - Playwright

In the fast-paced world of software development, ensuring the reliability and robustness of your blockchain-based applications is crucial. One way to achieve this is through end-to-end (E2E) testing.

0 0 36