2. Nội dung
1. Automation Testing và ứng dụng BDD (behavior
driven developmetn) trong automation
WebApp Automation
■ Công cụ để Automation test
cho WebApp
■ Cách nhận diện và điều khiển
đối tượng trên webApp
■ Cách kiểm tra kết quả mong
đợi khi automation cho
webApp
Desktop Automation
■ Công cụ để Automation test
cho Desktop
■ Cách nhận diện và điều khiển
đối tượng trên Desktop
■ Cách kiểm tra kết quả mong
đợi khi automation cho
Desktop
4. Nội dung
1. Automation testing and its benefits
2. When to do Automation Testing
3. BDD (Behavior driven development) in Automation
testing
5. 1. Automation testing and its benefits
Manual Testing Automation Testing
A process that makes use of automation testing tools to excute
prescripted tests on aplications, then compares the test results
to the expected behavior and reports it to the tester
6. 1. Save time and money
• They can be repeated again and again
• They can execute overnigh
2. Reusale: Automation testing toool allow to reuse the
scripts on different versions of the application
3. Increase test coverage
1. Automation testing and its benefits
7. 2. When to do Automation Testing
1. Need to run the test cases a lot number of times
2. The number test cases is high, and these will be run
more than once
3. The test case wont be frequently updated
8. 3. Behavior driven development
3.1. Khái niệm BDD, lợi ích khi sử dụng BDD
3.2. Cài đặt, khởi tạo project BDD
3.3. Viết nội dung test case bằng BDD
9. Behavior driven development
Quy trình phát triển phần mềm theo đó Kịch bản test được viết trước dưới dạng
feature file bằng ngôn ngữ tự nhiên
3.1. Khái niệm BDD, lợi ích khi sử dụng BDD
10. • Tài liệu được viết dưới dạng ngôn ngữ tự nhiên, bất kỳ
đối tượng nào cũng có thể hiểu được.
• Nâng cao chất lượng phần mềm, tạo ra sản phẩm hữu
ích: Vì phát triển phần mềm theo hướng hành vi nên
có thể focus vào việc tạo ra sản phẩm đúng với yêu cầu
của khách hàng.
3.1. Khái niệm BDD, lợi ích khi sử dụng BDD
11. • Cài đặt specflow để viết test case dạng BDD (Bộ cài:
hthienSETUPAuto)
• Tạo Project Test
• Add các reference cần thiết (hthienSETUPAutoLib)
• TechTalk.SpecFlow.dll
• Setting config để đảm bảo nội dung file .cs tự sinh khi viết
testcase
3.2. Cài đặt, khởi tạo project BDD
12.
13.
14.
15.
16. 1. Tạo file test case
2. Các viết nội dung test case
3. Mô tả các thao tác của từng bước trong test case
Một số lưu ý:
-Mỗi một file Feature nên gắn với 1 tính năng cần kiểm tra
-Nên chia nhỏ các test case để đảm bảo các case chạy độc lập nhau
-Không nên sử dụng kết quả của test case trước để làm đầu vào
cho test case sau
3.3. Viết test case sử dụng BDD
17. Một số lưu ý: Mỗi file test case là 1 tính năng cần kiểm tra (trong đó sẽ
chứa các test case cần kiểm tra của tính năng đó) – Tương đương như
một test suite
Tạo file Test case
18. Viết nội dung Test case
Feature dùng để mô tả cái tính năng chúng ta sẽ test
Scenario [mô tả tóm tắt nội dung kịch bản test của feature]
Given: Mô tả trạng thái ban đầu của hệ thống
When: Mô tả các bước hay các hành vi thực hiện trên hệ thống
Then: Mô tả bước kiểm tra
Background: Bước thực hiện trước khi chạy qua các scenario
“Dữ liệu”: Dữ liệu sử dụng trong test case – có thể là giá trị cụ thể hoặc lấy từ
Excel
Mỗi scenario gồm nhiều steps. Các steps được bắt đầu bằng Given, When,
Then. Dùng # để comment
19.
20. Mô tả các thao tác của từng bước thực hiện
Các bước chưa có nội dung mô tả
21. ■Generate nếu chưa có file mô tả
■Copy methods to clipboard và paste vào file Step trong trường hợp đã có file
mô tả các bước
Mô tả các thao tác của từng bước thực hiện
22. Mô tả các thao tác của từng bước thực hiện
Chỉnh sửa các bước đã có nội dung
24. Nội dung
1. Tổng quan về Selenium
2. Nhận diện và điều khiển đối tượng thao tác trên
WebApp
3. Kiểm tra kết quả mong đợi trên WebApp
4. Một số hàm chung sử dụng trong Automation
WebApp Test cho các sản phẩm của HCT
25. 1. Tổng quan về Selenium
1. Selenium là: công cụ mã nguồn mở giúp kiểm thử tự
động các ứng dụng web dựa trên việc tái thực hiện các
thác của người dùng và so sánh kết quả theo kịch bản
được định nghĩa
2. Làm thế nào để ứng dụng Selenium vào hoạt động kiểm
thử?
• Add reference để thực thi test Selenium (WebDriver.dll,
WebDriver.Support.dll)
• Add Driver vào project
• Add thêm một số các hàm dùng chung để hỗ trợ công tác
27. Nội dung
1. Cài đặt và thiết lập công cụ auto testing cho sản phẩm
Desktop
2. Nhận diện và điều khiển đói tượng thao tác trên phần
mềm Desktop
3. Kiểm tra kết quả mong đợi trên phần mềm Desktop
Editor's Notes
<configSections>
<section name="specFlow" type="TechTalk.SpecFlow.Configuration.ConfigurationSectionHandler, TechTalk.SpecFlow" />
</configSections>
<startup>
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5" />
</startup>
<specFlow>
<unitTestProvider name="mstest" />
<!-- For additional details on SpecFlow configuration options see http://go.specflow.org/doc-config -->
</specFlow>