Tải bản đầy đủ (.ppt) (64 trang)

Mô tả quá trình kiểm thử phần mềm và giới thiệu những kĩ năng kiểm thử

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (1.68 MB, 64 trang )

Nhóm 2. Lớp 07p 07TH1D




Mục tiêu của chương này là mơ tả q trình
kiểm thử phần mềm và giới thiệu những kĩ
thuật kiểm thử.
1) Hiểu được sự khác nhau giữa kiểm thử
phể chuẩn(validation testing) và kiểm thử sai
sót(defect testing).
2) Hiểu được nguyên tắc kiểm thử hệ
thống(system testing) và kiểm thử thành
phần(component testing).


3) Hiểu được 3 chiến lược có thể được sử u được 3 chiến lược có thể được sử c 3 chiến lược có thể được sử n lược 3 chiến lược có thể được sử c có thểu được 3 chiến lược có thể được sử được 3 chiến lược có thể được sử c sử
dụng để tạo ra các ca kiểm thử hệ ng đểu được 3 chiến lược có thể được sử tạo ra các ca kiểm thử hệ o ra các ca kiểu được 3 chiến lược có thể được sử m thử hệ
thống(system test cases).ng(system test cases).
4) Hiểu được 3 chiến lược có thể được sử u được 3 chiến lược có thể được sử c những đặc điểm thiết yếu của ng đặc điểm thiết yếu của c điểu được 3 chiến lược có thể được sử m thiến lược có thể được sử t yến lược có thể được sử u của a
các công cụng để tạo ra các ca kiểm thử hệ phần mềm(software tools) hỗ n mềm(software tools) hỗ m(software tools) hỗ
trợc 3 chiến lược có thể được sử tự động hóa việc kiểm thử. động hóa việc kiểm thử.ng hóa việ c kiểu được 3 chiến lược có thể được sử m thử .




Có 2 hoạo ra các ca kiểm thử hệ t động hóa việc kiểm thử.ng kiểu được 3 chiến lược có thể được sử m thử căn bản là: n là:
+Kiểu được 3 chiến lược có thể được sử m thử thành phần mềm(software tools) hỗ n(kiểu được 3 chiến lược có thể được sử m từng phần của hệ ng phần mềm(software tools) hỗ n của a hệ
thống(system test cases).ng)
+Kiểu được 3 chiến lược có thể được sử m thử hệ thống(system test cases).ng(kiểu được 3 chiến lược có thể được sử m tồn bộng hóa việc kiểm thử. hệ thống(system test cases).ng)







Mụng để tạo ra các ca kiểm thử hệ c đích của a kiểu được 3 chiến lược có thể được sử m thử thành phần mềm(software tools) hỗ n?
+Phát hiệ n ra sai sót ở những thành phần những đặc điểm thiết yếu của ng thành phần mềm(software tools) hỗ n
riêng lẻ của chương trình(hàm, đối tượng của a chương trình(hàm, đối tượng ng trình(hàm, đống(system test cases).i tược 3 chiến lược có thể được sử ng
hay thành phần mềm(software tools) hỗ n dùng lạo ra các ca kiểm thử hệ i).
Mụng để tạo ra các ca kiểm thử hệ c đích của a kiểu được 3 chiến lược có thể được sử m thử hệ thống(system test cases).ng?.
+Xác địch đã đạt được các yêu cầu chức ch đã đạo ra các ca kiểm thử hệ t được 3 chiến lược có thể được sử c các yêu cần mềm(software tools) hỗ u chức c
năng và phi chức c năng, các tác nhân
không mong đợc 3 chiến lược có thể được sử i.
+Phát hiệ n ra sai sót đã bịch đã đạt được các yêu cầu chức bỏ qua ở khâu qua ở những thành phần khâu
kiểu được 3 chiến lược có thể được sử m thử trước đó.c đó.




Q trình kiểu được 3 chiến lược có thể được sử m thử phần mềm(software tools) hỗ n mềm(software tools) hỗ m có 2 mụng để tạo ra các ca kiểm thử hệ c đích
phân biệ t:
1) Chức ng minh cho người lập trình viên và i lập trình viên và p trình viên và
khách hàng thấy phần mềm đạt yêu cầu của y phần mềm(software tools) hỗ n mềm(software tools) hỗ m đạo ra các ca kiểm thử hệ t yêu cần mềm(software tools) hỗ u của a
nó(tài liệ u của a phần mềm(software tools) hỗ n mềm(software tools) hỗ m hoặc điểm thiết yếu của c tính năng
phần mềm(software tools) hỗ n mềm(software tools) hỗ m).
2) Phát hiệ n lỗ i, thiến lược có thể được sử u sót khơng đúng vớc đó.i
tính năng kĩ thuập trình viên và t đã địch đã đạt được các yêu cầu chức nh trước đó.c.(lệ ch lạo ra các ca kiểm thử hệ c dững đặc điểm thiết yếu của
liệ u, tính tốn sai, giao tiến lược có thể được sử p khơng tống(system test cases).t vớc đó.i hệ
thống(system test cases).ng khác)







