Bài giảng Công cụ kiểm thử phần mềm - Bài 8: Kiểm thử tự động

Đặt vấn đề

Bạn là một tester giỏi, bạn thiết kế các

testcase tốt và thực hiện cẩn thận chúng

nhưng còn thời gian và tiền bạc thì sao?

Kiểm thử tự động (automated testing) là

sử dụng công cụ để thực hiện tự động

một phần hoặc toàn bộ quy trình kiểm thử

và kiểm tra kết quả mà không cần sự can

thiệp của con người

Lợi ích

Tiết kiệm thời gian và công sức

 Giảm sự nhàm chán và sai xót

Nâng cao mức độ phủ của test suits

Có thể sự dụng lại các bộ test case

Tuy nhiên lợi ích của việc tự động hóa

chỉ đạt được cao nhất khi nỗ lực cho việc

tự động hóa không quá lớn

Bài giảng Công cụ kiểm thử phần mềm - Bài 8: Kiểm thử tự động trang 1

Trang 1

Bài giảng Công cụ kiểm thử phần mềm - Bài 8: Kiểm thử tự động trang 2

Trang 2

Bài giảng Công cụ kiểm thử phần mềm - Bài 8: Kiểm thử tự động trang 3

Trang 3

Bài giảng Công cụ kiểm thử phần mềm - Bài 8: Kiểm thử tự động trang 4

Trang 4

Bài giảng Công cụ kiểm thử phần mềm - Bài 8: Kiểm thử tự động trang 5

Trang 5

Bài giảng Công cụ kiểm thử phần mềm - Bài 8: Kiểm thử tự động trang 6

Trang 6

Bài giảng Công cụ kiểm thử phần mềm - Bài 8: Kiểm thử tự động trang 7

Trang 7

Bài giảng Công cụ kiểm thử phần mềm - Bài 8: Kiểm thử tự động trang 8

Trang 8

Bài giảng Công cụ kiểm thử phần mềm - Bài 8: Kiểm thử tự động trang 9

Trang 9

Bài giảng Công cụ kiểm thử phần mềm - Bài 8: Kiểm thử tự động trang 10

Trang 10

Tải về để xem bản đầy đủ

pdf 61 trang duykhanh 6360
Bạn đang xem 10 trang mẫu của tài liệu "Bài giảng Công cụ kiểm thử phần mềm - Bài 8: Kiểm thử tự động", để tải tài liệu gốc về máy hãy click vào nút Download ở trên

Tóm tắt nội dung tài liệu: Bài giảng Công cụ kiểm thử phần mềm - Bài 8: Kiểm thử tự động

Bài giảng Công cụ kiểm thử phần mềm - Bài 8: Kiểm thử tự động
Bài 8 – Kiểm thử tự động 
 Công cụ kiểm thử phần mềm 
 Bộ môn Công nghệ phần mềm 
 Nội dung 
£ Kiểm thử tự động 
£ Tổng quan Selenium 
£ Selenium IDE 
£ Selenium WebDriver 
 2 
 2/4/15 Công cụ kiểm thử phần mềm 
 Đặt vấn đề 
£ Bạn là một tester giỏi, bạn thiết kế các 
 testcase tốt và thực hiện cẩn thận chúng 
 nhưng còn thời gian và tiền bạc thì sao? 
 Again Again 
 and again 
 I have to do this 
 test again. 
 How about my 
 girlfriend? 
 3 
 2/4/15 Công cụ kiểm thử phần mềm 
 Định nghĩa 
£ Kiểm thử tự động (automated testing) là 
 sử dụng công cụ để thực hiện tự động 
 một phần hoặc toàn bộ quy trình kiểm thử 
 và kiểm tra kết quả mà không cần sự can 
 thiệp của con người 
 4 
 2/4/15 Công cụ kiểm thử phần mềm 
 Lợi ích 
£ Tiết kiệm thời gian và công sức 
£ Giảm sự nhàm chán và sai xót 
£ Nâng cao mức độ phủ của test suits 
£ Có thể sự dụng lại các bộ test case 
 è Tuy nhiên lợi ích của việc tự động hóa 
 chỉ đạt được cao nhất khi nỗ lực cho việc 
 tự động hóa không quá lớn 
 5 
 2/4/15 Công cụ kiểm thử phần mềm 
 Ứng dụng 
