You are on page 1of 42

Ôn tập bài trước

TS
E N 1. Test levels được chia làm mấy loại? Sự

N T khác nhau giữa Acceptance Testing với 3

CO
loại còn lại là gì?
2. Có mấy loại Test Types?
3. Phân biệt Re-Testing và Regression
Testing?
4. Integration Testing khác System testing như
thế nào?
5. Test Alpha là gì? Test Beta là gì?
Ôn tập bài trước

TS 1. Static testing là gì? Sự khác nhau giữa Static

E N testing và Dynamic testing?

N T 2. Static testing gồm những loại kỹ thuật nào?

CO
3. Review Process gồm mấy bước? Chỉ ra
những chi tiết chính của từng bước review đã
liệt kê?
4. Có mấy kiểu review? Đó là những kiểu review
nào?
5. Kể tên các nhân tố để có thể giúp buổi review
được thành công?
Dynamic Testing

Author: TuNTA 2021/10/12- Hà Nội


TS 1
E N Tổng quan

N T
CO
2 Các phương pháp thiết kế

3 Các kỹ thuật thiết kế testcase


1 TỔNG QUAN

www.deha-soft.com
1.1 Categories of Test Techniques
1.2 Black-box Testing
1.3 White-box Testing
1.4 Dựa trên kinh nghiệm
1.5 Kiểm thử hộp xám
CHI TIẾT

2
Kỹ thuật thiết kế test case bằng phương pháp Black-Box Testing

www.deha-soft.com
2.1 Phân vùng tương đương (EP)

Các bước tạo testcase từ kỹ thuật Phân vùng tương đương


● Bước 1: Xác định các lớp tương đương: Xác định 1 lớp tương đương hợp
lệ và 2 lớp tương đương không hợp lệ.
● Bước 2: Xác định ca kiểm thử: Gán 1 số duy nhất cho mỗi lớp tương
đương
2.1.1 Ví dụ

Bài tập 1: Thiết kế test case sao cho người dùng nhập vào ô textbox chỉ cho
nhập ký tự là số với độ dài trong khoảng [0-10].
2.1.2 Lời giải

Bài tập 1: Thiết kế test case sao cho người dùng nhập vào ô textbox chỉ cho
nhập ký tự là số với giá trị trong khoảng [0-10]
2.1.3 Bài tập áp dụng kỹ thuật (EP)

Thiết kế test case sao cho người dùng nhập vào ô textbox chỉ cho nhập ký tự là
số với giá trị trong khoảng [3-100].
2.2 Phân tích giá trị biên (BVA)
1. Giá trị biên là gì?

2. Vì sao phải phân tích giá trị biên?


- Vì lỗi có xu hướng ẩn nấp gần ranh giới

1. Quy tắc tạo Testcase


2.2.1 Ví dụ

Bài tập 1: Thiết kế test case sao cho người dùng nhập vào ô textbox chỉ cho
nhập ký tự là số với giá trị trong khoảng [0-10].
2.2.2 Lời giải

Bài tập 1: Thiết kế test case sao cho người dùng nhập vào ô textbox chỉ cho
nhập ký tự là số với độ dài trong khoảng [0-10]
2.2.3 Bài tập áp dụng kỹ thuật (BVA)

Thiết kế test case sao cho người dùng nhập vào ô textbox chỉ cho nhập ký tự là
chữ với số ký tự trong khoảng [7-100].
So sánh Phân tích giá trị biên và Phân vùng
2.2.4
tương đương
2.3 Bảng quyết định

● Khám phá sự kết hợp của các yếu tố đầu vào, tình huống hoặc sự kiện
● Bắt đầu bằng cách diễn đạt các điều kiện đầu vào theo TRUE hoặc FALSE
2.3.1 Ví dụ minh hoạ

Ví dụ: Form đăng nhập với các yêu cầu sau:

● Người dùng nhập đúng email và mật khẩu


khi đăng nhập thành công sẽ được điều
hướng sang trang chủ của website.
● Nếu nhập email hoặc mật khẩu không
đúng khi đăng nhập hệ thống sẽ hiển thị
thông báo lỗi tương ứng.
2.3.2 Lời giải