Mụng để tạo ra các ca kiểm thử hệ c đích 1 dẫn tới cơng việc kiểm thử n tớc đó.i cơng việ c kiểu được 3 chiến lược có thể được sử m thử
phê chuẩn(validation testing).Hệ thống n(validation testing).Hệ thống(system test cases).ng
được 3 chiến lược có thể được sử c trản là: i qua các ca kiểu được 3 chiến lược có thể được sử m thử (test cases)
đểu được 3 chiến lược có thể được sử cơng nhập trình viên và n chức c năng mong đợc 3 chiến lược có thể được sử i.
+Kiểm thử phê chuẩn thành công khi hệ m thử phê chuẩn thành công khi hệ phê chuẩn thành công khi hệ n thành công khi hệ
thống vận hành chính xác.ng vận hành chính xác.n hành chính xác.
Mụng để tạo ra các ca kiểm thử hệ c đích 2 dẫn tới cơng việc kiểm thử n tớc đó.i cơng việ c kiểu được 3 chiến lược có thể được sử m thử sai
sót(defect testing). Hệ thống(system test cases).ng được 3 chiến lược có thể được sử c trản là: i
qua các ca kiểu được 3 chiến lược có thể được sử m thử (test cases) đểu được 3 chiến lược có thể được sử phát
hiệ n các sai sót.
+Kiểm thử phê chuẩn thành cơng khi hệ m thử phê chuẩn thành công khi hệ sai sót thành cơng khi phát
hiệ n được điểm sai khiến hệ thống vận c điểm thử phê chuẩn thành công khi hệ m sai khiến hệ thống vận n hệ thống vận hành chính xác.ng vận hành chính xác.n
hành khơng chính xác.