£ Kiểm thử tự động thích hợp 
 p Kiểm thử hồi qui (Regression testing) 
 p Kiểm thử hướng dữ liệu (Data driven testing) 
 p Kiểm thử bản địa hóa (Localization testing) 
 ¡  Kiểm thử trên nhiều nền tảng 
 ¡  Kiểm thử trên nhiều ngôn ngữ 
 p Kiểm thử khả năng chịu tải (Load testing) 
 6 
 2/4/15 Công cụ kiểm thử phần mềm 
 Khó khăn 
£ Test scripts là mã nguồn 
£ Xác nhận (validation) 1 testcase là Pass 
 hay Fail 
£ Một số tình huống cần sự can thiệp của 
 con người (ví dụ như captcha) 
 7 
 2/4/15 Công cụ kiểm thử phần mềm 
 Các thành phần 
£ Test script 
 p Dùng công cụ record and replay 
 p Tự viết script 
£ Test data 
 p CSDL 
 p Xml, Cfv 
£ Test validation 
 8 
 2/4/15 Công cụ kiểm thử phần mềm 
 Một số công cụ kiểm thử tự động 
£ Functional test 
 p QTP, Selenium, Windmill,  
£ Non-functional test 
 p Load runner, CloudTest, Load Storm,  
 9 
 2/4/15 Công cụ kiểm thử phần mềm 
 Nội dung 
£ Kiểm thử tự động 
£ Tổng quan Selenium 
£ Selenium IDE 
£ Selenium WebDriver 
 10 
 2/4/15 Công cụ kiểm thử phần mềm 
 Tổng quan Selenium 
£ Selenium là công cụ 
 p Mã nguồn mở 
 p Kiểm thử tự động 
 p Ứng dụng website 
 11 
 2/4/15 Công cụ kiểm thử phần mềm 
 Tổng quan Selenium 
£ Selenium có 4 thành phần 
 p Selenium IDE 
 p Selenium RC 
 p Selenium WebDriver 
 p Selenium Grid 
 12 
 2/4/15 Công cụ kiểm thử phần mềm 
 Nội dung 
£ Kiểm thử tự động 
£ Tổng quan Selenium 
£ Selenium IDE 
£ Selenium WebDriver 
 13 
 2/4/15 Công cụ kiểm thử phần mềm 
 Selenium IDE 
£ Plugin của Firefox 
£ Chức năng Record và Playback 
 14 
 2/4/15 Công cụ kiểm thử phần mềm 
 Selenium IDE 
£ Cài đặt  
 15 
 2/4/15 Công cụ kiểm thử phần mềm 
 Selenium IDE 
£ Chạy plugin 
 16 
 2/4/15 Công cụ kiểm thử phần mềm 
 Selenium IDE 
£ Giao diện chính 
 17 
 2/4/15 Công cụ kiểm thử phần mềm 
 18 
2/4/15 Công cụ kiểm thử phần mềm 
 Selenium IDE 
£ Menu 
 19 
 2/4/15 Công cụ kiểm thử phần mềm 
 Selenium IDE 
£ Cấu hình 
 20 
 2/4/15 Công cụ kiểm thử phần mềm 
 Selenium IDE 
£ Thứ tự ưu tiên Locator 
 21 
 2/4/15 Công cụ kiểm thử phần mềm 
 Selenium IDE 
£ Thanh công cụ 
 Tốc độ chạy lại 
 Ghi / dừng ghi 
 Chạy toàn bộ Test suite 
 Chạy Test case hiện tại 
 Tạm dừng / chạy ếp 
 Chạy từng bước 
 Nhóm các bước lại 
 22 
 2/4/15 Công cụ kiểm thử phần mềm 
 Selenium IDE 
£ Ví dụ Record and Playback 
 p Bước 1: 
 ¡  Chạy Selenium IDE 
 ¡  Nhập Base Url:  
 p Bước 2: 
 ¡  Trong Firefox nhập Url 
 23 
 2/4/15 Công cụ kiểm thử phần mềm 
 Selenium IDE 