Note:

+ T – True: Nhập đúng email và mật khẩu.


+ F – False: Email hoặc mật khẩu bị sai.
+ E – Error: Hiển thị lỗi.
+ H – Home: Hiển thị trang chủ.
2.3.3 Bài tập áp dụng

Ví dụ 2: Điều kiện upload thành công là:

● Hình ảnh phải có định dạng .JPG.


● Kích thước của file hình ảnh từ 32kb trở xuống.
● Độ phân giải: 137*177
2.3.4 Lời giải

ĐK TH1 TH2 TH3 TH4 TH5 TH6 TH7 TH8

Định dạng .jpg .jpg .jpg .jpg Không phải .jpg Không phải .jpg Không phải .jpg Không phải .jpg

Kích < 32 Kb < 32 Kb >= 32 Kb >= 32 Kb < 32 Kb < 32 Kb >= 32 Kb >= 32 Kb


thước

Độ phân 137*177 Không 137*177 Không phải 137*177 Không phải 137*177 Không phải 137*177
giải phải 137*177 137*177
137*177

Kết quả Upload Thông Thông Thông báo Thông báo lỗi Thông báo lỗi Thông báo lỗi "Định Thông báo lỗi "Định dạng, Kích thước và
ảnh thành báo lỗi báo lỗi lỗi "Kích "Định dạng "Định dạng và Độ dạng và Kích thước Độ phân giải chưa đúng"
công "Độ phân "Kích thước và Độ chưa đúng" phân giải chưa chưa đúng"
giải chưa thước phân giải đúng"
đúng" chưa chưa đúng"
đúng"
2.4 Test chuyển đổi trạng thái
❖ Khi nào thì sử dụng kỹ thuật chuyển đổi trạng thái?
❖ Khi nào không sử dụng kỹ thuật chuyển đổi trạng thái?
❖ Kỹ thuật chuyển đổi trạng thái gồm 2 thành phần: Sơ đồ chuyển trạng thái và bảng trạng
thái
1. Sơ đồ chuyển trạng thái: 2. Bảng trạng thái
2.4.1 Bài tập áp dụng

Bài 1: Một ví dụ về nhập mã PIN ở cây ATM. Nếu người dùng nhập mật khẩu không hợp lệ trong lần
thử đầu tiên hoặc lần thứ hai, người dùng sẽ được yêu cầu nhập lại mật khẩu, nếu người dùng nhập
mật khẩu không đúng lần thứ 3, tài khoản sẽ bị chặn.
2.4 Lời giải
2.4.2

Bảng trạng thái:

Insert cart Valid PIN Invalid PIN

S1 Start state S2 - -

S2 Wait for PIN - S6 S3

S3 1st try invalid - S6 S4

S4 2nd try invalid - S6 S5

S5 3rd try invalid - - S7

S6 Access account - - -

S7 Eat cart S1 (for new card) - -


2.5 Trường hợp sử dụng

❖ Trường hợp sử dụng ( Use case Testing): là 1 kỹ thuật kiểm thử chức năng của kiểm thử hộp
đen, vì thế chúng ta sẽ không cần quan tâm đến code.
❖ Kỹ thuật này giúp xác định các trường hợp test quyền thực hiện toàn bộ hệ thống trên cơ sở
của giao dịch từ đầu đến cuối.
3
Một số kỹ thuật thiết kế
Test case khác

Experience-based Techniques

www.deha-soft.com
2.4
3.1 Đoán lỗi (Error Guessing)
2.4 Nguyên tắc trong quá trình Đoán lỗi
3.1.2

Ghi nhớ Nâng cao Hệ điều hành

Yes or No Hiểu hệ thống


