Kiểm thử phần mềm trên thiết bị di động và ứng dụng phần mềm Appium Studio cho ứng dụng trên IOS (Đồ án tốt nghiệp)Kiểm thử phần mềm trên thiết bị di động và ứng dụng phần mềm Appium Studio cho ứng dụng trên IOS (Đồ án tốt nghiệp)Kiểm thử phần mềm trên thiết bị di động và ứng dụng phần mềm Appium Studio cho ứng dụng trên IOS (Đồ án tốt nghiệp)Kiểm thử phần mềm trên thiết bị di động và ứng dụng phần mềm Appium Studio cho ứng dụng trên IOS (Đồ án tốt nghiệp)Kiểm thử phần mềm trên thiết bị di động và ứng dụng phần mềm Appium Studio cho ứng dụng trên IOS (Đồ án tốt nghiệp)Kiểm thử phần mềm trên thiết bị di động và ứng dụng phần mềm Appium Studio cho ứng dụng trên IOS (Đồ án tốt nghiệp)Kiểm thử phần mềm trên thiết bị di động và ứng dụng phần mềm Appium Studio cho ứng dụng trên IOS (Đồ án tốt nghiệp)
Trang 1ISO 9001:2015
NGÀNH:
Sinh viên :
hS
Trang 3801
Trang 4, nghi in
em
hoàn Song do
em em
Em
y 31 tháng 3
Trang 5M C L C
L 1
M C L C 5
DANH M C HÌNH V VÀ B NG BI U 7
DANH M C T VI T T T VÀ THU T NG 8
M U 10
13
1 Ph n m m 13
2 Ki m th ph n m m và m t s khái ni m liên quan 13
2.1 Ki m th ph n m m 13
14
3 Quy trình ki m th ph n m m 16
4 Các c ki m th 17
4.1 Ki m th m 18
4.2 Ki m th tích h p 19
4.3 Ki m th h i quy 19
4.4 Ki m th ch p nh n s n ph m 20
4.5 Ki m th m c h th ng 20
5 Các k thu t ki m th ph n m m 20
5.1 Nguyên t n ki m th ph n m m 21
5.2 K thu t ki m th h p tr ng (White-Box Testing) 23
5.3 K thu t ki m th h -Box Testing) 25
6 K thu t thi t k Ca ki m th 26
6.1 C u trúc c a Ca ki m th 27
28
6.3 Phân tích giá tr biên 31
33
7 T o Bug report 34
7.1 Bug và Bug report 34
7.2 C u trúc m t Bug report 34
7.3 Severity và Priority 36
M TH TRÊN THI T B NG 38
Trang 61.2 m th trên thi t b ng 41
1.3 Các lo i ki m th ng 45
m c a ki m th ng 46
2 Ki m th t ng 48
2.1 Khái ni m ki m th t ng 48
2.2 M c tiêu c a ki m th t ng 48
2.3 Nguyên t c ki m th t ng 50
2.4 Quy trình ki m th t ng 52
m c a ki m th t ng 53
54
2.7 So sánh ki m th t ng và ki m th th công 55
D NG APPIUM STUDIO CHO KI M TH T NG TRÊN IOS 57
1 Gi i thi u ph n m m Appium Studio 57
57
58
59
3 Th c nghi m v i Appium Studio tích h p trong Eclipse 60
t Appium Studio 60
3.2 K t n i v i thi t b trên Cloud 61
ca ki m th 63
3.4 T o d án ki m th 65
3.5 Báo cáo 74
K T LU N 78
TÀI LI U THAM KH O 79
Trang 7DANH M C HÌNH V VÀ B NG BI U
Hình 1-1: Ví d v 1 K ch b n ki m th 16
Hình 1-2: n ki m th trong x lý ph n m m 16
Hình 1-3: Lu ng thông tin ki m th 22
Hình 1-4: Minh h a Ki m th h 26
Hình 1-5: Minh h a c a m t ca ki m th 28
29
35
Hình 2-1: Quy trình Ki m th t ng trong m i quan h v i Ki m th ph n m m 53
B ng 2-2: So sánh ki m th t ng và ki m th th công 56
Hình 3-1: K t qu tìm ki m Appium Studio 60
Hình 3-2: L t Appium Studio 60
Hình 3-3: Dán URL vào c a s ti t 61
Hình 3-4: Giao di n trang Cloud c a SeeTest 61
Hình 3-5: Copy l i Access Key 62
Hình 3-6: Ki m tra k t n n máy ch Cloud 62
Hình 3-7: Các thi t b c hi n th trong Eclipse 62
Hình 3-8: Màn hình thi t b c hi n th sau khi k t n i 63
Hình 3-9 63
Hình 3-10: B ca ki m th cho ng d ng máy tính 65
Hình 3-11 c sinh t ng trong Project 66
Hình 3-12: K t qu tìm ki 66
Hình 3-13: K t qu t ng d ng Basic Calculator 67
Hình 3-14: t ng d c thêm vào ph n setUp 68
Hình 3-15: Thêm câu l rình không t ng thoát khi th c hi n ki m th 68
Hình 3-16: Ch n bi ng Dump UI c a s Devices 69
Hình 3-17: 69
Hình 3-18: ng nút AC c a màn hình máy tính 70
Hình 3-19: n mã sinh s th p phân ng u nhiên t - n 999 71
Hình 3-20: n mã sinh s nguyên ng u nhiên t - n 999 71
Hình 3-21: n mã sinh d li u ki m th t ng 73
Hình 3-22: Kh i ch y ki m th t ng 73
Hình 3-23: Quá trình ch y ki m th trên web 74
Hình 3-24: K t qu sinh ca ki m th t ng 74
Hình 3-25: Toàn b c sinh t ng trong ph n Reports 75
Hình 3-26: Chi ti t quá trình th c hi n ki m th t ng 75
Hình 3-27: Ca ki m th t qu chính xác 75
Hình 3-28: T ng h p k t qu ki m th 76
Hình 3-29: Bug report l i c a nút (+/-) 77
Trang 8DANH M C T VI T T T VÀ THU T NG
technology
Công ngh truy n thông th h
li u tho i và d li u ngoài tho i
Application Programming Interface
Trang 911 IDE
Integrated Development Environment
Giao th c ng d ng không dây
-là m t tiêu chu n công ngh cho các h th ng truy nh p Internet t
Trang 10M U
Lý do ch tài:
ng
Trang 11Nghiên c u t ng quan v ki m th ph n m m và các k thu t ki m th
ki m th ph n m m Appium Studio trên IOS
Trang 12Trong quá trình th c hi n án, do th ình c a em
ThS Nguy n Tr , các th y cô trong khoa Công ngh ng
Trang 13nh ng r i ro trong quá trình tri n khai ph n m m.
Trong k thu t ki m th không ch gi i h n vi c th c hi n m
Trang 14các thi u sót) mà còn là m t quá trình phê chu n và xác minh m
máy tính / ng d ng / s n ph m nh m:
c m i nhu c u c a các bên liên quan
b t c lúc nào trong quá trình phát tri n ph n m m Theo truy n th ng thì các
Trang 15Th t b i (Failure): Th t b i xu t hi n khi m t l c th c thi [4].
S c (Incident): Khi th t b i xu t hi n, nó có th hi n th ho c không,
i ki m th v s xu t hi n c a th t b i này [4]
K ch b n ki m th (Test script): M t k ch b n ki m th là m t nhóm mã
Trang 17M Quy nh v ph ch
Các tài li u tham kh o
i c a V&V: các nhi m v , các d li u vào và các k t qu ra
nh d ng và th i gian cho t t c các báo cáo V&V
Các th t c qu n lý V&V bao g m các chính sách, th t c, các chu n,
Trang 20Có th chia các k thu t ki m th ph n m m thành hai lo i: các k thu t
Trang 21d ng và các yêu c u phi ch ác k thu t ki m th
ngu n
ki m th , và các công c ki m th
Trang 22Hình 1-3: Lu ng thông tin ki m th 5.1.3 Thi t k tr ng h p ki m th
Thi t k ki m th ph n m m có th là m t quá trình thu th p, phân tích
Ki m th ph n m m còn có các ràng bu c v th i gian, chi phí, v.v Chìa
Trang 23Cách ti p c n ki m th c g i là ki m th h
th hai là ki m th h p tr ng
5.2 K thu t ki m th h p tr ng (White-Box Testing)
ng phát hi n các l i l p trình Lo i ki m th này khá khó th c hi n và chi phí cao
V i các module quan tr ng, th c thi vi c tính toán chính c a h th ng,
có m t khai báo bi n nào và có d ng khuy t (không t n t i ph n else) Trong
Trang 24l nh.
Trang 25- Ph c p 3: ki m th sao cho m u ki n lu n lý con (subcondition)
(branch & subcondition coverage)
5.3 K thu t ki m th h p (Black-Box Testing)
bên trong c a cái h p
Trang 26thi u c th i gian cho vi c t p h p này.
tích và thi t k ; các yêu c u v b o m t an toàn thông tin, yêu c u hi
c a h th ng
Trang 27Execution Step: Mô t c th c hi
Expected results: K t qu i t c th c hi n trên
Trang 29N u nh p giá tr v i s ký t không n m trong kho ng [6-20] => hi n th
p l ! Vui lòng nh p ký t ch
Trang 30- Phân vùng 1: Nh p giá tr h p l t 6 => 20
- Phân vùng 2: Nh p giá tr không h p l < 6 ký t
- Phân vùng 3: Nh p giá tr không h p l > 20 ký t
Trang 316.3 Phân tích giá tr biên
6.3.1
H u h t các l c tìm th y khi ki m tra các giá tr biên Vì v y
p trung vào vi c ki m th các giá tr biên này
c a d li u vào và d li u ra Chúng ta s t p trung vào các giá tr biên chkhông test toàn b d li u Thay vì ch n nhi u giá tr trong l
i di n, phân tích giá tr biên yêu c u ch n m t ho c vài giá tr là các c nh
gi a nh ng phân vùng này và l a ch n ca ki m th phù h p M c tiêu là l a
Trang 326.3.2
mi
- Phân vùng 1: Nh p giá tr h p l t 6 => 20.
- Phân vùng 2: Nh p giá tr không h p l < 6 ký t
- Phân vùng 3: Nh p giá tr không h p l > 20 ký t
ph i d ng ch
Case 1: Nh p giá tr v i 5 ký t => hi n th l n ch c phép nh p chu i t 6 => 20 ký t
Case 2: Nh p giá tr v i 6 ký t => pass.
Case 3: Nh p giá tr v i 20 ký t => pass.
thu t phân tích giá tr biên t p trung vào vi c ki m th các giá tr
m:
Trang 33phân tích giá tr biên ch hi u qu ng h i
chia cho không, null pointer, ho c các bi n không h p l , v.v
thi t k tùy thu c vào tình hình, ho c ho c lu ng công vi c trong các tài li u
Trang 347.1 Bug và Bug report
Bug: Bug c a ph n m m là nh ng sai l m, h ng hóc, l i, khi m khuy t
- Reported by: ki m th viên t o ra Bug report.
- Bug Name, Bug ID và Date: tên c a bug, ID và ngày t o report.
- Assigned to: cá nhân ho c t ch c phát tri n ph n m
- Status: Tr ng thái th c hi n c a report.
- Summary/Description: mô t ng n g n v bug.
- Environments (OS/Browser) ng ch y th ph n m m
- Step to reproduce: mô t l c th c hi n gây ra bug
Trang 35Bug Name: Plus button clickdown
Bug ID: Cal0001
Date:25-Oct-16
Assigned to: Developer-TEAM1016
Status: New, retest
Expected results: The TextBox displays only plus sign before a number or
between two number in an expression
Severity: Critical (S1)
Priority: High (P1)
Attachment:
Trang 36M t s yêu c u khi t o Bug report:
M c dù hai y u t này không ph i là y u t s ng còn trong qu n lý bug
Trang 37- Trivial (S4): Bug không n ch c d li u Nó th m
su t ho c hi u qu mà ch là s b t ti n Ví d : Sai l ch b c c nh , l i chính t / l i ng pháp, v.v
7.3.2 Priority
hang
Priority có th phân thành các lo
- Urgent (P0): Ph c s a càng s m càng t t
- High (P1): Ph c s a trong m t vài phiên b n ti p theo
- Medium (P2): c s a nh ng phiên b n ti p theo
- Low (P3): Có th c s a m t phiên b
Trang 38n tho i thông minh và máy tính b ng là nh ng thi t b không
s dùng Vì chúng r t ph bi n nên chúng ph i có s tin c y, b o m t và có tính
là vi c làm không th thi u trong công nghi p công ngh thông tin
Trang 39d ng và ki m th ng d ng máy tính Nhi ph n m m là
ph n m m, n u tôi có th ki m th ph n m m trên máy tính, tôi có th ki m
c a b n trông trên màn hình nh là r t quan tr ng ng d ng có ch y nhanh
ng?
ng d ng g c (Native applications)
WindowsPhone, v.v.) khác nhau và t t nhiên là trên các thi t b
Trang 40ng d ng Web (Web applications)
d ng công ngh truy n th ng web (HTML, CSS, Javascript) và vi t mã l nhphía máy ch trong Node.js, PHP, ASP.NET, v.v Các ng d ng web phù h p
d ng công ngh web S khác bi t gi a ng d ng lai và ng d ng web là ng
Google K t khi Android là d án mã ngu n m d a trên Linux, h u h t các
chi phí ki m tra và ph c t p Tuy nhiên, nhi u công c ki m th khác nhau và
bi n nh t
Trang 41H u hành iOS
các thi t b c a Apple có th ch y nó
là, th nghi m trên t t c các thi t b có s n không ph
thi t b ) M t khác, các thi t b c a Apple là m t trong nh ng thi t b r t t n kém
Trang 42y, x lý m t thi t b th c là th c s c n thi t
i c m bi n - n u ng d ng th nghi m s d ng c m bi n
t qu c a nó không th c t
m
kém
h t ng m ng ho c có th b c m b i m t s trang web
1.2.2 Ki m th trên máy mô ph ng và gi l p
Máy mô ph ng và gi l p là lo i ph n m m cho phép ch y m t h th ng máy tính trên n n t ng máy ch
Android Studio, Xcode ho c Visual Studio
m ng, v.v Ki m th trên gi l p có th cung c p k t qu sai l ch b i vì máy
Trang 43ng cung c p k t qu th c t th hi n
m:
Chi phí th p - gi l p chu n có trong b cài cùng v i SDK là mi n phí
SMS
Trang 441.2.3 Ki m th trên thi t b
ng v thi t b - Ki m th viên ph n m m có th nhanh chóng phát
hành
tác
Trang 45Không th ki m tra h t t t c ng h p th nghi m - m c dù các
phân gi i, b nh , camera, radio, bluetooth, wifi, v.v
Trang 46ng d ng g c làm vi i ng d ng web
i liên t c: V i m i m t dòng máy, m i lo i thi t b s có nhi u
Trang 47T ch y ng d ng: Theo dõi th i gian ph n h i trên các thi t b khác
Ki m th giao di n (UI Testing): Ki m tra màu s c, phong cách Menu,
Ki m th hi u su t và ch u t i (Performance and Load Test): Ki m tra
Trang 48Ki n: Vì lí do các thi t b ng có b nh th
nh n SMS, c m s c, thông báo b nh th p trong khi ng d n
nhi u tùy vào công c và các n i dung ki m th có th th c hi n b ng tay hay
i v i nh ng nhi m v ki m tra khó mà th c hi n b ng tay ho c yêu
c n thi t
2.2 M c tiêu c a ki m th t ng
t theo th i gian Chính vì v y các t ch c v ph n m m dành nhi u th i gian
Ngày nay ng d ng t
Trang 49th hoàn t t b ng tay trong th i gian c th
phiên b n ph n m m có th là hàng ngày, m i phiên b n bao g m nh ng tính
m tra t t ch y sai m c dù ph n mã ngu n c a nó không h
Trang 50Ki m th ph n m m không c n can thi p c a ki m th viên.
Trang 51ng h p t h p thì có th test toàn b c) Thay vì ki m th toàn b , vi c
Nguyên t c 3 Ki m th s m
thu c tr sâu, m i lo i ch dùng trong kho ng th i gian ng n
Trang 52Nguyên t c này là vi c testing ph thu c vào ng c nh, test trong nhi u
Trang 53Hình 2-1: Quy trình Ki m th t ng trong m i quan h v i Ki m th ph n m m
2.5 m c a ki m th t ng
khiêm t n
ca ki m th v
Trang 54- Kh p: Hãy cùng xem m t ví d : Trong m t ngày th i ti t x u
Mozilla Firefox
QTP (HP UFT)
nghi m, nó s d ng khái ni m ki m tra t khóa
Rational Function Tester
ki m tra d li u, ki m tra giao di n, và ki m th h i quy
WATIR
Trang 55Là m t ph n m m ki m tra mã ngu n m ki m th h i quy Watir ch
h tr khám phá Internet trên các c a s trong khi Watir webdriver h trChrome, Firefox, IE, Opera, v.v
Ph
thu c
Ph thu c vào tr ng thái c a
án l n có nhi u ca ki m th
Nh t quán, nên k t qu ki m th
là chính xác và không ph thu cvào y u t ngo i c nh
Trang 571 Gi i thi u ph n m m Appium Studio
(test automation) các native app, mobile web app, và hybrid app trên n n t ng iOS và Android
t ng khác nhau, iOS và Android, trên cùng m t mã ki m th (cross-platforms)
trong mã ki m th thành các l nh UIAutomation (v i iOS) hay UIAutomator
Trang 58c a mình Bên c tr vi t test cho r t nhi u ngôn ng , t Java
n Ruby, Python, JavaScript, v.v
Các thành ph n c a Appium
Trang 59-
-2 Appium Studio trong Eclipse
t ng Android và iOS
Trang 603 Th c nghi m v i Appium Studio tích h p trong Eclipse
3.1 t Appium Studio
c 1: Truy c p a ch :
http://www.eclipse.org/downloads/download.php?file=/technology/epp/downloads/release/neon/3/eclipse-jee-neon-3-win32-x86_64.zip download và cài t
c 2: Ti n hành download t ph n m m Eclipse Neon
Trang 61c 6: Truy c p Help/Install New Software a l c
Trang 62Hình 3-5: Copy l i Access Key
c 3: M Eclipse ch n Cloud/Cloud Connect thanh URL nh p
https://cloud.seetest.iovà thanh Access Key là Access Key v a copy c 2
b ng cách ch n Window/Perspective/Open perspective/Other và ch n Mobile
r i nh n OK
Trang 64ID Testcase Description Test Data Expected result
Trang 653.4 T o d án ki m th
c 1: Ch n File/New/Java Project t tên cho d án r i ch n Finish
c 2: Chu t ph i vào Project v a t o ch n Configure/Mobile Nature Ti p
t c nh n Finish
Trang 66Hình 3-11: n code c sinh t ng trong Project
c 3: Truy c p Help/Eclipse Marketplace và tìm ki m t r i
Trang 683.4.2 Vi t k ch b n ki m th
c 2: Thêm dòng l nh dc.setCapability("dontGoHomeOnQuit", true);
c này)
ki m th
Trang 69c 3: Ch n bi ng trên cùng c a thanh menu ph n c a s hi n th màn
Trang 70góc trên bên ph i Nh p tên c ng c c dùng ký t
c bi t)
c 5: Vi sinh d li u ki m th t ng
Trang 71Hình 3-19: n mã sinh s th p phân ng u nhiên t - n 999
gi
Trang 73Hình 3-21: n mã sinh d li u ki m th t ng
xem quá trình này trên web https://cloud.seetest.io/
Trang 74Hình 3-23: Quá trình ch y ki m th trên web
3.5.1 Xem báo cáo
Trang 75Hình 3-25: Toàn b c sinh t ng trong ph n Reports
d dàng nh n ra các l i phát sinh ti n l i cho vi c làm các báo cáo sau này
Hình 3-26: Chi ti t quá trình th c hi n ki m th t ng
Trang 773.5.3 Vi t Bug report
BUG REPORTSProject: CalculatorPro Reported by: Tran Linh, Bui
Bug Name: The (+/-) button is not working correctly
Bug ID: Cal0001
1 Input the first number.
2 Select the operation minus (-), plus (+), etc.
3 Input the second number.
Trang 78ph i chuy n sang ki m th qua ph n m m Eclipse.