Anh Tester chia sẻ đến bạn các "Prompt" để hỏi Chat AI trong Software Testing Automation. Có thể áp dụng trên các model AI như ChatGPT, Gemini, Deepseek, Claude,...một cách chuyên nghiệp và sát với chủ đề câu hỏi trong kiểm thử thủ công dành cho Tester.
Khi sử dụng Chat AI trong Test Automation, bạn có thể đặt các câu hỏi theo nhiều hướng khác nhau, từ viết test case, tạo script, giải quyết lỗi, tối ưu framework đến tư vấn về công nghệ.
Dưới đây là một số dạng
prompt hữu ích:
1. Viết Test Case & Test Script
- "Hãy viết một test case cho chức năng đăng nhập của ứng dụng web với Selenium và Java."
- "Tạo một script kiểm thử API với RestAssured để kiểm tra endpoint
/login
với phương thức POST."
- "Viết một test script bằng Cypress để kiểm tra form đăng ký."
- "Thiết kế class Page Object Model cho trang Customers"
- "Viết Gherkin cho chức năng Manage Project sử dụng Cucumber JVM"
Nâng cao hơn bạn có thể upload lên 1 tấm hình của màn hình nào đó, sau đó hỏi về chức năng bên trong trang đó. Ví dụ:

"Tạo class Page Object Model trong Selenium Java TestNG giúp mình từ trang Customer trong hình"
2. Debugging & Fixing Errors
- "Tôi đang gặp lỗi
ElementNotInteractableException
trong Selenium. Nguyên nhân và cách khắc phục?"
- "JUnit test của tôi báo lỗi
NoSuchMethodError
. Điều này có nghĩa gì và cách sửa lỗi?"
3. Tối ưu Test Automation và Code Script
- "Làm thế nào để tối ưu test script Selenium để chạy nhanh hơn?"
- "Có cách nào để giảm flakiness trong test automation với Playwright không?"
- "Hướng dẫn cách sử dụng Page Object Model (POM) trong Selenium với Python."
- Gửi lên đoạn mã, có thể cả class hoặc một hàm, sau đó hỏi "Đoạn code trên có ý nghĩa như thế nào", "Class này dùng để làm gì và có ý nghĩa như thế nào"
Trong quá trình AI trả lời, nếu bạn muốn chỉnh sửa chi tiết chỗ nào trong câu trả lời gợi ý thì bạn nêu lên cụ thể luôn để AI generate lại câu trả lời khác có chỉnh sửa theo ý muốn của mình.
4. Cấu hình & Tích hợp
- "Hướng dẫn cấu hình TestNG để chạy parallel test trên Selenium."
- "Cách tích hợp báo cáo Allure với pytest trong Python?"
- "Làm sao để chạy test Playwright trên CI/CD với GitHub Actions?"
5. So sánh & Lựa chọn công nghệ
- "Selenium với Cypress thì khi nào nên chọn công cụ nào?"
- "JUnit và TestNG khác nhau như thế nào?"
- "Có framework nào tốt hơn cho API testing ngoài RestAssured?"
Một số prompt cụ thể liên quan đến
Playwright, Katalon, JMeter, Jenkins, Selenium, TestNG, Allure report trong Test Automation:
1. Playwright
- "Viết một script Playwright bằng JavaScript để kiểm tra chức năng tìm kiếm trên Google."
- "Làm thế nào để chụp ảnh màn hình khi test thất bại trong Playwright?"
- "Hướng dẫn cách chạy test Playwright trên trình duyệt mobile simulation."
- "Cách sử dụng fixtures trong Playwright với TypeScript."
- "So sánh Playwright với Selenium: Công cụ nào tốt hơn cho web automation?"
2. Katalon
- "Hướng dẫn tạo test case kiểm thử API trong Katalon Studio."
- "Làm thế nào để tích hợp Katalon với Jenkins để chạy test tự động?"
- "Cách tạo Data-Driven Test trong Katalon với file Excel."
- "Làm sao để kiểm thử mobile app bằng Katalon?"
- "Hướng dẫn sử dụng Katalon Smart Wait để giảm flakiness trong test."
3. JMeter
- "Hướng dẫn tạo test script JMeter để kiểm tra hiệu năng API RESTful."
- "Làm thế nào để cấu hình JMeter để gửi 1000 requests mỗi giây?"
- "So sánh JMeter với Gatling: Công cụ nào phù hợp hơn cho load testing?"
- "Cách tích hợp JMeter với Grafana để theo dõi hiệu năng."
- "Làm sao để kiểm tra tải đồng thời với nhiều người dùng trên JMeter?"
4. Jenkins
- "Cách tạo pipeline trong Jenkins để chạy test automation với Selenium."
- "Hướng dẫn cấu hình Jenkins để chạy test Playwright trên môi trường Docker."
- "Làm sao để gửi báo cáo test qua email sau khi Jenkins chạy xong?"
- "Cách trigger test tự động trong Jenkins khi có commit mới trên GitHub."
- "Hướng dẫn sử dụng Jenkinsfile để quản lý CI/CD pipeline."
5. Selenium
- "Viết một script Selenium bằng Java để tự động đăng nhập vào trang web."
- "Làm sao để xử lý popup alert trong Selenium WebDriver?"
- "Hướng dẫn sử dụng Page Object Model (POM) trong Selenium với Python."
- "Cách thực hiện headless testing với Selenium trên Chrome."
- "So sánh Selenium với Playwright: Công cụ nào phù hợp hơn cho test automation?"
6. TestNG
- "Cách sử dụng TestNG annotations như @BeforeTest, @AfterTest, @DataProvider?"
- "Hướng dẫn chạy parallel test với TestNG trong Selenium."
- "Làm sao để group test cases trong TestNG?"
- "Cách cấu hình TestNG XML file để chạy test theo thứ tự ưu tiên."
- "Tích hợp TestNG với Maven để chạy test automation như thế nào?"
7. Allure Report
- "Cách tích hợp Allure Report với TestNG để tạo báo cáo test đẹp mắt?"
- "Hướng dẫn thêm screenshot vào Allure Report khi test thất bại."
- "Làm sao để tạo custom step annotation trong Allure Report?"
- "Cách chạy Allure Report trên Jenkins để hiển thị kết quả test."
- "Hướng dẫn cấu hình Allure Report với pytest trong Python."
Khi gặp lỗi trong
Test Automation, bạn nên cung cấp đủ thông tin để dễ dàng tìm ra nguyên nhân và hướng khắc phục. Dưới đây là một số cách hỏi lỗi cụ thể:
1. Cách hỏi lỗi chung chung (KHÔNG NÊN) ❌
- "Selenium bị lỗi, sửa sao?"
- "TestNG không chạy được, giúp tôi với!"
- "Jenkins báo lỗi, làm sao fix?"
👉 Vấn đề: Câu hỏi quá chung chung, không có chi tiết về lỗi, môi trường, hoặc cách tái tạo.
2. Cách hỏi lỗi cụ thể (NÊN DÙNG) ✅
🔹 Ví dụ Lỗi trong Selenium
❓ "Tôi đang chạy Selenium WebDriver với ChromeDriver, nhưng bị lỗi ElementNotInteractableException
. Tôi đã thử Thread.sleep()
nhưng không hiệu quả. Làm sao để khắc phục?"
📌 Thông tin quan trọng cần cung cấp:
- Môi trường (Java/Python, Selenium version, ChromeDriver version)
- Lỗi cụ thể (
ElementNotInteractableException
)
- Đã thử giải pháp gì rồi?
🔹 Ví dụ Lỗi trong TestNG
❓ "TestNG báo lỗi java.lang.NullPointerException
khi chạy test suite. Tôi có sử dụng @DataProvider
, nhưng khi truyền dữ liệu vào, test case không nhận được giá trị. Đây là đoạn code của tôi:
@DataProvider(name = "testData")
public Object[][] getData() {
return new Object[][] {{"user1", "pass1"}, {"user2", "pass2"}};
}
@Test(dataProvider = "testData")
public void loginTest(String username, String password) {
System.out.println(username + " - " + password);
}
Tôi đã thử kiểm tra null nhưng vẫn không tìm ra nguyên nhân. Tôi cần sửa lỗi này như thế nào?"
📌 Thông tin quan trọng cần cung cấp:
- Mã nguồn liên quan
- Lỗi cụ thể (
NullPointerException
)
- Đã thử kiểm tra những gì?
🔹 Ví dụ Lỗi trong Jenkins
❓ "Khi chạy test automation trên Jenkins, tôi gặp lỗi java.io.IOException: Cannot run program "chromedriver"
. Tôi đã kiểm tra biến môi trường nhưng vẫn không hoạt động. Đây là file Jenkinsfile
của tôi:
pipeline {
agent any
stages {
stage('Test') {
steps {
sh 'mvn test'
}
}
}
}
Làm sao để Jenkins nhận diện được ChromeDriver?"
📌 Thông tin quan trọng cần cung cấp:
- Log lỗi đầy đủ
- File cấu hình (
Jenkinsfile
, pom.xml
)
- Đã thử cách nào?
🔹 Ví dụ Lỗi trong JMeter
❓ "Tôi đang chạy load test bằng JMeter với 500 users nhưng gặp lỗi Non HTTP response code: java.net.SocketTimeoutException
. Tôi đã tăng thời gian chờ lên 60s nhưng vẫn bị. Làm sao để xử lý?"
📌 Thông tin quan trọng cần cung cấp:
- Test Plan setup (số lượng users, thời gian chờ, API cần test)
- Log lỗi đầy đủ
- Đã thử những cách nào?
💡 Mẹo để hỏi lỗi hiệu quả:
✅ Mô tả chi tiết lỗi: Viết rõ thông báo lỗi và khi nào nó xảy ra.
✅ Cung cấp mã nguồn (nếu có): Chia sẻ đoạn code liên quan.
✅ Môi trường chạy test: Công cụ, framework, phiên bản.
✅ Các bước đã thử: Giúp tránh việc đề xuất lại giải pháp bạn đã kiểm tra.
Anh Tester chúc các bạn làm việc tốt hơn nhé 🚀
Anh Tester
Đường dẫu khó chân vẫn cần bước đi
Đời dẫu khổ tâm vẫn cần nghĩ thấu