1. Trang chủ
  2. » Luận Văn - Báo Cáo

Luận văn thạc sĩ Khoa học máy tính: Sản sinh các tập lệnh hỗ trợ kiểm thử tự động ứng dụng Web bằng thư viện từ khóa

88 0 0
Tài liệu đã được kiểm tra trùng lặp

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Cấu trúc

  • DANH SÁCH HINH VE (11)
  • CHUONG I: TONG QUAN (14)
    • 1.1 GI I THIEU VAN D (14)
    • 1.2 MỤC TIỂU NGHIÊN CỨU (14)
    • 1.3 PHAM VID TÀI (15)
    • 1.4 CÂU TRÚC LUẬN VĂN (15)
  • CHUONG II: COS LY THUYET (17)
    • 2.1 KIEM THU TU DONG PHANM M (17)
    • 2.2 KHUNG KIEM THU TU ĐỘNG PHẢNM M (19)
    • 2.3 XÁC Ð NH ĐỎI TƯỢNG UI BẰNG XPATH (22)
    • 2.4 SELENIUM WEB DRIVER (29)
  • CHUONG III: NHỮNG NGHIÊN CỨU LIEN QUAN (30)
    • 3.1 NGHIÊN CUU V SỬ DỤNG KKTTĐ HU NG TỪ KHOA (30)
    • 3.2 NGHIÊN CUU V_ THIET KE VA PHÁT TRIEN TỪ KHOA (31)
    • 3.3 NGHIÊN CUU V_ PHAN TÍCH VÀ THIET KE KHUNG KIEM THU TỰ DONG BANG SELENIUM WEBDRIVER (31)
    • 3.4 NHỮNG CÔNG CỤ HO TRỢ KIEM THU TỰ DONG (32)
  • CHUONG IV: THIET KE & HIEN THỰC (34)
    • 4.1 PHAN TICH YEU CAU (34)
    • 4.2 THIET KE VÀ HIỆN THỰC (34)
    • 4.3 XÂY DỰNG KHUNG KIEM THU HU NG TỪ KHOA (48)
  • CHƯƠNG V: THỰC NGHIỆM & ĐÁNH GIA (53)
    • 5.1 CÁC K CH BAN THU NGHIEM TREN WEB THUC TE (53)
    • 5.2 VIET K CH BAN BANG SCENARIO TEMPLATE (62)
    • 5.3 CHẠY SCENARIO TEMPLATE BẰNG COMMAND LINE (68)
    • 5.4 ĐÁNH GIÁ (71)
  • CHUONG VI: TONG KET (72)
    • 6.1 KET QUÁ ĐẠT DUOC (72)
    • 6.2 NHUNG MAT HAN CHE (73)
    • 6.3 HU NG PHÁT TRIEN (73)
  • TÀI LIỆU THAM KHẢO (74)
    • PHU LUC THU VIEN TU KHOA (75)
    • LY L CH TRÍCH NGANG (88)

Nội dung

NHIỆM VỤ VÀ NOI DUNG:e Thu th pt p các từ khoá mô tả các hoạt đ ng trong quá trình kiểm th ứng dụng web dựa vào t n su t tương tác của hành d ng.e Phân loại từ khoá theo từng thành ph n

DANH SÁCH HINH VE

Hình 2.2.1: Mô hình hư ng d liệu - L2 12222101 11112211 11151111115 111118 111cc kh 20

Hình 2.2.2: Mô hình hư ng từ khóa - - c0 1122201111121 1111281 111151111112 1111 ng vn ve 21

Hình 2.3.1: Dinh dang co bản của XPath, - - 211222222311 11123531 111111588 1111 ng ra 22

Hình 2.3.2: Ví dụv biểu thức xpath tuyệt đối của ph Mt -c St ccccrvEsrrrersre 23 Hình 2.3.3: Ví dụv biểu thức XPath tương đối của cùng m t ph nt - 24 Hình 2.3.4: Ví dụv s dung Contains trong Xpath để bat đối tượng -ssssxsscz 25

Hình 2.3.5: Ví dụ việc tìm 2 ph nt có thu c tính ‘class’ đ ng trong Xpath 26

Hình 2.3.6: Ví dụ sau tìm ph nt có text=Nh tài khoản" 2 c 55c Scccc+ssecsa 27

Hình 4.2.1: C a số tạo bản ghi các bu ckiểmth của qTest Explorer -ssssscscz 35

Hình 4.2.2: Giao diện cham t Alert bình thường 2222222222311 * +2 Ecesseseres 37

Hình 4.2.3: Giao diện cham t Alert PrormpIF - - - c2 3222 2221131123331 111111585111 Esrxres 37