Kến lược có thể được sử t luập trình viên và n:
* Kiểu được 3 chiến lược có thể được sử m thử mọi khía cạnh, mọi trường hợp i khía cạo ra các ca kiểm thử hệ nh, mọi khía cạnh, mọi trường hợp i trười lập trình viên và ng hợc 3 chiến lược có thể được sử p
thự động hóa việc kiểm thử.c thi chương trình(hàm, đối tượng ng trình là khơng thểu được 3 chiến lược có thể được sử .
* Do đó, phản là: i chọi khía cạnh, mọi trường hợp n ra được 3 chiến lược có thể được sử c tập trình viên và p các ca kiểu được 3 chiến lược có thể được sử m
thử (test cases) có thểu được 3 chiến lược có thể được sử .
* Nên có chính sách giản là: i quyến lược có thể được sử t đểu được 3 chiến lược có thể được sử chọi khía cạnh, mọi trường hợp n ra
các ca kiểu được 3 chiến lược có thể được sử m thử dự động hóa việc kiểm thử.a trên tổng thể, kinh ng thểu được 3 chiến lược có thể được sử , kinh
nghiệ m và đặc điểm thiết yếu của c điểu được 3 chiến lược có thể được sử m của a hệ thống(system test cases).ng đang vập trình viên và n

hành.




Ví dụng để tạo ra các ca kiểm thử hệ :
* Tấy phần mềm đạt yêu cầu của t cản là: các câu lệ nh của a chương trình(hàm, đối tượng ng trình nên
thự động hóa việc kiểm thử.c thi ít nhấy phần mềm đạt yêu cầu của t 1 lần mềm(software tools) hỗ n.
* Nến lược có thể được sử u có chức c năng user input thì tấy phần mềm đạt yêu cầu của t cản là: các
hàm nên được 3 chiến lược có thể được sử c kiểu được 3 chiến lược có thể được sử m thử vớc đó.i các input hợc 3 chiến lược có thể được sử p lệ
và khơng hợc 3 chiến lược có thể được sử p lệ .
*Tập trình viên và p tấy phần mềm đạt yêu cầu của t cản là: các hàm được 3 chiến lược có thể được sử c truy cập trình viên và p qua cùng
1 thự động hóa việc kiểm thử.c đơng trình(hàm, đối tượng n(menu) nên được 3 chiến lược có thể được sử c kiểu được 3 chiến lược có thể được sử m thử .


Mơ hình q trình
kiểu được 3 chiến lược có thể được sử m thử phần mềm(software tools) hỗ n
mềm(software tools) hỗ m





Test cases: bản là: ng ghi chi tiến lược có thể được sử t các inputs đểu được 3 chiến lược có thể được sử
kiểu được 3 chiến lược có thể được sử m tra và các outputs được 3 chiến lược có thể được sử c người lập trình viên và i ta mong
đợc 3 chiến lược có thể được sử i và báo cáo những đặc điểm thiết yếu của ng gì sẽ được kiểm thử. được 3 chiến lược có thể được sử c kiểu được 3 chiến lược có thể được sử m thử .
Test data: dững đặc điểm thiết yếu của liệ u đểu được 3 chiến lược có thể được sử kiểu được 3 chiến lược có thể được sử m thử (inputs), có
thểu được 3 chiến lược có thể được sử được 3 chiến lược có thể được sử c phát sinh tự động hóa việc kiểm thử. động hóa việc kiểm thử.ng.









Kiểu được 3 chiến lược có thể được sử m thử hệ thống(system test cases).ng bao gồm: m:
+tích hợc 3 chiến lược có thể được sử p nhiềm(software tools) hỗ u thành phần mềm(software tools) hỗ n(components)
đểu được 3 chiến lược có thể được sử thự động hóa việc kiểm thử.c hiệ n chức c năng của a hệ thống(system test cases).ng.
+kiểu được 3 chiến lược có thể được sử m tra lạo ra các ca kiểm thử hệ i hệ thống(system test cases).ng được 3 chiến lược có thể được sử c tích hợc 3 chiến lược có thể được sử p.
Trong q trình phát triểu được 3 chiến lược có thể được sử n lặc điểm thiết yếu của p, kiểu được 3 chiến lược có thể được sử m thử
hệ thống(system test cases).ng được 3 chiến lược có thể được sử c hiểu được 3 chiến lược có thể được sử u là kiểu được 3 chiến lược có thể được sử m thử tăng
dần mềm(software tools) hỗ n(increment) đểu được 3 chiến lược có thể được sử phân phống(system test cases).i đến lược có thể được sử n khách
hàng.
Trong q trình thác nước đó.c, kiểu được 3 chiến lược có thể được sử m thử hệ
thống(system test cases).ng được 3 chiến lược có thể được sử c hiểu được 3 chiến lược có thể được sử u là kiểu được 3 chiến lược có thể được sử m thử tồn bộng hóa việc kiểm thử. hệ
thống(system test cases).ng.




Ở các hệ thống phức tạp, có 2 giai đoạn
để kiểm thử hệ thống:
1) Kiểm thử tích hợp(integration testing):
đội ngũ kiểm thử truy cập vào mã nguồn
của hệ thống. Kiểm thử các thành phần
của hệ thống sau khi được tích hợp.
2)Kiểm thử phát hành(Release testing):
Kiểm thử một phiên bản của tồn bộ hệ
thống để có thể phát hành cho người sử

dụng.


+Nếu có khách hàng tham gia trong q
trình kiểm thử phát hành thì được gọi là
kiểm thử chấp nhận(acceptance testing).
Nếu phiên bản phát hành đủ tốt, họ sẽ
chấp nhận sử dụng.
*Kết luận:
+Ưu thế của kiểm thử tích hợp là phát
hiện sai sót trong hệ thống.
+Ưu thế kiểm thử phát hành là công nhận
hệ thống đạt đầy đủ yêu cầu của nó.








Q trình tích hợp hệ thống gồm:
+Xây dựng hệ thống từ các thành phần của nó.
+Kiểm thử hệ thống hợp thành với các vấn đề
sau khi tương tác, giao tiếp giữa các thành phần.
Bộ khung tổng thể của hệ thống được phát triển
trước, cách thành phần gắn vào sau, gọi là topdown integration.
Tích hợp các thành phần có cấu trúc bên dưới
trước như: dịch vụ chung, mạng, truy cập csdl.
Sau đó gắn thêm các thành phần chức năng, gọi

là bottom-up integration.








Vấn để xảy ra trong suốt quá trình kiểm thử là
những lỗi cục bộ(localising errors). Một khi có
output bất thường được phát hiện thì khó có
thể xác định được lỗi xảy ra ở đâu.
Để xác định đúng vị trí lỗi ta nên kiểm thử
tăng dần hệ thống.
Ta nên tích hợp 1 hệ thống nhỏ trước và kiểm
tra lại hệ thống này.








ABCD là các thành phần mềm(software tools) hỗ n(components)
T1,T2,T3 là các kiểu được 3 chiến lược có thể được sử m thử .
Test sequence 2 thự động hóa việc kiểm thử.c hiệ n lạo ra các ca kiểm thử hệ i các kiểu được 3 chiến lược có thể được sử m thử (regression
testing) T1,2,3 nến lược có thể được sử u có lỗ i thì chắc chắn là do tương tác c chắc chắn là do tương tác n là do tương trình(hàm, đối tượng ng tác
vớc đó.i C.

Ưu tiên tích hợp trước các thành phần được sử dụng u tiên tích hợc 3 chiến lược có thể được sử p trước đó.c các thành phần mềm(software tools) hỗ n được 3 chiến lược có thể được sử c sử dụng để tạo ra các ca kiểm thử hệ ng
nhiềm(software tools) hỗ u cho các chức c năng hệ thống(system test cases).ng.




Kết luận:
1)Kiểm thử tích hợp top-down phát hiện lỗi tốt
hơn trong việc phê chuẩn kiến trúc của hệ
thống. Và có thể chứng minh được hệ thống
họat động tốt sớm hơn trong quá trình phát
triển phần mềm.
2) Sự thi hành của hệ thống thì kiểm thử tích
hợp bottom-up là tốt hơn.










Là quá trình kiểm thử bản phát hành của hệ
thống, sẽ được phân phối cho khách hàng.
Mục đích chính của quá trình là làm tăng độ
tin tưởng của hệ thống và đã đạt yêu cầu.
Để chứng minh hệ thống đạt u cầu thì cần
phải chỉ ra nó đã đạt các chức năng, hiệu

suất, độ tin cậy, không bị lỗi khi sử dụng.
Là quá trình kiểm thử hộp đen(black-box), các
kiểm thử được lấy từ bảng mô tả chức
năng(specification) của hệ thống.






Testers không biết sự thi hành bên trong hệ
thống(black-box). Họat động của nó được xác
định bởi các inputs và outputs liên quan.
Cịn được gọi là kiểm thử chức năng vì các
testers chỉ phải kiểm thử chức năng bên
ngồi, khơng kiểm thử bên trong phần mềm.





Nếu outputs nằm ngồi dự đốn(tập Oe) thì
xác định vấn đề này.
Bằng kinh nghiệm, tài liệu chọn ra các test
cases(tập Ie) dễ làm cho hệ thống họat động
sai.




×