2.4 Ưu và nhược điểm của đoán lỗi
3.1.3
2.4
3.2
Exploratory Testing
● Các test không được thiết kế test case, thực hiện, ghi nhật ký và đánh giá linh hoạt trong
quá trình test.
● Kết quả test được sử dụng để tìm hiểu thêm về thành phần hoặc hệ thống và để tạo ra
các test cho các khu vực có thể cần test nhiều hơn.
● Test khám phá hữu ích nhất khi có ít hoặc không đủ tài liệu, áp lực thời gian.
2.4
3.3
Checklist-based Testing
● Checklist có thể được xây dựng dựa trên kinh nghiệm,
kiến thức về những điều quan trọng đối với người
dùng hoặc sự hiểu biết về lý do và cách phần mềm bị
lỗi
● Checklist có thể được tạo để hỗ trợ các loại test khác
nhau, bao gồm cả chức năng và phi chức năng.
● Trong trường hợp không có trường hợp test chi tiết,
test dựa trên checklist có thể cung cấp hướng dẫn và
mức độ nhất quán.
4 Thảo luận
5 Một số câu hỏi phỏng vấn thường gặp

1. Làm thế nào để biết được số test case viết đã bao phủ toàn bộ nghiệp vụ dự án?
2. Mục đích của việc sử dụng các kỹ thuật Phân vùng tương đương và Phân tích giá trị biên là
gì?
3. Phương pháp thiết kế hộp đen gồm những kỹ thuật nào?
4. Làm thế nào để có thể lựa chọn phương pháp và kỹ thuật thiết kế test case hiệu quả?
5.1 Trả lời

Làm thế nào để biết được số test case viết đã bao phủ toàn bộ nghiệp vụ dự án?
TL:
● Kết hợp các kỹ thuật thiết kế test case như Phân vùng tương đương, Phân tích giá trị biên,
Bảng quyết định...và phải bám sát Tài liệu đặc tả yêu cầu để khi test case có thể cover được
hết nghiệp vụ/ chức năng chi tiết được mô tả trong tài liệu của hệ thống.
● Ngoài ra có thể đưa cả kinh nghiệm, khả năng phân tích, đánh giá vấn đề, khả năng phán
đoán lỗi để đưa ra các test case có độ bao phủ cao.
5.2 Trả lời

Mục đích của việc sử dụng các kỹ thuật Phân vùng tương đương và Phân tích giá trị biên là
gì?
TL:
● Giảm thiểu số lượng Test case thừa, tiết kiệm thời gian mà vẫn đảm bảo chất lượng phần
mềm
● Chọn được đúng test case đại diện cần test mà vẫn bao phủ được các trường hợp
● Test linh hoạt trong việc sử dụng các kỹ thuật test, ngoài Phân vùng tương đương, Phân tích
giá trị biên, chúng ta có thể áp dụng thêm kỹ thuật Bảng quyết định, Chuyển trạng thái, Đoán
lỗi hay các giá trị hợp lệ hoặc bất thường.
5.3 Trả lời

Phương pháp thiết kế hộp đen gồm những kỹ thuật nào?


TL:
Gồm 5 kỹ thuật:
1. Phân vùng tương đương
2. Phân tích giá trị biên
3. Bảng quyết định
4. Chuyển trạng thái
5. Use case Testing
5.4 Trả lời

Làm thế nào để có thể lựa chọn phương pháp và kỹ thuật thiết kế test case hiệu quả?

● Các loại hệ thống


● Tiêu chuẩn quy định
● Yêu cầu từ khách hàng hoặc hợp đồng
● Mức độ rủi ro, loại rủi ro
● Mục kiểm tra, tài liệu có sẵn
● Kiến thức của những người thử nghiệm
● Thời gian và ngân sách, vòng đời phát triển
● Kiểm thử hộp đen luôn được sử dụng vì nó sớm tìm ra lỗi và các kỹ thuật không rõ ràng
● Kiểm thử hộp trắng thì đặc biệt dùng cho thử nghiệm mức độ thấp
● Kiểm thử dựa trên kinh nghiệm đòi hỏi phải có kinh nghiệm, có thể kiểm tra ngẫu nhiên, được
sử dụng cho các ứng dụng có độ tin cậy cao hoặc các vấn đề lặp lại hoặc dự án có yêu cầu
không rõ ràng.
THANK YOU

You might also like