0
0
Lập trình
Flame Kris
Flame Krisbacodekiller

Tự Động Hóa Kiểm Thử Thông Minh Hơn Với AI và Playwright

Đăng vào 1 tháng trước

• 4 phút đọc

Trong thời đại công nghệ hiện nay, tự động hóa kiểm thử (QA) là một phần quan trọng trong quy trình phát triển phần mềm. Tuy nhiên, việc viết và duy trì các bài kiểm thử tự động có thể gặp nhiều khó khăn, như chọn lựa bộ chọn không ổn định, kiểm thử không đáng tin cậy, và việc viết nhiều trường hợp kiểm thử tốn thời gian. Bài viết này sẽ khám phá cách kết hợp giữa Playwright, Cucumber và các Mô Hình Ngôn Ngữ Lớn (LLMs) để cải thiện quy trình kiểm thử của bạn.

Tại Sao Nên Kết Hợp AI Vào Tự Động Hóa Kiểm Thử?

Tự động hóa kiểm thử UI rất tuyệt vời… cho đến khi nó không còn hiệu quả. Bạn đã thấy những điều này:

  • Các bộ chọn dễ bị lỗi
  • Các bài kiểm thử không ổn định
  • Việc viết trường hợp kiểm thử không bao giờ hết
  • Tốn thời gian tìm kiếm log sau khi xảy ra lỗi

Các Mô Hình Ngôn Ngữ Lớn (LLMs) có thể giúp bạn viết, duy trì và gỡ lỗi các bài kiểm thử nhanh hơn. Bài viết này sẽ hướng dẫn bạn cách kết hợp Playwright và Cucumber với LLMs để có một quy trình QA thông minh hơn.

Ý Tưởng Cốt Lõi

Thay vì viết từng bài kiểm thử từ đầu và gỡ lỗi thủ công, hãy sử dụng một trợ lý AI (Gemini, GPT, Claude, v.v.) để:

  • Tạo các trường hợp kiểm thử từ yêu cầu hoặc mô tả PR.
  • Đề xuất các bộ chọn ổn định.
  • Phân tích các log thất bại và đề xuất sửa lỗi.
  • Tự động làm mới các bước không ổn định.

Hãy nghĩ về nó như là kiểm thử cặp với AI.

Tổng Quan Quy Trình

  1. Cung cấp các câu chuyện người dùng / yêu cầu → LLM đề xuất các kịch bản kiểm thử.
  2. Chuyển đổi thành các bước Playwright + Cucumber với sự trợ giúp của AI.
  3. Chạy kiểm thử — AI hỗ trợ gỡ lỗi các bước không ổn định.
  4. Tinh chỉnh & Cam kết.

1. Tạo Các Trường Hợp Kiểm Thử Tự Động

Mở Google AI Studio hoặc ChatGPT với ngữ cảnh dự án của bạn.

javascript Copy
Tạo các trường hợp kiểm thử đăng nhập Playwright cho:
- Đăng nhập bằng email/mật khẩu
- Phương thức OTP
- Đăng nhập SSO (Google + GitHub)
- Định dạng email không hợp lệ

Kết quả có thể trông như sau:

javascript Copy
Feature: Đăng Nhập

  Scenario: Đăng nhập thành công bằng email và mật khẩu
    Given Tôi đang ở trang đăng nhập
    When Tôi nhập email và mật khẩu hợp lệ
    Then Tôi sẽ đến trang dashboard

  Scenario: Phương thức OTP khi đăng nhập
    Given Tôi nhập email hợp lệ nhưng mật khẩu sai
    Then Tôi sẽ được yêu cầu nhập OTP

Dán đoạn mã này vào tests/features/login.feature của bạn.

2. Triển Khai Định Nghĩa Bước Với Sự Giúp Đỡ Của AI

Tệp pages/login/steps.js của bạn có thể bắt đầu như sau:

javascript Copy
const { Given, When, Then } = require('@cucumber/cucumber');
const { expect } = require('@playwright/test');
const loc = require('../../locators/login.json');

Given('Tôi đang ở trang đăng nhập', async function () {
  await this.page.goto(process.env.BASE_URL + '/login');
});

When('Tôi nhập email và mật khẩu hợp lệ', async function () {
  await this.page.fill(loc.email, process.env.TEST_EMAIL);
  await this.page.fill(loc.password, process.env.TEST_PASSWORD);
  await this.page.click(loc.submit);
});

Then('Tôi sẽ đến trang dashboard', async function () {
  await expect(this.page.locator(loc.dashboard)).toBeVisible({ timeout: 30000 });
});

Nếu một bộ chọn bị hỏng, hãy hỏi LLM của bạn:

Đề xuất một bộ chọn Playwright ổn định hơn cho nút gửi đăng nhập

3. Gỡ Lỗi Thất Bại Với AI

Thay vì tìm kiếm log, hãy dán đầu ra lỗi vào công cụ AI của bạn:

javascript Copy
Lỗi: vi phạm chế độ nghiêm ngặt: locator("button[type=submit]") đã giải quyết thành 2 phần tử

Yêu cầu:

Đề xuất một bộ chọn Playwright duy nhất dựa trên đoạn mã HTML này …

4. Giữ Cho Các Bài Kiểm Thử Của Bạn Sạch

Hãy yêu cầu mô hình làm mới:

Làm mới các bước Playwright này để sử dụng các đối tượng trang và giảm thiểu sự trùng lặp.

Nó có thể viết lại các định nghĩa bước thành các đối tượng trang có thể tái sử dụng.

Công Cụ & Tích Hợp

  • VS Code / Tiện ích mở rộng Windsurf AI — gợi ý và làm mới trực tiếp.
  • Google AI Studio — cải thiện kỹ thuật gợi ý.
  • LangChain — tự động phân tích log lặp đi lặp lại.

Lợi Ích Chính

  • Tạo trường hợp kiểm thử nhanh hơn
  • Bộ chọn ổn định → ít lỗi hơn
  • Gỡ lỗi dễ dàng hơn
  • Mã kiểm thử sạch, dễ bảo trì

Tóm Tắt

Kết hợp AI vào quy trình QA của bạn:

  • Tạo kiểm thử từ yêu cầu
  • Gỡ lỗi lỗi nhanh hơn
  • Làm mới cho khả năng bảo trì

Bộ công cụ Playwright + Cucumber của bạn giờ đã thông minh hơn.

Hãy thử ngay:

  • Tài liệu Playwright
  • Google AI Studio

Bình luận bên dưới nếu bạn đang thử nghiệm với kiểm thử được cung cấp bởi AI!

Gợi ý câu hỏi phỏng vấn
Không có dữ liệu

Không có dữ liệu

Bài viết được đề xuất
Bài viết cùng tác giả

Bình luận

Chưa có bình luận nào

Chưa có bình luận nào