Đảm bảo chất lượng phần mềm
Trang 2 Lựa chọn một sản phẩm phần mềm liên quan đến công việc của em và tiến hành kiểm thử hộp đen
theo các bước sau (các mẫu kiểm thử trong file đính kèm):
Lên kế hoạch kiểm thử
Đưa ra các test cases
Thực hiện kiểm thử
Báo cáo kết quả
Lựa chọn một chương trình/module nhỏ mà em có thể tìm hiểu mã nguồn để thực hiện việc kiểm thử hộp trắng Trình bày các trường hợp kiểm thử và kết quả kiểm thử theo form đính kèm
Trang 3JUnit là một framework đơn giản dùng cho việc tạo các unit testing tự động, và chạy các test có thể lặp đi lặp lại JUnit được xây dựng bởi Erich Gamma và Kent
Beck
Trang 4- JUnit có những đặc điểm đáng lưu tâm như sau:
+ Xác nhận (assert) việc kiểm tra kết quả được
Trang 5Trong JUnit có các Test Case là các lớp của Java, các lớp này bao gồm một hay nhiều các phương thức cần kiểm tra, và Test Case này lại được nhóm với nhau để tạo thành Test Suite Mỗi phương thức thử trong JUnit phải được thực thi nhanh chóng Tốc độ ở đây là điều tối quan trọng vì càng nhiều phép thử được viết và tích hợp vào bên trong quá trình phần mềm thì càng tốn
nhiều thời gian để hơn cho việc chạy toàn bộ Test
Suite
Trang 6JUnit tránh cho người lập trình phải làm đi làm lại
những việc kiểm thử nhàm chán bằng cách tách biệt
mã kiểm thử ra khỏi mã chương trình, đồng thời tự động hóa việc tổ chức và thi hành các bộ số liệu kiểm thử
Trang 7Thoạt tiên, khi sử dụng JUnit, ta có thể có cảm giác là JUnit chỉ làm mất thêm thời gian cho việc kiểm thử:
Thay vì phải viết thêm các lớp và phương thức mới phục vụ cho công tác kiểm thử, ta có thể soạn nhanh một bộ số liệu rồi viết ngay vào trong phương thức
main() và quan sát ngay kết quả kiểm thử Vì quá trình soạn số liệu và quá trình kiểm thử diễn ra đồng thời, nên ta sẽ dễ dàng nhận biết được ngay chương trình
đã chạy đúng trên bộ số liệu kiểm thử hay không
Trang 8a) Downloading the Solution Project
Trang 91 Choose Team > Subversion > Checkout from the main menu.
2 In the Checkout dialog box, enter the following Repository URL: https://svn.netbeans.org/svn/samples~samples-source-code
Click Next.
3 In the Folders to Checkout panel, click Browse to open the
Browse Repository Folders dialog box.
4 Expand the root node and select
samples/java/JUnitSampleSol Click OK.
5 Specify the Local Folder for the sources Click Finish
When you click Finish, the IDE initializes the local folder as a
Subversion repository and checks out the project sources.
6 Click Open Project in the dialog that appears when checkout is complete.
Trang 10b) Creating a Test Class:
Trang 14Giả sử chúng ta có một class Number như dưới đây Mỗi object của class đại diện cho một số nguyên
Method isEven kiểm tra tính chẵn lẻ của số nguyên đó Mục tiêu của chúng ta là kiểm tra tính đúng đắn của method isEvent
Trang 16Đoạn mã dưới đây sẽ kiểm tra isEvent với 2.
Trang 18Dịch hai đoạn mã trên và chạy lệnh java org.junit.runner.JUnitCore NumberTest Khi đó JUnit sẽ chạy các method được đánh dấu
Trang 19- Kiểm thử hộp đen: là phương pháp kiểm thử dựa trên
đầu vào và đầu ra của chương trình để test mà không quan tâm tới code bên trong được viết ra sao Phương pháp này thường dùng để test chức năng của chương trình
Trang 21- Các kỹ thuật phổ biến và hiệu quả nhất cho kiểm thử hộp đen:
Boundary Testing (Kiểm thử biên)
Equivalence Class Testing (Kiểm thử lớp tương
đương)
Decision Table (Bảng quyết định)
Error Guess Testing (Kiểm thử đoán lỗi)
Trang 22Tính toán số tiền cần trả cho bệnh nhân theo bảng số liệu sau:
Trang 241.2.1 Lập kế hoạch kiểm thử:
- Từ ngày 26/4 30/4/2014: Tập trung tìm hiểu công
cụ JUnit Test cách cài đặt JUnit Test vào NetBean và sử dụng demo thử 1 số ví dụ
- Từ ngày 1/5 2/5/2015: Lựa chọn đề bài
- Từ ngày 3/5 5/5/2015: Phân tích đề bài và thiết kế các test-case
- Từ ngày 5/5 6/5/2015: Thực hiện kiểm thử và báo cáo kết quả
Trang 251.2.2 Thiết kế các Test-case:
Trong bài này sẽ vận dụng 3 phương pháp:
Boundary Testing (Kiểm thử biên)
Equivalence Class Testing (Kiểm thử lớp tương đương)
Decision Table (Bảng quyết định)
Trang 261.2.2 Thiết kế các Test-case:
a) Equivalence Class Testing (Kiểm thử lớp tương đương)
Trang 27Nam Tuổi 18-35 1 Tuổi < 18 8
Trang 282 Chọn Nam với tuổi từ 36-50 , kết quả mong muốn là 120 euro.
3 Chọn Nam với tuổi từ 51-145 , kết quả mong muốn là 140 euro.
4 Chọn Nam với tuổi < 18 , kết quả mong muốn là 0 euro (Lỗi)
5 Chọn Nam với tuổi > 145 , kết quả mong muốn là 0 euro (Lỗi)
6 Chọn Nữ với tuổi từ 18-30 , kết quả mong muốn là 80 euro.
7 Chọn Nữ với tuổi từ 31-50 , kết quả mong muốn là 110 euro.
8 Chọn Nữ với tuổi từ 51-145 , kết quả mong muốn là 140 euro.
9 Chọn Nữ với tuổi từ < 18 , kết quả mong muốn là 0 euro (Lỗi)
10 Chọn Nữ với tuổi từ > 145 , kết quả mong muốn là 0 euro (Lỗi)
11 Chọn Trẻ em với tuổi từ 0-17 , kết quả mong muốn là 50 euro.
12 Chọn Trẻ em với tuổi < 0 , kết quả mong muốn là 0 euro (Lỗi)
13 Chọn Trẻ em với tuổi > 17 , kết quả mong muốn là 0 euro (Lỗi)
Trang 291.2.2 Thiết kế các Test-case:
b) Boundary Testing (Kiểm thử biên)
Trang 311.2.2 Thiết kế các Test-case:
c) Decision Table (Bảng quyết định)
Trang 331.2.3 Thực hiện kiểm thử :
Trang 41 Khi kiểm thử phần mềm thì kết quả tính được
chính xác , khớp với các Test- Case đã thiết lập.
Hoàn tất.