£ Ví dụ Record and Playback 
 p Bước 3: 
 ¡  Phải chuột trên khoảng trống trong trang 
 ¡  Chọn “Show Available Commands” 
 ¡  Chọn “assertTitle exact:Welcome: Mercury Tours” 
 24 
 2/4/15 Công cụ kiểm thử phần mềm 
 Selenium IDE 
£  Ví dụ Record and Playback 
 p  Bước 4: 
 ¡  Nhập “User name”: invalidUN 
 ¡  Nhập “Password”: invalidUN 
 p  Bước 5: 
 ¡  Bấm vào button “Sign-in” 
 25 
 2/4/15 Công cụ kiểm thử phần mềm 
 Selenium IDE 
£ Ví dụ Record and Playback 
 p Bước 6: 
 ¡  Phải chuột trên khoảng trống trong trang 
 ¡  Chọn “Show Available Commands” 
 ¡  Chọn “assertTitle exact:Sign-on: Mercury Tours” 
 p Bước 7: 
 ¡  Bấm nút dừng quay 
 p Bước 8: 
 ¡  Bấm nút chạy lại test 
 26 
 2/4/15 Công cụ kiểm thử phần mềm 
 Selenium IDE 
£  3 loại command 
 p  Action 
 ¡  Thao tác trực tiếp thành phần của trang web 
 ¡  Ví dụ: click, type 
 p  Accessors 
 ¡  Cho phép lưu các giá trị vào các biến 
 p  Assertions 
 ¡  Kiểm tra một điều kiện được thỏa 
 ¡  3 loại 
 §  Assert: khi bị fail sẽ dừng test 
 §  Verify: khi bi fail sẽ ghi nhận và chạy tiếp 
 §  Waitfor: nếu điều kiện đúng trong thời gian chờ thì pass 
 27 
 2/4/15 Công cụ kiểm thử phần mềm 
 Selenium IDE 
£ Các command thông dụng 
 Command SL tham số Giải thích 
 open 0 – 2 Mở 1 trang theo url 
 click/clickAndWait 1 Click vào 1 thành phần 
 type/typeKeys 2 Nhập 1 chuỗi ký tự 
 verifyTitle/assertTitle 1 Kiểm tra êu đề 
 verifyTextPresent 1 Kiểm tra có 1 đoạn text 
 verifyElementPresent 1 Kiểm tra có 1 thành phần 
 verifyTable 2 Kiểm tra 1 table 
 waitForPageToLoad 1 Chờ cho đến khi trang được tải xong 
 waitForElementPresent 1 Chờ cho đến khi 1 thành phần xuất hiện 
 28 
 2/4/15 Công cụ kiểm thử phần mềm 
 Selenium IDE 
£  Các loại Locator 
 p  ID p  DOM (Document 
 p  Name Object Model) 
 p  Link Text ¡  getElementById 
 ¡  getElementsByName 
 p  CSS Selector 
 ¡  dom:name 
 ¡  Tag and ID 
 ¡  dom:index 
 ¡  Tag and class 
 p  XPath 
 ¡  Tag and attribute 
 ¡  Tag, class, and attribute 
 ¡  Inner text 
2/4/15 Công cụ kiểm thử phần mềm 29 
 Selenium IDE 
£ Xác định bằng ID 
 p Target: id=id of the element 
 30 
 2/4/15 Công cụ kiểm thử phần mềm 
 Selenium IDE 
£ Xác định bằng Name 
 p Target: name=name of the element 
 31 
 2/4/15 Công cụ kiểm thử phần mềm 
 Selenium IDE 
£ Xác định bằng Name có filter 
 p Target: name=name_of_the_element 
 filter=value_of_filter 
 32 
 2/4/15 Công cụ kiểm thử phần mềm 
 Selenium IDE 
£ Xác định bằng Link Text 
 p Target: link=link_text 
 33 
 2/4/15 Công cụ kiểm thử phần mềm 
 Selenium IDE 
