Title: Software testing Ki?m th? ph?n m?m
1Software testingKi?m th? ph?n m?m
2N?i dung
- Ki?m th? h? th?ng (system testing)
- Ki?m th? thành ph?n (component testing)
- Thi?t k? test case (test case design)
- Ki?m th? t? d?ng (test automation)
3Ti?n trình Ki?m th?
- Ki?m th? thành ph?n
- Ki?m th? các thành ph?n riêng bi?t c?a chuong
trình - Thu?ng là trách nhi?m c?a ngu?i phát tri?n ph?n
m?m - Ki?m th? xu?t phát t? kinh nghi?m c?a ngu?i phát
tri?n ph?n m?m. - Ki?m th? h? th?ng
- Ki?m th? các nhóm thành ph?n tích h?p d? t?o ra 1
h? th?ng ho?c 1 h? th?ng ph? - Là trách nhi?m c?a nhóm ki?m th? d?c l?p
- Ki?m th? d?a trên d?c t? h? th?ng
4Giai do?n ki?m th?
Component testing
System testing
Software developer
Independent testing team
5Ki?m tra l?i
- M?c tiêu c?a vi?c ki?m tra l?i là d? phát hi?n ra
nh?ng l?i trong chuong trình - Ki?m tra thành công là làm cho chuong trình ch?y
1 cách b?t thu?ng
6M?c tiêu c?a ti?n trình ki?m tra
- Ki?m th? xác nh?n
- - Ð? gi?i thích cho ngu?i phát tri?n ph?n m?m và
khách hàng th?y du?c các yêu c?u mà h? th?ng có. - - ki?m th? thành công là cho th?y h? th?ng ho?t
d?ng nhu d? d?nh - Defect testing
- - Ð? phát hi?n l?i ho?c khi?m khuy?t trong h?
th?ng mà ho?t d?ng c?a nó không dúng ho?c không
phù h?p v?i d?c t?. - - M?t ki?m th? thành công là làm cho h? th?ng
th?c hi?n không chính xác và d? l? m?t khi?m
khuy?t trong h? th?ng. -
7Quy trình ki?m th? ph?n m?m
Test case
Test data
Test results
Test reports
Design test cases
Prepare test data
Run program with test data
Compare results to test cases
8Chính sách ki?m th?
- Ch? có ki?m th? d?y d? m?i có th? cho th?y 1
chuong trình luôn có khi?m khuy?t. Tuy nhiên,
ki?m th? d?y d? là vi?c không th?. - Chính sách ki?m th? xác d?nh các phuong pháp du?c
s? d?ng trong vi?c ch?n l?a ki?m th? h? th?ng. - - T?t c? các ch?c nang truy c?p trong trình don
nên du?c ki?m th? - - S? k?t h?p các ch?c nang trong cùng 1 trình
don c?n du?c ki?m th?. - - Tru?ng h?p d?u vào là t? phía ngu?i dùng thì
t?t c? các ch?c nang d?u ph?i du?c ki?m th? v?i
c? d?u vào dúng và sai.
9Ki?m th? h? th?ng
- Bao g?m các thành ph?n tích h?p d? t?o ra 1 h?
th?ng ho?c 1 h? th?ng ph?. - Có th? bao g?m vi?c ki?m th? 1 increment du?c
giao cho khách hàng. - Hai giai do?n
- - Ki?m th? tích h?p nhóm ki?m th? có th? truy
c?p vào mã ngu?n c?a h? th?ng. H? th?ng du?c ki?m
th? là các thành ph?n du?c tích h?p. - - Ki?m th? phát hành(release testing) nhóm ki?m
th? ki?m th? h? th?ng hoàn ch?nh s? du?c chuy?n
giao nhu m?t black-box.
10Ki?m th? tích h?p
- Bao g?m vi?c xây d?ng 1 h? th?ng t? các thành
ph?n và ki?m th? d? phát hi?n v?n d? phát sinh t?
các tuong tác thành ph?n. - Tích h?p d?u-cu?i
- Phát tri?n khung su?n h? th?ng và populate nó
v?i các thành ph?n. - T?ch h?p trên-du?i
- Ð? don gi?n hóa các l?i c?c b?, h? th?ng nên du?c
tích h?p t?ng bu?c m?t. -
11Incremental integration testing
A
T1
T1
A
T1
T2
A
B
T2
B
T3
T2
T3
C
T4
B
T3
T4
C
D
T5
12Ti?p c?n ki?m th?
- Xác nh?n ki?n trúc Ki?m th? tích h?p Top-Down d?
phát hi?n ra sai sót trong ki?n trúc c?a h?
th?ng.
13Black-box testing
14Nguyên t?c ki?m th?
- Nguyên t?c ki?m th? là các g?i ý cho nhóm ki?m
th? d? giúp h? ch?n cách ki?m th? mà s? làm b?c
l? các khuy?t di?m trong h? th?ng. - Ch?n các d?u vào tác d?ng d?n h? th?ng d? t?o ra
t?t c? các thông báo l?i. - Thi?t k? d?u vào d? gây ra l?i tràn b? d?m
- L?p l?i các d?u vào gi?ng nhau ho?c hàng lo?t
d?u vào trong 1 vài l?n. - Lu?ng k?t qu? tính toán là quá nhi?u hay quá ít.
15K?ch b?n ki?m th?
- A student in Scotland is studying American
History and has been asked to write a paper on
Frontier mentality in the American West from
1840 to 1880. To do this, she needs to find
sources from a range of libraries. She logs on to
the LIBSYS system and uses the search facility to
discover if she can access riginal documents
from that time. She discovers sources in various
US university libraries and downloads copies of
some of these. However, for one document, she
needs to have confirmation from her university
that she is a genuine student and that use is for
non-commercial purposes. The student then uses
the facility in LIBSYS that can request such
permission and registers her request. If granted,
the document will be downloaded to the registered
librarys server and printed for her. She
receives a message from LIBSYS telling her that
she will receive an e-mail message when the
printed document is available for collection.
16Các ki?m th? h? th?ng
- Ki?m tra co ch? dang nh?p b?ng cách s? d?ng thông
tin dang nh?p chính xác và không chính xác d?
ki?m tra r?ng ngu?i dùng h?p l? du?c ch?p nh?n và
ngu?i s? d?ng không h?p l? b? t? ch?i. - Ki?m tra các tìm ki?m co s? b?ng cách s? d?ng các
truy v?n khác nhau d?i v?i ngu?n dã bi?t dê ki?m
tra xem co ch? tìm ki?m có th?c s? tìm ki?m các
tài li?u. - Ki?m tra h? th?ng trình bày co s? d? ki?m tra xem
thông tin v? các van b?n có du?c hi?n th? dúng
cách. - Ki?m tra các co ch? d? yêu c?u s? cho phép d? t?i
v?. - Ki?m tra e-mail ph?n h?i cho bi?t r?ng các tài
li?u du?c t?i v? là t?n t?i.
17Use cases
- Use cases có th? là các co s? d? phát sinh các
ki?m th? cho h? th?ng. Chúng giúp cho vi?c xác
d?nh các ho?t d?ng d? ki?m th? và giúp cho vi?c
thi?t k? test case. - T? m?t lu?c d? trình t? liên quan, cácd?u vào và
d?u ra ph?i du?c t?o ra cho các l?n ki?m th? có
th? du?c xác d?nh.
18Collect weather data sequence chart
19Ki?m th? hi?u su?t
- M?t ph?n c?a release testing có th? bao g?m th?
nghi?m s? n?i lên d?c tính c?a m?t h? th?ng,
ch?ng h?n nhu hi?u su?t và d? tin c?y. - Hi?u su?t ki?m tra thu?ng liên quan d?n k?
ho?chhàng lo?t các bài ki?m tra noi n?p là ?n
d?nhtang cho d?n khi h? th?ng ho?t d?ngtr? nên
không th? ch?p nh?n.
20Ki?m th? thành ph?n
- Thành ph?n test là quá trình th? nghi?m thành
ph?n riêng bi?t trong h? th?ng. Ðây là m?t quá
trình ki?m tra l?i nhu v?y m?c dích c?a nó là d?
l? nh?ng l?i l?m trong các thành ph?n. - Có nhi?u lo?i khác nhau c?a thành ph?n có th? s?
du?c th? nghi?m ? giai do?n này - ch?c nang cá nhân ho?c các ch?c nang trong m?t
d?i tu?ng. - các l?p d?i tu?ng có nhi?u thu?c tính và ch?c
nang. - các ch?c nang c?a thành ph?n h?n h?p du?c t?o
thành t? các d?i tu?ng khác nhau. các thành ph?n
h?n h?p có m?t giao di?n du?c d?nh nghia du?c s?
d?ng d? truy c?p các ch?c nang c?a nó - ch?c nang cá nhân ho?c các phuong pháp cá nhân là
lo?i don gi?n nh?t c?a thành ph?n, các test c?a
b?n là m?t t?p h?p các du?ng d?n d?n nh?ng thói
quen v?i các thông s? d?u vào khác nhau. b?n có
th? s? d?ng các phuong pháp ti?p c?n d? ki?m tra
, th?o lu?n trong ph?n ti?p theo, d? thi?t k? các
test ch?c nang ho?c các ch?c nang.
21Giao di?n d?i tu?ng tr?m th?i ti?t
22Tr?m th? nghi?m th?i ti?t
- C?n ph?i xác d?nh tru?ng h?p th? nghi?m cho báo
cáo th?i ti?t, hi?u ch?nh, ki?m tra, kh?i d?ng và
t?t máy. - S? d?ng m?t mô hình nhà nu?c, xác d?nh trình t?
c?a chuy?n tr?ng thái d? th? nghi?m và s? ki?n
trình t? d? gây ra nh?ng hi?u ?ng chuy?n ti?p - Ví d? Ch? d?i -gt do d?c -gt Ki?m tra -gt Truy?n -gt
Ch? d?i
23Ki?m th? giao di?n
- M?c tiêu là d? phát hi?n l?i do Giao di?n ho?c
gi? d?nh không h?p l? v? giao di?n. - Ð?c bi?t quan tr?ng d?i v?i hu?ng d?i tu?ng phát
tri?n các d?i tu?ng du?c xác d?nh b?ng các giao
di?n c?a nó.
24Interface testing
25Các lo?i giao di?n
- Các thông s? giao di?n
- D? li?u truy?n t? m?t th? t?c khác.
- Chia s? b? nh? giao di?n.
- _ Block c?a b? nh? du?c chia s? gi?a các th? t?c
ho?c ch?c nang. - Giao di?n th? t?c
- _ H? th?ng dóng gói là m?t t?p h?p các th? t?c và
b?i các h? th?ng ph? khác. - Thông báo qua giao di?n
- _ H? th?ng yêu c?u d?ch v? t? system.s
26L?i giao di?n
- S? d?ng sai giao di?n
- M?t thành ph?n giao di?n g?i thành ph?n khác và
làm cho m?t l?i trong vi?c s? d?ng thành ph?n dó - ví d? sai th? t? các thông s? .
- S? hi?u l?m giao di?n
- Nh?ng gi? d?nh v? hành vi c?a các thành ph?n
không chính xác. - L?i th?i
- Các tên g?i c?a t?c d? ho?t d?ng và các thông tin
m?i du?c truy c?p v? thành ph?n khác .
27Hu?ng d?n ki?m tra giao di?n
- Thi?t k? các bài ki?m tra d? các tham s? du?c
g?i làth? t?c t?i ph?m vi các d?u c?c c?a c?a
nó. - Luôn luôn ki?m tra các tham s? con tr? v?i con
tr? null. - Thi?t k? các bài ki?m tra thành ph?n gây th?t
b?i. - S? d?ng qua tin nh?n th? nghi?m trong h? th?ng.
- Trong chia s? h? th?ng b? nh?, thay d?i th?
t?các thành ph?n du?c kích ho?t.
28Tru?ng h?p ki?m tra thi?t k?
- Liên quan d?n vi?c thi?t k? các tru?ng h?p th?
nghi?m (d?u vào và k?t qu? d?u ra) dùng d? ki?m
tra h? th?ng. - M?c tiêu c?a thi?t k? tru?ng h?p th? nghi?m là
t?o ra m?tthi?t l?p các bài ki?m tra có hi?u qu?
trong quá trình xác nh?n và l?i th? nghi?m. - Thi?t k? phuong pháp ti?p c?n
-
- D?a trên yêu c?u th? nghi?m
- Phân vùng th? nghi?m
- th? nghi?m K?t c?u.
29Th? nghi?m d?a trên yêu c?u
- M?t nguyên t?c chung c?a yêu c?u k? thu?t này là
yêu c?u c?n du?c ki?m ch?ng. - Yêu c?u d?a trên th? nghi?m là m?t xác nh?n ki?m
tra k? thu?t, noi b?n xem xét t?ng yêu c?u và rút
ra m?t t?p h?p các yêu c?u ki?m th?.
30yêu c?u LIBSYS
- Ngu?i dùng s? có th? tìm ki?m ho?c là t?t c? các
thi?t l?p ban d?u c?a co s? d? li?u ho?c ch?n m?t
t?p con t? dó. - H? th?ng s? cung c?p cho ngu?i xem thích h?p cho
ngu?i s? d?ng d? d?c tài li?u trong tài li?u luu
tr?. - M?i don hàng du?c c?p m?t d?nh danh duy nh?t
(ORDER_ID) mà ngu?i dùng ph?i có th? sao chép vào
khu v?c luu tr? lâu dài c?a tài kho?n.
31Ki?m th? LIBSYS
- B?t d?u tìm ki?m cho ngu?i s? d?ng tìm ki?m cho
các h?ng m?c du?c bi?t d?n - B?t d?u dùng tìm ki?m cho các h?ng m?c dó du?c
bi?t là có m?t và du?c bi?t không có m?t, noi
t?p h?p các co s? d? li?u bao g?m 2 co s? d? li?u
- B?t d?u dùng tìm ki?m cho các h?ng m?c dó du?c
bi?t là có m?t và du?c bi?t không có m?t noi d?t
co s? d? li?u, bao g?m hon 2 co s? d? li?u. - Ch?n m?t co s? d? li?u t? các thi?t l?p co s? d?
li?u và b?t d?ungu?i dùng tìm ki?m cho các h?ng
m?c du?c bi?t là hi?n t?i vàdu?c bi?t d?n không
có m?t. - Ch?n nhi?u hon m?t co s? d? li?u t? các thi?t l?p
co s? d? li?uvà b?t d?u tìm ki?m cho các h?ng
m?c dó du?c bi?t là có m?tvà du?c bi?t không có
m?t.
32Phân vùng th? nghi?m
- D? li?u d?u vào và k?t qu? d?u ra thu?ng roi
vàocác l?p h?c khác nhau mà t?t c? các thành
viên c?a m?t l?p h?c có liên quan. - M?i c?a các l?p này là tuong duong phân vùng,
linh v?c mà chuong trình cu x? m?t cách tuong
duong cho m?i l?p thành viên. - tru?ng h?p ki?m tra nên du?c l?a ch?n t? m?i phân
vùng.
33phân vùng tuong duong
34search routine - input partitions
- Nh?p vào nh?ng gì phù h?p v?i di?u ki?n ban d?u
- Nh?p vào noi y?u t? khóa là 1 thành ph?n c?a m?ng
- Nh?p vào noi y?u t? khóa không là 1 thành ph?n
c?a m?ng
35search routine - input partitions
36Nguyên t?c ki?m th?( tu?n t?)
- Ki?m th? ph?n m?m v?i trình t? mà ch? có 1 giá
tr? don - S? d?ng các kích thu?c khác nhau c?a trình t?
trong nh?ng ki?m th? khác nhau - Xu?t phát t? vi?c ki?m th? ph?n d?u gi?a cu?i
c?a trình t? cho phép - Ki?m th? v?i chi?u dài trình t? là 0
37Ki?m th? c?u trúc
- Thông thu?ng g?i là ki?m th? white-box
- D?n xu?t c?a tru?ng h?p ki?m th? d?a theo c?u
trúc chuong trình. S? nh?n bi?t c?a chuong trình
du?c dùng d? xác nh?n tru?ng h?p ki?m th? thêm
vào - Ð?i tu?ng d? thi hành t?t c? dòng l?nh chuong
trình( không ph?i t?t c? du?ng k?t h?p)
38Ki?m th? c?u trúc
39Tìm ki?m nh? phân- phân vùng tuong duong
- Th?a mãn di?u ki?n ban d?u, y?u t? khóa trong
m?ng - Th?a mãn di?u ki?n ban d?u, y?u t? khóa không ?
trong m?ng - Không th?a mãn di?u ki?n ban d?u, y?u t? khóa
trong m?ng - Không th?a mãn di?u ki?n ban d?u, y?u t? khóa
không ? trong m?ng - M?ng nh?p vào giá tr? don
- M?ng nh?p vào giá tr? ch?n
- M?ng nh?p vào giá tr? l?
40Tìm ki?m nh? phân- phân vùng tuong duong
41Ki?m th? du?ng di
- Ð?i tu?ng c?a ki?m th? du?ng di là d? ch?c ch?n
r?ng b? tru?ng h?p ki?m th? là m?i du?ng trong
chuong trình du?c th?c thi t? nh?t 1 l?n - Ði?m b?t d?u cho ki?m th? du?ng di là chuong
trình lu?ng d? th?, bi?u di?n node mô t? s? gi?i
quy?t c?a chuong trình và vòng cung bi?u th?
lu?ng di?u khi?n - Nh?ng dòng l?nh v?i các di?u ki?n là node trong
lu?ng d? th?
42Ki?m th? t? d?ng
- Ki?m th? là giai do?n t?n kém.quy trình ki?m th?
cung c?p lo?t các công c? d? gi?m th?i gian và
chi phí - H? th?ng nhu là Junit h? tr? s? th?c thi ki?m th?
t? d?ng - H?u h?t quy trình ki?m th? là h? th?ng m? vì ki?m
th? c?n là d?c t? t? ch?c - Chúng thông thu?ng khó d? tích h?p vói quy trình
thi?t k? và ph?n tích thân thi?n
43A testing workbench
44Testing workbench adaptation
- Các t?p l?nh ph?i du?c phát tri?n d? thích ?ng
v?i giao di?n ngu?i dùng, ki?u dáng cho b? sinh
d? li?u th? - Ki?m tra k?t qu? d?u ra ph?i du?c ki?m ch?ng l?i
b?ng phuong pháp th? công - Ð?c bi?t có th? so sánh các t?p tin d? phát tri?n
45Key points
- Ki?m th? giao di?n là tìm ra nh?ng l?i trong vi?c
thi?t k? giao di?n c?a nh?ng thành ph?n h?n h?p
c?u thành - Phân tích c?u trúc d?a vào vi?c phân tích 1
chuong trình và ki?m tra nh?ng phát sinh t? vi?c
phân tích dó. - H? th?ng ki?m th? t? d?ng làm gi?m chi phí ki?m
th? b?ng cách h? tr? trong vi?c ki?m th? chuong
trình v?i 1 lo?t các công c? ph?n m?m.