Chuyển đến nội dung chính

BDTA - Kiểm thử tự động hướng nghiệp vụ

 Bài này dịch từ: https://sahipro.com/docs/using-sahi/business-driven-test-automation.html

Introduction - Giới thiệu

BDTA - Kiểm thử tự động hướng nghiệp vụ cho phép các tính năng kiểm thử tự động chạy sớm trong chu trình dự án - Tại lúc khi tính năng đang ở giai đoạn khái niệm. Ứng dụng (hoặc phần mềm) cần test chưa cần phải sẵn sàng (chưa cần hoạt động được) để bắt đầu BDTA.

Với BDTA bạn có thể làm các việc dưới đây kể cả khi ứng dụng chưa hoàn chỉnh:

  1. Mô tả các dòng chảy bằng các dòng tiếng Anh đơn giản, gọi đơn giản là Key Words (Từ khóa) (Tại sao là tiếng Anh ? - Vì tiếng Anh thông dụng, và rõ ràng). (vd. Login, Add book… etc).

  2. Thêm vào các tham số khác nhau theo nhu cầu test - ở mỗi bước khác biệt. (Vd: Login | Username:test | Password: |) Những thứ này có thể chỉnh sửa/ thêm/ xóa sau đó khi ứng dụng đã hoàn chỉnh.

  3. Đối với những dữ liệu kiểm thử chuyên sâu, bạn có thể tạo ra những bước liên quan theo cách kiểm thử hướng dữ liệu (Data Driven) và tạo và lưu trữ trong file data input.

  4. Tổ chức lại các test-cases và ngữ cảnh test trong Suites.

  5. Tag các test-case để phân định logic và kiểm soát tốt hơn khi thực thi.

  6. Chia sẻ cho các member khác, quản lý để review lại.

  7. Đánh dấu lại dùng Version control

Khi ứng dụng đã sẵn sàng (để chạy test):

  1. Thực thi Từ khóa trước đó, sử dụng nút chạy hoặc / lưu bước để “thực thi” đối với các phần mềm hỗ trợ lưu bước, tạo sourcecode theo bước (Một khuyết điểm ở chỗ này là code thừa rất nhiều, hoặc code gen ra thiếu steps, không đúng thực tế…) . Cuối quy trình này bạn phải review và sửa code!

  2. Đóng gói các đối tượng lại thành đối tượng (object), file để dễ bảo trì sau này!

  3. Chạy testcases automation và xác minh công việc.

Chốt: Với quy trình BDTA, hầu hết các công việc automation đều được xử lý trước khi tính năng sẵn sàng hoạt động . Thậm chí khi automation không xong được, chúng ta vẫn có thể sử dụng mấy cái testcase này để Manual (tran: lạy mấy mẹ viết cái này, thế manual từ đầu cho khỏe).

English bellow:

Business-Driven Test Automation (BDTA) allows test automation to begin much earlier in the project lifecycle - right at the feature conceptualization stage. The application under test need not be ready to begin BDTA.

With BDTA you can do the following even before your feature or application is ready:

  1. Define the flow of the application in simple english. (Eg. Login, Add Books etc.). These are called Key Words.

  2. Add optional parameters to different steps as the test demands. (Eg. Login | Username:test | Password: |). These can be fine tuned/added/modified later when the application is ready.

  3. For data intensive tests, you can make the relevant steps data driven and create and populate the data input file.

  4. Organize your tests and scenarios in Suites.

  5. Tag the tests for logical separation and for better control on execution.

  6. Get these verified by peers and managers.

  7. Checkin into Version control

When the application is ready,

  1. Use Run/Record feature to record steps and "implement" the Key Words. The wizard lets you parametrize etc and create the necessary javascript/sahiscript function.

  2. Use Accessor Repository during recording itself or do it later to separate all object identification into a separate file for easier maintenance.

  3. Run and verify that your automation works fine.

With BDTA, most of the automation tasks have moved to before the feature is ready. Even if automation is not done, they can serve as good manual test cases since there is no code involved in them.

Nhận xét

Bài đăng phổ biến từ blog này