£ Xác định bằng CSS – Tag và ID 
 p Target: css=tag#id 
 34 
 2/4/15 Công cụ kiểm thử phần mềm 
 Selenium IDE 
£ Xác định bằng CSS – Tag và Class 
 p Target: tag.class 
 35 
 2/4/15 Công cụ kiểm thử phần mềm 
 Selenium IDE 
£ Xác định bằng CSS – Inner Text 
 p Target: css=tag:contains(“inner text”) 
 36 
 2/4/15 Công cụ kiểm thử phần mềm 
 Selenium IDE 
£ Tóm tắt các Locator 
 Method Target Syntax Example 
 By ID id= id_of_the_element id=email 
 By Name name=name_of_the_element name=username 
 By Name Using Filters name=name_of_the_element filte name=tripType value=oneway 
 r=value_of_filter 
 By Link Text link=link_text link=REGISTER 
 Tag and ID css=tag#id css=input#email 
 Tag and Class css=tag.class css=input.inpuext 
 Tag and Aribute css=tag[aribute=value] css=input[name=lastName] 
 Tag, Class, and Aribute css=tag.class[aribute=value] css=input.inpuext[tabindex=1] 
 37 
 2/4/15 Công cụ kiểm thử phần mềm 
 Selenium IDE 
£ verifyElementPresent 
 p True nếu thành phần có tồn tại 
 p False nếu thành phần không tồn tại 
£  verifyElementNotPresent 
 p True nếu thành phần không tồn tại 
 p False nếu thành phần tồn tại 
 38 
 2/4/15 Công cụ kiểm thử phần mềm 
 Selenium IDE 
£ verifyTextPresent 
 p True nếu đoạn text có trong trang web 
 p False nếu đoạn text không có trong trang 
 web 
£ verifyTextNotPresent 
 p True nếu đoạn text không có trong trang web 
 p False nếu đoạn text có trong trang web 
 39 
 2/4/15 Công cụ kiểm thử phần mềm 
 Selenium IDE 
£ verifyElementPositionLeft 
 p Kiểm tra vị trí trái của 1 thành phần 
£ verifyElementPositionTop 
 p Kiểm tra vị trí trên của 1 thành phần 
 40 
 2/4/15 Công cụ kiểm thử phần mềm 
 Selenium IDE 
£ andWait commands 
 p Ví dụ 
 ¡  clickAndWait 
 ¡  typeAndWait 
 ¡  selectAndWait 
 p Chờ cho đến khi trang 
 tải xong mới thực hiện 
 bước tiếp theo 
 41 
 2/4/15 Công cụ kiểm thử phần mềm 
 Selenium IDE 
£ waitFor commands 
 p Ví dụ 
 ¡  waitForTitle 
 ¡  waitForTextPresent 
 ¡  waitForAlert 
 p Chờ cho đến khi điều kiện được thực thi mới 
 qua bước tiếp theo 
 42 
 2/4/15 Công cụ kiểm thử phần mềm 
 Selenium IDE 
 43 
2/4/15 Công cụ kiểm thử phần mềm 
 Selenium IDE 
£ Lưu giá trị vào biến 
 44 
 2/4/15 Công cụ kiểm thử phần mềm 
 Selenium IDE 
£ Alerts và Pop-up 
 assertAlert 
 assertNotAlert Kiểm tra chuỗi trong alert 
 assertAlertPresent 
 assertAlertNotPresent Kiểm tra có alert hay không 
 storeAlert Lưu chuỗi trong alert 
 storeAlertPresent Trả về True khi có alert và False khi không có alert 
 verifyAlert 
 verifyNotAlert Kiểm tra chuỗi trong alert 
 verifyAlertPresent 
 Kiểm tra có alert hay không 
 verifyAlertNotPresent 
 45 
 2/4/15 Công cụ kiểm thử phần mềm 
 Nội dung 
£ Kiểm thử tự động 
£ Tổng quan Selenium 
£ Selenium IDE 
£ Selenium WebDriver 
 46 
 2/4/15 Công cụ kiểm thử phần mềm 
 Selenium WebDriver 