Hình 4.2.4: Giao diện của m t alert confirmafIon cee 111K k kg nh nh kég 38

Hình 4.2.5: Thị ph n các trình duyệt web vào đ u quý 1 năm 2017 5+ 52c scc++ 39

Hình 4.2.6: Giao diện của trình duyệt Chrome . 2 2222222211111 EEEressereeres 39

Hỡnh 4.2.7: Vớ dụ tương tỏc v i bàn phim bằng cỏch tỡm kiếm trờn ứoogle - 4]

Hình 4.2.8: Thu c tính của các đối tượng trên trình duyét oo ccececesessseeseseseseseeeseeees 42 Hình 4.2.9: Đối tượng checkbox va radio button trên trình duyệt . -cccsczss 43 Hình 4.2.10: Đối tượng combobox và drop-down list .ccccccccscscsscseseseseceevsesesesesecevevsvevsnees 44 Hình 4.2.11: Đối tượng Frame trên trình duyỆt ¿+ 2 t3 EEEEEEEEEEESESEEEEEEEEEErrkrrerere 45

Hình 4.3.1: Nguyên lý hoạt đ ng của KKTTD Hư ng Từ Khoả 5555525 sc+++ 50

Hình 4.3.2: Cu trúc của KKTTD Hư ng Từ Khoá +5 2222132 S++2E+sseeeeeeea 51

Hình 5.1.1: Online Store Web Application .- cccccccseceeecesseeeeceessssaeeeeeestseeeeeentaaes 53

Hình 5.1.2: M t Thông Báo trên hệ thống W3SchOOL c.c.ccececccscsecescscseseesesesesevseetsessvseeeseee 54

