Professional Documents
Culture Documents
Author: TuNTA
2021/10/07- Hà Nội
Ôn tập bài trước
TS
E N 1. Kiểm thử là gì?
TS
E N 1. Bạn biết những mô hình phát triển phần
N T mềm nào?
CO
2. Sự khác nhau cơ bản giữa mô hình
WaterFall, V-Model, Scrum là gì?
3. Những sự kiện chính diễn ra trong 1 sprint
theo mô hình Scrum là gì?
TS
N TEST LEVELS
N TE
C O
TS 1
E N Unit Testing
N T
CO
2
Integration Testing
3 System Testing
4 Acceptance Testing
1 Unit Testing
www.deha-soft.com
1.1 Khái niệm
● Mục đích: Xác nhận từng unit của phần mềm được
phát triển đúng như được thiết kế.
● Khiếm khuyết và thất bại điển hình
+ Chức năng không chính xác (ví dụ: không được mô
tả trong tài liệu phân tích thiết kế)
+ Vấn đề về luồng dữ liệu
+ Code và logic không chính xác
2 Integration Testing
www.deha-soft.com
2.1 Định nghĩa
● Integration Testing dùng để phát hiện lỗi tương tác xảy ra giữa các
Unit
● Tập chung chủ yếu vào các giao diện và thông tin giữa các
module.
=> phát hiện lỗi tương tác giữa các unit.
2.2 Mục đích và các yếu tố khác
www.deha-soft.com
3.1 Định nghĩa
❖ Là 1 level kiểm thử hệ thống
hay kiểm thử toàn bộ chức
năng và giao diện của hệ
thống.
❖ Mục đích là để đánh giá hệ
thống có đáp ứng theo đúng
yêu cầu nghiệp vụ, yêu cầu
về chức năng đưa ra hay
không.
3.2 Phân loại
4 ACCEPTANCE TESTING
www.deha-soft.com
4.1 Định nghĩa
● Alpha testing: Được thực hiện tại môi trường của tổ chức phát triển, không
phải bởi nhóm phát triển mà bởi các khách hàng tiềm năng hoặc khách hàng
hiện tại.
● Beta testing: Được thực hiện bởi khách hàng tiềm năng hoặc hệ thống hiện
có tại các địa điểm của họ. Test Beta có thể đến sau khi test alpha, hoặc có
thể xảy ra mà không có bất kỳ test alpha nào trước đó đã xảy ra
TS
N TEST TYPES
N TE
C O
TS 1
E N Functional Testing
N T
CO
2 Non-Functional Testing
www.deha-soft.com
1.1 Khái niệm và mục đích sử dụng
● Kiểm tra chức năng của một phần mềm hoặc một ứng dụng đang được thử nghiệm.
● Kiểm tra hành vi của phần mềm được thử nghiệm dựa trên yêu cầu của khách hàng, một
tài liệu gọi là đặc tả phần mềm hoặc Đặc tả yêu cầu ( Requirement Specification) được
sử dụng làm hướng dẫn để kiểm tra ứng dụng.
● Một dữ liệu ( test data) thử nghiệm được dựa trên tài liệu và một bộ Test Case được
chuẩn bị. Phần mềm đó sẽ được kiểm thử trong môi trường thực tế để kiểm tra xem kết
quả thực tế ( Actual Result) có đồng bộ với kết quả mong đợi ( Expected Result) hay
không.
1.2 Các loại Functional Testing phổ biến
1. Smoke Testing
- Loại thử nghiệm này được thực hiện trước khi thử nghiệm hệ thống thực tế để kiểm tra
xem các chức năng quan trọng có hoạt động tốt để thực hiện thử nghiệm rộng rãi hơn
không.
- Giúp tiết kiệm thời gian cài đặt lại bản build mới và tránh thử nghiệm thêm nếu các chức
năng quan trọng không hoạt động
2. Sanity Testing
- Sanity Testing tập trung vào một hoặc hai chức năng
- Sau thay đổi hoặc fix bug được thực hiện trong code, bản build là sẵn sàng cho tester.
Tester sẽ thực hiện Sanity Testing trên những chức năng thay đổi thay vì thực hiện
regression testing để tiết kiệm thời gian.
1.2 Các loại Functional Testing(tiếp)
3. Positive testing
● Thực hiện thử nghiệm trên hệ thống bằng cách cung
cấp dữ liệu đầu vào hợp lệ.
● Kiểm tra xem ứng dụng có hoạt động như mong đợi với
đầu vào đúng hay không.
4. Negative testing
● Thực hiện trên hệ thống bằng cách cung cấp dữ liệu
đầu vào không hợp lệ.
5. Localization Testing
- Thực hiện thử nghiệm chức năng khi thay đổi ngôn
ngữ
2 NON-FUNCTIONAL TESTING
www.deha-soft.com
2.1 Khái niệm và mục đích sử dụng
● Kiểm tra các đặc tính chất lượng của hệ thống, các tester sẽ quan tâm đến việc mọi
chức hoạt động tốt như thế nào, tốc độ nhanh như thế nào, phản hồi và số lượng
người truy cập vào cùng một thời điểm cũng như xem mức độ sử dụng CPU, Ram,
Pin,… của phần mềm…
● Kiểm thử phi chức năng cũng giống như kiểm thử chức năng được thực hiện ở tất cả các cấp
độ kiểm thử.
2.1 Khái niệm và mục đích sử dụng
3 WHITE-BOX TESTING
www.deha-soft.com
3.1 Khái niệm và mục đích sử dụng
- Test hộp trắng xuất phát các test dựa trên cấu trúc hoặc triển khai bên trong của hệ
thống
- Độ bao phủ của cấu trúc là mức độ mà một số loại yếu tố của cấu trúc đã được thực
hiện bằng các test hoặc được biểu thị bằng phần trăm của mỗi loại yếu đố được bảo
hiểm
4 CHANGE-RELATED TESTING
www.deha-soft.com
4.1 Confirmation Testing
4.2 Regression Testing
● Khái niệm
Regression Testing được thực hiện nhằm xác nhận một chương trình hoặc một
thay đổi mã gần đây không làm ảnh hưởng đến các chức năng hiện có
● Mục đích
Xác định được những sự thay đổi mã không làm ảnh hưởng đến những chức
năng đã tồn tại
● Sử dụng
Regression Testing chỉ được thực hiện khi có bất kỳ sự sửa chữa hoặc thay đổi
nào được thực hiện trong project hiện có
Thảo luận
THANK YOU