£  Sử dụng ngôn ngữ lập trình để tạo các script 
 p  Sử dụng điều kiện rẽ nhánh 
 p  Sử dụng vòng lặp 
£  Các ngôn ngữ hỗ trợ 
 p  Java 
 p  .Net 
 p  PHP 
 p  Python 
 p  Perl 
 p  Ruby 
 47 
 2/4/15 Công cụ kiểm thử phần mềm 
 Selenium WebDriver 
£ Các trình duyệt hỗ trợ 
 48 
 2/4/15 Công cụ kiểm thử phần mềm 
 Selenium WebDriver 
£ Các trình duyệt hỗ trợ 
 Trình duyệt Tên Driver Server Chi chú 
 HTMLUnit (none) Không cần driver 
 Firefox (none) Không cần driver 
 Internet Explorer Internet Explorer Driver Server Có 2 phiên bản 32 and 64-bit 
 Chrome ChromeDriver 
 Opera OperaDriver 
 PhantomJS GhostDriver 
 Safari SafariDriver 
 49 
 2/4/15 Công cụ kiểm thử phần mềm 
 Selenium WebDriver 
£ WebDriver vs RC 
 50 
 2/4/15 Công cụ kiểm thử phần mềm 
 Selenium WebDriver 
£ Ví dụ WebDriver với C# 
 p Bước 1: download Selenium C# Client Driver 
 p Bước 2: cài đặt NUnit 
 51 
 2/4/15 Công cụ kiểm thử phần mềm 
 Selenium WebDriver 
£ Ví dụ WebDriver với C# 
 p Bước 3: dùng Selenium ghi lại các bước test 
 p Bước 4: Export Test Case As à C# / NUnit / 
 WebDriver 
 52 
 2/4/15 Công cụ kiểm thử phần mềm 
 Selenium WebDriver 
£ Ví dụ WebDriver với C# 
 p Bước 5: tạo dự án 
 ¡  Tạo dự án Class Library, ngôn ngữ C# 
 ¡  Sao chép mã nguồn đã export vào dự án 
 ¡  Thêm các Reference 
 53 
 2/4/15 Công cụ kiểm thử phần mềm 
 Selenium WebDriver 
£ Ví dụ WebDriver với C# 
 p Lập trình test case 
 54 
 2/4/15 Công cụ kiểm thử phần mềm 
 Selenium WebDriver 
£ Ví dụ WebDriver với C# 
 p Chạy trên trình duyệt Firefox 
 55 
 2/4/15 Công cụ kiểm thử phần mềm 
 Selenium WebDriver 
£ Ví dụ WebDriver với C# 
 p Chạy trên trình duyệt Chrome 
 56 
 2/4/15 Công cụ kiểm thử phần mềm 
 Selenium WebDriver 
£ Ví dụ WebDriver với C# 
 p Chạy nhiều testcases trên cùng 1 script 
 57 
 2/4/15 Công cụ kiểm thử phần mềm 
 Selenium WebDriver 
£ Ví dụ WebDriver với C# 
 p Chạy nhiều testcases trên cùng 1 script 
 58 
 2/4/15 Công cụ kiểm thử phần mềm 
 Selenium WebDriver 
£ Ví dụ WebDriver với C# 
 p Chạy nhiều testcases từ database 
 59 
 2/4/15 
 Công cụ kiểm thử phần mềm 
 Selenium WebDriver 
£  Download các browser 
 p  Chrome diver: chromedriver_win_26.0.1383.0.zip 
 https://code.google.com/p/chromedriver/downloads/
 list 
 p  IE driver: IEDriverServer_Win32_2.32.3.zip 
 https://code.google.com/p/selenium/downloads/list 
 p  Opera driver 
 https://code.google.com/p/selenium/wiki/
 OperaDriver 
 p  Safari driver 
 https://code.google.com/p/selenium/wiki/SafariDriver 
 60 
 2/4/15 Công cụ kiểm thử phần mềm 
 Thảo luận 
 61 
2/4/15 Công cụ kiểm thử phần mềm 

File đính kèm:

  • pdfbai_giang_cong_cu_kiem_thu_phan_mem_bai_8_kiem_thu_tu_dong.pdf