Hình 5.1.3: Trang Demo QA trên trình duyệt Chrome +5 552225

  • XPath Testerc/1i > html body div divsidebar div.well ul li a

    Hình 2.3.3: Ví dụv biểu thức XPath tương đối của cùng m t ph nt Sử dụng XPath xử lý các phần tử phức tạp và đ ng trong Selenium

    Biểu thức XPath chọn các node ho c danh sách các node trên cơs các thu c tính như

    ID, name, class, vv từ tài liệu XML

    M ts6 biéu thức xpath co bản hon:

    - Xpath = //a|(@href=Thttp://viettuts.vn/]

    - Xpath =//Img[(@src=//images/home/Java.png ]

    Contains() la m t phương thức được s dụng trong biểu thức XPath Nó được s dụng khi giá trị của b t ky thu c tính nào thay đối đ ng, ví dụ như thông tin đăng nh p.

    Tính năng “contains” có khả năng tìm ph nt có ph n văn bản như trong ví dụ dư 1 đây Trong ví dụ nay, chúng ta cố gắng xác định ph nt bằng cách ch s dụng giá trị văn bản m t ph n của thu c tính Trong biểu thức XPath dư i đây, giá trim t ph n

    ‘sub’ được s dụng thay cho nút g i Nó có thé được quan sát th y rang các ph nt được tìm th y thành công.

    - Gia trị của thu c tinh type là ‘submit’ nhưng chúng tach cns dụng chuỗi con của nó là ‘sub’: Xpath=//*[contains(@type, sub )j

    - Vi dụ giá tri của thu c tính name là ‘btnLogin’, nhưng chúng tach c ns dụng m t ph n giá trị như sau: Xpath=.//*[contains(@name, 'btn')]

    9 - a x FF| Free Online HTML Forms X 7 Th Moodle sandbox demo:: X

    < C | â Bảo mat | https://demo.moodle.net W_ x

    Trinh duyét cua ban can phai mở chức nang quan lí cookie Nhớ tài khoản Q

    Có thể có một số khoá học Đăng nhập cho phép khách vãng lai truy cập rere eee eee ơ

    | Đăng nhập với tư cách kháqh kxẽ=====—=—=—=—=—=—=—=—=—=E—=—==—==~ ad

    Or ủi Elements nsol Security Audits 1A1 : X yu1_3 1/_¿ 1_ .ế /031V The ~~ | ơ ề ry Pee ee - 7

    > tn k" type="sub (div xpath=

    (div div y + #login button#loginbtn.btn.btn-primary.btn-block.mt-3

    Hình 2.3.4: Ví dụv s dụng Contains trong Xpath dé bat đối tượng.

    Sử dụng toán tử OR và ADD:

    Trong biểu thức OR, hai đi u kiện được s dụng, cho dù đi u kiện 1 HOẶC đi u kiện thứ 2 có đúng không Nó cũng được áp dụng nếu b t kỳ đi u kiện nào là đúng ho c có thể cả hai Có nghĩa là b t kỳ đi u kiện nào cũng đúng để tìm ph nt

    Trong biểu thức XPath dư ¡ đây, nó xác định các ph nt cóm tho c cả hai đi u kiện là đúng

    Xpath = //*{@type='submit' or @name='btnReset']

    Trong biểu thức AND, hai di u kiện duoc s dụng, ca hai đi u kiện phải đúng dé tim ph nt Nó không tìm th yph nt nếu b tky m tdi u kiện nào là sai.

    Xpath = //*{@type='submit' and @name="btnReset']

    Hàm starts-with() trong XPath:

    V icac trang web đ ng khi tải lai ho c các hoạt đ ng khác tương tự thì giá tri thu c tính của các ph nt bị thay đối Trong trường hop nay, bạn nên s7 dụng hàm này dé tìm ph nt có thu c tính thay đổi đ ng Bạn cũng có thé tìm th y ph nt có giá tri thu c tính là tĩnh (không thay đổi).

    Vi dụ: Giả sử ID của phan tử cụ thể thay đổi động như:

    Trong đó, các ký tự bắt đ u giống thì giống nhau Ví dụ sau tìm th y 2 ph nt trên trang web https://demo.moodle.net/login/index.php.

    Xpath = //div[starts-with(@class, 'mt')] e = Oo x

    = C | 8 Bảo mật | https://demo.moodle.net/login/index.php W %

    Ban quén ki danh hoac mat khẩu? naas 3 1 : SCO Trinh duyét cua ban can h phải mở chức năng quản lí | co oan: 3 I - i]

    ICO thể có một số khoá học h Đăng nhập ¡cho phép khách vãng la ;

    1 - 1 ¡truy cập 1 i] 1 1 1 1 - - J ¡ Đăng nhập với tu cách khách m—_— ~ TT xv

    Lr ả] Elements Console Sources Network Performance Memory Application Security Audits 1A1 : xX loginbtn : Đăng nhap

    Sau đó chúng tas luutr các giá trị Xpath của đối tượng vừa bat được vao trong tệp

    = _ = ơa”"=a“= FAs ọả=! '~ cỏ "t>~==^ asl —_â< —âGâ se>Nname= - A= `“ Đ — 3— >"

    + vườ Da woara= * 32='>~:t;ơ cxc{ Frasswora ica Dwœ hen AcsTn= = A='landin')

    Hình 5.1.10: Xpath của các đối tượng trên trang Home và Login.

    Làm tương tự cho các Kịch bản còn lại ta s thu được t t cả các đối tượng theo Xpath và lưutr vào tệp Object Repository theo định dạng = như bên dư 1: ơ===+>= zr e ac Tt — ô ee ==—=~= hen ft ^~œơt›n+= #f@43ZZ?2a=e=a=+an+ = Den 4V25CCCL'!.L- Leia accoun a hee T~~x '*+—-= ơ “2= 'x=z~—=~—==+ằ+ơ* TAs ' = Den LOQVur nhe accounv “COCUúC a

    - “ a.n — 1 2 A= —soms n—ha een Beem = onan ~~ ===='`~ on = —nameo pS ons =CkS¿iG:C _< yPˆ-aonơ5n-E°ax Y QALCCOULIL GQ/ SVall| FClLasS "ơ‹^-< aile

    = ơz~ Dares Oh ert rT ——-=~ —— — ~.*~ — =

    “oi TlaarNamne—| *[RsAz' = c£C UserName Lelia i0d +wt Dassword | A='rn ơ CAC Frasswora x Ra ĐWG hen Tơ#Tằ= ~ ¿3= aAcrin' Ben wOoG ln c CO +00.

    Ff BLS le Faye Q2 (CCCL 3 € + nĐô=ess12— * [RAs A's Ê~-—erm-= -T Res = A= YramerRes

    —_—~ ee Se os —_——~+>—ơ 2ơnằ—= 734 =ẩ#Z'restr7Fasn=đh2

    Den ~+XY—- Du C Leones.lic nyfu Lio

    _ J—F 4 ' +x+ essaqe= w a=" qQemo LAL LSS 25-52) _— oo sees

    = Dem OLB Dace Ohsect Yemo UW Fage Va ect milk Reet eee atta 1 “ 4 '?maz=xnt+t—3 tem 41! =

    =— ww - Sia ` - ae | ==*® ~ van Fwreriencet= ~ 73-='=v>h—- rac EXperliences Lelia exp-< my DitomationTeseter= ~* [RBs Ar'wnyrnfece n-1' "` Ua ol LS c-C “- ˆ ls ~ ơ^hw GeleniumWehari vert w +4! >~ơ^ơ1=^2!

    CA CC CC (CC LIY CS —VS= Test Cases Test Steps Settings + Ready c— + 100%

    Hình 5.2.2: Hién thị danh sách các đối tượng thu c trang Home.

    Tạo danh sách các từ khoá trong c t ‘Action Keyword’

    Em s nh p tên t t cả các từ khoá từ Thư Viện Từ Khoá vào c t ‘Action Keywords’ trong Sheet ‘Settings’ của Kịch ban Sau đó, em s s dụng tính năng ‘Data

    Validation’ trong mục ‘Data’ của Excel để tạo danh sách các từ khoá hiển thị

    ‘Action Keyword’ trong Sheet ‘Test Steps’.

    Home Insert Page Layout Formulas £8 ScenarioTemplate Review View

    \ Data Validation acceptAlert dismissAlert | List v Ri setAlertText verifyAlertMessage Data: openBrowser closeBrowser pacar Source: forward between

    Ignore blank In-cell dropdown closeWindowlndex switchToWindowlndex closeWindowTitle switchToWindowTitle closeWindowUrl switchToWindowUrl kGkGubuoliusionnkond deleteAllCookies ipt.

    4 > Test Cases Tel Clear All Point refresh _=Settings!$A$2:$A$58

    Apply these changes to all other cells with the same settings

    Hinh 5.2.3: Tao danh sach cac tu khoa dung Data Validation.

    Kếtquả c t ‘Action Keywords’ trong Sheet ‘Test Steps’ ban ch e nnh pchu t va danh sách các Từ Khoá s hiện ra cho bạn chon mà không c n phải nh p bang tay.

    Cách này giúp tránh sai sót trong quá trình nh p liệu. osee Dd m- Insert Page Layout Formulas Data Review View

    ’ % Calibri (Body) + 11 + A* Ar = Sr) General - 9 °

    * \ Sh St 4ˆ Format as Table *

    Paste U * ~ He Ae — * 9 +9 o0 Cells Editin Brey - = * %E 3+ $ % ac Pade p Cell Styles * S¿

    4 Test Case ID TS_ID Description Page Name | Page Object Action Keyword DataSet Result 2 [Login_o1 TS_001 | Open the Browser |openBrowser *rome `

    3 Logln 01 TS 002 | Navigate to website Store Demo QA acceptAlert kem 4 Logln 01 TS003 |Click on My Account button ơn the Top Right location |Home Page |btn MyAccount § Alert ! 5 Logln 01 TS 004 |Enter 'kynguyen' on the UserName textbox Logln Page |txt_UserName § Logln 01 T$ 005 | Enter 'Test@1234'on the Password textbox Login Page |txt_Password 7 Logln 01 TS006 |Click on Login button Login_Page |btn_Login verifyAlertMessage 8 Logln 01 TS 007 |Wait for '5'seconds openBrowser 9 Logln 01 TS 008 |Verify username 'kynguyen' |s displayed on avatar Home Page |lbl_Username 5 10 Logln 01 TS008 |Click on LogOut button Home Page |btn_LogOut Xà 11 Logln 01 TS 010 |Close the Browser backward 12 Alert 02 TS 001 |Open the Browser forward 13 Alert_02 TS 002 |Navigateto website refresh m/js/tryit.asp?filename=tryjs_prompt 14 Alert 02 TS 003 |Switch to Frame Result Alert Page |ift Result `

    15 Alert 02 TS 004 |Clickon Try It button on Result frame Alert Page |btn Trylt closeWindowlndex 16 Alert 02 TS_005 |Verify message on Alert popup switchToWindowlndex 17 Alert 02 TS 006 | Dismiss alert appears Alert Page closeWindowTitle 18 Alert 02 TS 007 | Verify text inside object Alert_Page |txt_Message xơ?

    19 Alert 02 TS 008 |Click on Try it button on Result frame Alert Page |btn Trylt click 20 Alert_02 TS 009 | Set text on Alert popup setAlertText Ky Nguyen 21 Alert_02 TS_010 | Accept alert appears Alert_Page acceptAlert

    22 Alert_02 TS 011 | Verify text inside object Alert Page |txt Message verifyElementText Hello Ky Nguyen! How are you today?

    Hình 5.2.4: Hiện thị danh sách các Từ Khoá trong c t ‘Action Keyword’.

    Nh p thông tin các Kịch b n kiếm thử th ct

    Em s dùng Kịch bản m u để mô tả các bu c kiếmth từ 7 trường hợpth nghiệm trên bằng cách s dụng các từ khoá từ Thư Viện Từ Khoá và cung e peacd liệu c n thiết cho từ khoá để có đ y đủ thông tin làm đ u vào (Input) cho KKTTĐ Hư ng Từ Khoá thực thi T t cả các thông tin trong Kịch bảnm uems s dung Tiếng Anh dé làm việc nó s tương thích v 1 các Từ Khoá trong Thư Viện Từ Khoá.

    Sau khi cai đ t xong các thông số của Kịch bản m u.Ems nh p Thông tin 7 trường hợp kiém th trên vào Kịch bản m u Ở Sheet ‘Test Cases’, các bạn lưu ym t số quy tắc sau:

    C t “Test Case ID':ems nh p theo định dạng Lưu ý bạn có thé đ t theo ý của mình sao cho ngắn gon Các giá tric t nay s được dùng trong Sheet ‘Test Steps’ dé biết được Step nào thu c Test Case nào.

    - Ct ‘Description’: ems nh p tên đ y đủ của kịch bản kiểm th Thông tin e tnày ch để giúp người đọchiểu mức đ chungv Kịch bản kiểm th - Ct ‘Runmode’: ems nh p vảo giá tri ‘Yes’ vì em muốn thực thi t t cả các trường hợp kiém th nay Nếu bạn không muốn thực th ch e n để giá trị ‘No’.

    - Ct“Result:c tnàyems để trốngvì c tnàys hiến thị kết quả trảv của từng kich bản kiém th sau khi thực thi.

    Test Case ID Description Runmode | Result

    LogIn_01 Verify Login on the Store Demo Application Yes Alert_02 Verify Alert popup on the W3School Application Yes Browser_03 Verify Browser action on Demo QA Application Yes RadioCheckbox_04 Verify Radio and Checkbox action on Tools QA Application Yes Combobox_05 Verify Single Drop down list (Combobox) action on Tools QA Application Yes DropDownList_06 Verify Multiple Drop down list (Drop-down list) action on Tools QA Application |Yes Draggable_07 Verify Drag And Drop action on Demo QA Application Yes

    Hình 5.2.5: Thong tin 7 Kịch bản m u trong Sheet “Test Cases’.

    O Sheet “Test Steps’,ems nh pt t cả thông tin chi tiết cho từng Kịch bản kiểm th. Ở đây có m t số quy tắc c n chú ý:

    - Ct “Test Case ID’: ems nh p giống v i giá trị c t “Test Case ID’ trongSheet ‘Test Cases’ để giúp KKTTD biết được m t “Test Case’? s có bao nhiêu bu ckiém th

    C t‘TS ID:ems nh p theo định dạng Giá trị này s giúp người dùng biết được thứ tự của các bu c trong kiểm th

    C t ‘Description’: Em s nh p thông tin mô tả chỉ tiết các bu c kiém th bắt d uv id ng từ và chứa tên đối tượng c n tương tác.

    C t “Page Name’ và “Page Object’: Em s dụng tính năng Data Validation cua

    Excel dé quản lý tên các đối tượng tương ứng v i từng trang theo Page Object Model (POM) Lưu ý răng tên các đối tượng c t ‘Page Object’ s trùng kh p v ¡ các đối tượng mà ta đã bat và lưu tr trong tệp Object Repository.

    C t ‘Action Keyword’: em s nh p các từ khoá từ Thư viện Từ Khoá dé mô tả từng bu c kiém th

    C t‘Data Set?:ems nh pd_ liệu (nếu có) cho Từ khoá dé thực thi.

    CHẠY SCENARIO TEMPLATE BẰNG COMMAND LINE

    Sau khi hiện thực xong quá trình bắt các đối tượng bang Xpath và nh p thông tin 7 Kịch bảnth nghiệm vào Kịch bản m u Em bắt đ u thực thi 7 Kịch bản th nghiệm này bằng KKTTĐ Hư ng Từ Khoá. Ð utiên em s dùng lệnh maven “mvn clean package” dé đóng gói source code thành file ‘jar’ để thu n tiện trong việc thực thi mà không c n IDE (Môi trường phát triển tích hợp như Eclipse hay Intellij).

    _—— (make-assembly) @ Building jar: /Users/kyte/Documents/Workspace/keyword-driven/target/master-thesis—]ar-with-dependencies. ar

    Kytes-MacBook: keyword-driven kyle$

    M_ command line và gõ lệnh: java —7ar master-thesis-jar-with-dependences dé thực thi các trường hep th nghi¢m trong Kịch bản m u. ®@©@ =-' MasterRelease — -bash — 83x24

    Kết quả sau khi thực this ghi vào c t “Result” của Scenario Template excel file

    Test Case ID Description Runmode | _ Result

    LogIn_01 Verify Login on the Store Demo Application Yes PASS Alert_02 Verify Alert popup on the W3School Application Yes PASS Browser_03 Verify Browser action on Demo QA Application Yes PASS RadioCheckbox_04 Verify Radio and Checkbox action on Tools QA Application Yes PASS Combobox_05 Verify Single Drop down list (Combobox) action on Tools QA Application Yes PASS DropDownList_06 Verify Multiple Drop down list (Drop-down list) action on Tools QA Application |Yes PASS Draggable_07 Verify Drag And Drop action on Demo QA Application Yes PASS

    Hình 5.3.3: Kết quả tra v của các Kịch ban th nghiệm trong Sheet ‘Test Cases’

    Test Case ID TS_ID Description Page Name | Page Object Action Keyword Data Set E=

    Login_01 |TS 001 |Open 'Chrome' Browser openBrowser Chrome ASS Login_01 |TS 002 |Navigate to website ‘Store Demo QA’ navigateToUrl http://www.store.demoqa.com PASS Login_01 |TS 003 [Click on 'My Account' button on the Top Right location Home_Page |btnMyAccount [click PASS Login_01 |TS 004 |Enter 'kynguyen' on 'UserName' textbox Logln Page |txt UserName |input kynguyen PASS Login 01 [TS 005 |Enter 'Test@1234' on 'Password' textbox Login Page |txt_Password input Test@1234 PASS Login_01 |TS 006 |Click on 'Login' button Login_Page |btn_Login click PASS Login_01 |TS_007 | Wait for '5' seconds threadSleep 5 PASS Login_01 |TS_008 |Verify username 'kynguyen' is displayed on avatar Home_Page |lbl_Username verifyElementText |kynguyen PASS Login_01 |TS 009 [Click on 'LogOut' button Home_Page |btn_LogOut click PASS Login_01 |TS_010 |Close the Browser closeBrowser PASS Alert_02 |TS_001 |Open 'Chrome' Browser openBrowser ¥ |rome PASS Alert_02 |TS_002 |Navigate to website 'W3School' navigateToUrl https://www.w3schools.com/js/tryit.asp?filename=tryPASS Alert_02 |TS 003 |Switch to Frame 'Result' Alert Page |ifr_Result switchToFrame PASS Alert 02 |TS 004 |Click on 'Try It' button on 'Result' frame Alert Page |btn_Trylt click PASS Alert_02 |TS 005 |Verify message 'Please enter your name:' displayed on Alert popup verifyAlertMessage |Please enter your name: PASS Alert_02 |TS_006 | Dismiss alert appears Alert_Page dismissAlert PASS Alert_02 |TS_007 |Verify message 'User cancelled the prompt." is displayed Alert Page |txt_Message verifyElementText |User cancelled the prompt PASS Alert_02 |TS 008 |Click on 'Try It' button on 'Result' frame Alert Page |btn_Trylt click PASS Alert 02 |TS 009 |Enter text 'Ky Nguyen' on Alert popup setAlertText Ky Nguyen PASS Alert 02 |TS 010 |Accept alert appears Alert_Page acceptAlert PASS Alert 02 |TS 011 |Verify message 'Hello Ky Nguyen! How are you today?" Alert Page |txt_Message verifyElementText Hello Ky Nguyen! How are you today? PASS Alert_02 |TS 012 |Close the Browser closeBrowser PASS Browser_03TS_001 |Open 'Chrome' Browser openBrowser Chrome PASS Browser 03TS 002 |Navieate to website 'De navizateToUrl htto://demoaa.com PASS

    Bro lỗ Test Cases Test Steps Settings +

    Hình 5.3.4: Kết quả trav của các Bu c kiém th trong Sheet ‘Test Steps’

    Thời gian thực thi cho 7 test cases là: © MasterRelease — -bash — 119x24 /ScenarioTemnlate yvicy /ilsers/kyle/Downloads/MasterRelease/1log4j.xml /Users/kyle/Downloads/MasterRelease/OR txt

    2018-06-18 08:22:28 INFO LogUti1:13 - *#*#*#**#****#****#**#**#****************#*********%*%*%%%% ie * * * * * É ee Oe KK KK KK KK

    2018-06-18 08:22:28 INFO LogUti1:17 - KKK KKK KKK KEKE KKK KKK KEK KKK KEKE KKK KKK KKK KKK KEKE KEK KKK KKK KKK KERR KKK KKK KEK KKK KKK KK KK

    SLF4J: Defaulting to no-operation (NOP) logger implementation SLF4J: See http://www.s1f4j.org/codes.htm1#StaticLoggerBinder for further details.

    Starting ChromeDriver 2.40.565386 (45a059dc425e08165f9a10324bd1380cc13ca363) on port 23948 Only local connections are allowed.

    Jun 18, 2018 8:22:32 AM org.opengqa.selenium.remote.ProtocolHandshake createSession INFO: Detected dialect: OSS

    2018-06-18 08:22:32 INFO LogUtil:33 - Chrome browser started 2018-06-18 08:22:33 INFO LogUti1:33 - Navigating to URL {http://www.store demoqa com}

    2018-06-18 08:22:42 INFO LogUtil:33 - Clicking on {btn_MyAccount} element 2018-06-18 08:22:45 INFO LogUtil:33 Entering text {kynguyen} in {txt_UserName} element 2018-06-18 08:22:45 INFO LogUtil:33 Entering text {Test@1234} in {txt_Password} element 2018-06-18 08:22:45 INFO LogUtil:33 - Clicking on {btn_LogIn} element

    Hinh 5.3.5: Thoi gian bat đ u thực thi 7 Kịch bản th nghiệm trên Command Line.

    2018-06-18 08:24:20 INFO LogUti1:16 FRR ORR ORR ORG OR OG K ROR GRR ẮC SE ẤK SE SE GOR OR RGR ROKR ROK IR RK eo

    2018-06-18 08:24:20 INFO LogUtil:17 2A KE AAR AIR RO IO I ok eR

    2018-06-18 08:24:20 INFO LogUtil:33 - Opening {Chrome} Browser Starting ChromeDriver 2.40.565386 (45a059dc425e08165f9a10324bd1380cc13ca363) on port 11879 Only local connections are allowed.

    Jun 18, 2018 8:24:23 AM org.openga.selenium.remote.ProtocolHandshake createSession INFO: Detected dialect: OSS

    2018-06-18 08:24:23 INFO LogUti1:33 - Chrome browser started 2018-06-18 08:24:23 INFO LogUtil:33 Navigating to URL {http: //demoqa.com/draggab1e/}

    2018-06-18 08:24:30 INFO LogUti1:33 - Clicking on {tab_Events} element 2018-06-18 08:24:30 INFO LogUti1:33 Thread sleep in {3} seconds 2018-06-18 08:24:33 INFO LogUti1:33 Drag and drop {div_DragEvents} element to offset x-y {100-15}

    2018-06-18 08:24:33 INFO LogUti1:33 Thread sleep in {3} seconds 2018-06-18 08:24:36 INFO LogUti1:33 Drag and drop {div_DragEvents} element to offset x-y {15-100}

    2018-06-18 08:24:37 INFO LogUti1:33 Thread sleep in {3} seconds 2018-06-18 08:24:40 INFO LogUti1:33 - Clicking on {tab_DraggableSortable} element 2018-06-18 08:24:40 INFO LogUti1:33 Thread sleep in {3} seconds

    2018-06-18 08:24:43 INFO LogUti1:33 Drag and drop {1i DraggableBox} source element to {Li SortabLeBox} destination e Lement

    2018-06-18 08:24:43 INFO LogUti1:33 Thread sleep in {3} seconds 2018-06-18 08:24:46 INFO LogUti1:33 Closing the browser 2018-06-18 08:24:46 INFO LogUtil:23 - XXXXXXXXXXXXXXXXXXXXXXX -E -N -D- XXXXXXXXXXXXXXXXXXXX XX

    2018-06-18 08:24:46 INFO LogUtil:24 2018-06-18 08:24:46 INFO LogUti1l:25 2818-86-18 OR-24-A46 INFO LogUti1:26 2018-06-18 08:24:46 INFO 'LogUti1:27

    Hinh 5.3.6: Thoi gian kết thúc thực thi 7 Kịch ban th nghiệm trên Command Line.

    Kịch bản 1 bắt đ u lúc 08:22:28 và Kịch bản 7 kết thúc lúc 08:24:46 Tong thời gian thực thi là 2 phút 18 giây.

    ĐÁNH GIÁ

    Như v y sau quá trình thực nghiệm theo Phương pháp Case Study cho 7 Kịch ban kiém th thực tế trên 5 ứng dụng Web ta thu được kết quả sau:

    Thời gian bat các đối tượng và nh p thông tin vào Kịch bản m u:M thon 1 giờ dé bat các đối tượng c n tương tác bằng Xpath và nh p thông tin vào trong tệp Object Repository, cũng như nh p thông tin các bu c kiém th của 7 kịch ban th nghiệm vào Kịch bản m u Tuy nhiên chúng ta ch làm việc nay m tl n duy nh t.

    Thời gian thực thi: M t hơn 20 phút dé thực hiện 7 trường hợp kiém th bang tay nhưng ch c n hơn 2 phút nếu thực hiện tự đ ng, tach việc "Run"r ing i chờ kết quả.

    Chi phí: Việc rút ngăn thời gian và tiết kiệm nhân lực giúp cho công việc kiểm th tự đ ngtr nên hiệu quả Ngoài ra, v ¡ sự hỗ trợ của Thư Viện Từ Khoá này giúp cho các kiểmth viên thủ công tr thành m t ph n của nhóm kiểm th tự đ ng.

    TONG KET

    KET QUÁ ĐẠT DUOC

    Sau khi thực hiện đ tài đã đạt được nhi u kết quả khả quan:

    Phân loại các từ khoá riêng biệt theo từng thành ph n của giao diện Web Tang sự hiệu quả khis dụng từ khoá từ thư viện.

    Xây dựng thư viện hơn 50 từ khoá có thể tự đ ng hoá h u hết các hành đ ng trong quá trình kiểmth m tứng dụng Web.

    Xây dựng Kịch Ban M ud ngb và thống nh t các kịch bản kiếmth khi s dụng thư viện từ khoá.

    Xây dựng Khung kiém th tự đ ng hư ng từ Khoá bang Selenium Webdriver dé hỗ trợ thực thi các từ khoá trong Kịch ban m u.

    Thời gian thực thi nhanh hơn nhi ul nso v ikiểmth thủ công và hạn chế được sai sót ty con nguoi.

    S dụng Kịch banm ud dang và không c n viết mã ngu n.

    Khi thực hiện d tài này, em học được cách s dụng thành thạo thư viện Selenium dé tương tac v i các Ứng dung Web, thư viện POI dé doc và ghi trên file Excel và thư viện Log4J dé ghi log ra console và file.

    Quá trình thực hiện đ tài đã giúp ban thân sinh viên rèn luyện ki Inăng nghiên cứu các thu t toán, phân tích, thiết kế hệ thống, so sánh và lựa chọn các phương án thực hiện hiệu quả. c tiên,

    Giải quyét v nd tự đ ng hoá ứng dung web trong kiém th ph nm m.

    Hỗ trợ tốt cho người kiém th viên thủ công thiếu khả năng | p trình.

    Giải quyết bài toán thiếu kUsu kiém th tự đ ng trong tương lai.

    Xây dựng được Thư Viện Từ Khoá mạnhm hỗ trợh u hết các ứng dụng Web từ đơn giản đến phức tạp.

    Thu th p từ khoá theo t n su t xu t hiện và phương pháp vét cạn t t cả các hành đ ng.

    Phân loại các từ khoá theo từng thành ph n giao diện Web làm tăng sự hiệu qua khis dụng.

    NHUNG MAT HAN CHE

    Nhìn chung, dù đã cố gang, nhưng v i thời gian có han, đ tài v ncònnh ng han chế sau đây:

    Thư viện Từ Khoá ch s dụng cho các ứng dụng trên Web, chưa hỗ trợ được cho các ứng dụng trên Mobile, Web Service.

    Thư viện còn thiếu nh ng hành đ ng phức tạp như gọi m t ham thực thi, s dung if else trong Kịch bản m u.

    Chưa hỗ trợ UI thay cho Excel file để s dụng d dàng hơn cho người kiểm th

    HU NG PHÁT TRIEN

    V ib khung của đ tài đã được xây dung kha bai ban, việcm r ng và hoàn thiện là vô cùng d dàng, m t số định hư ng phát triển tiếp theo của lu n văn như sau:

    M r ng thư viện Từ Khoá hỗ trợ trên ứng dụng Mobile, Web Service.

    M r ng thư viện Từ Khoá hỗ trợ gọi hàm,x lý các tình huống phức tạp hơn trong Kịch bản m u.

    Xây dựng khung kiém th tự đ ng kết hợp gi ahư ng từ khoá và hư ng d liệu để chạy các trường hop th nghiệm v id liệu l n(Big Data).

    Xây dung UI thay cho Excel dé hỗ trợ người dùng d_ dàng hơn trong việc s dụng các từ khoá từ Thư Viện.

    Ngày đăng: 08/09/2024, 23:17

    TÀI LIỆU CÙNG NGƯỜI DÙNG

    TÀI LIỆU LIÊN QUAN

    w