Hướng dẫn cơ bản về chẩn đoán mã lỗi OBD 2 trên ô tô

OBD2 - DTCs    1) Diagnostic Trouble Code (DTC) là gì? DTC hay còn gọi là mã lỗi là những mã được lưu trữ trong máy tính của xe hơi. Mỗi xe hơi hiện đại từ 1994 trở đi đều được trang bị một hộp đen có chứa máy tính, máy tính này có nhiệm vụ chẩn đoán tình trạng hiện tại của xe nhằm đảm bảo xe được vận hành an toàn không gây nguy hiểm cho người sử dụng (Ví dụ: nếu máy tính này phát hiện thắng xe đang có lỗi nó sẽ cảnh báo và không cho người dùng sử dụng xe). Mỗi mã được lưu trữ mang một ý nghĩa nhất định và chỉ ra nơi đang gặp vấn đề trong xe. Kỹ sư ô tô dựa vào đó để tìm và sửa lỗi. Mã lỗi này có thể đọc được bằng cách dùng thiết bị đọc mã lỗi do các bên thứ ba phát hành. Hiện tại trên thị trường có rất nhiều loại thiết bị đọc mã lỗi với các tính năng khác nhau. 2) DTC có đáng tin cậy không? Câu trả lời là: Có và không! Có vì nó chỉ ra những mã lỗi một cách dã chiến nhất theo ý hiểu của máy tính (Cá nhân tôi gọi là ngu ngốc). Ví dụ: nếu một bộ phận cảm biến nà...

Dùng Jira Quản lý testcase

Jira là bộ công cụ quản lý bug và công việc hiệu quả theo mô hình Agile framework, SCRUM (scrum là lý thuyết). Khi ta dùng Jira kết hợp với việc quản lý testcase: 1. Lợi ích và nhược điểm trong việc quản lý testcase dùng Jira. Jira phát triển một hệ thống software inside tools, có khả năng kết nối với các công cụ của MS như Excel, Word,... nên hầu như mọi công ty khi team test phát triển hệ thống đều kết nối MS Excel làm testcase list và Jira làm task links. Ưu điểm: nhanh gọn, excel viết testcase nhanh thông dụng, đánh kết quả tốt chỉ cần 1 template chuẩn cho việc này. Khuyết điểm: Jira testcase attach, việc tìm kiếm nội dung không tốt nếu triển khai Jira team không thành công. 2. Tester dùng Jira. Tester dùng Jira như một member và chạy task trên Project. Thường một task dev thì tester chia 3 loại: - Create test case - Prepare data test - Execution test Trong một vài công ty lớn chuyên nghiệp thì họ chia thêm một số việc như: Thực thi test môi trường thử nghiệm, môi trường pilot...

Bảy nguyên tắc cơ bản của Kiểm thử phần mềm

Nội dung: nói và diễn giải về bảy nguyên tắc cơ bản trong testing software. Bài này là bài lý thuyết bổ sung và tester phải nắm được nằm lòng các nguyên tắc này! Bảy nguyên tắc (như khẩu huyết trong võ công): Kiểm thử tất cả mọi trường hợp là không thể được. ( EXHAUSTIVE testing is not possible ). Giải thích như sau: Một form có textbox cho phép nhập từ 1 -> 1.000.000.000.000. Nếu để kiểm thử nhập liệu cho textbox này ta phải kiểm thử 1k tỷ lần. Mỗi thao tác nhập cho là 1 giây, và phép toán kiểm tra nhập liệu là 0.1 giây nữa thì ta phải mất xấp xỉ 1k tỷ giây là khoảng 31k năm để thực thi nó. Đời người chỉ khoảng một trăm năm, vậy phải mất cả mấy nghìn đời để thực thi kiểm tra một textbox mà chưa kể đến nhiều đối tượng khác cho nên mới nói điều này là không thể làm được! (Chi phí nuôi nghìn người và giá trị bỏ ra là không xứng). Để xử lý thì ta: dùng kỹ thuật phân vùng tương đương, Phân nhánh nghiệp vụ, chia lớp xử lý... (Sẽ nói chi tiết sau). Kiểm thử là chỉ ra sai sót đang có ...