Nghiên cứu và ứng dụng công cụ selenium webdriver trong kiểm thử tự động ứng dụng web

69 1.3K 10
Nghiên cứu và ứng dụng công cụ selenium webdriver trong kiểm thử tự động ứng dụng web

Đ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

LỜI CẢM ƠN Em xin chân thành cảm ơn giúp đỡ nhiệt tình thầy giáo - Tiến sĩ Nguyễn Văn Núi, người cung cấp cho em kiến thức kiểm thử phần mềm định hướng cho em phương pháp, công cụ kiểm thử cung cấp tài liệu tham khảo, để em hồn thành tốt đề tài Em xin gửi lời cảm ơn đến thầy cô giáo, giảng viên Khoa Công Nghệ Thông Tin – Trường ĐH Công Nghệ Thông Tin Truyền Thông Thái Nguyên – Đại học Thái Nguyên thầy giảng dạy em suốt q trình em học tập trường Con xin gửi lời cảm ơn chân thành đến gia đình, bố mẹ bạn bè nguồn động viên to lớn giúp đỡ vượt qua khó khăn suốt trình học tập Mặc dù cố gắng hồn thiện đồ án với tất nỗ lực thân, khơng thể tránh khỏi thiếu sót Kính mong q thầy đóng góp ý kiến để em hồn thiện kiến thức thân! Là sinh viên công nghệ thông tin, em tự hào ngồi trường mà theo học, tự hào tất thầy mình! Em xin chân thành cảm ơn! Thái Nguyên, tháng năm 2017 Sinh viên Nguyễn Thị Ngoan LỜI CAM ĐOAN Để hoàn thành đồ án tốt nghiệp thời gian quy định đáp ứng yêu cầu đề ra, em cố gắng tìm hiểu, học hỏi, tích lũy kiến thức học Em có tham khảo số tài liệu nêu phần “Tài liệu tham khảo” khơng chép nội dung từ đồ án khác Em xin cam đoan lời khai đúng, thơng tin sai lệch em xin hồn toàn chịu trách nhiệm trước Hội đồng Sinh viên Nguyễn Thị Ngoan MỤC LỤC LỜI CẢM ƠN LỜI CAM ĐOAN MỤC LỤC DANH MỤC HÌNH ẢNH LỜI NÓI ĐẦU CHƯƠNG 1: TỔNG QUAN VỀ PHẦN MỀM 1.1 Phần mềm gì? 1.1.1 Khái niệm 1.1.2 Phân loại phần mềm 1.1.3 Vòng đời phát triển phần mềm (Software Development Life Cycle) 1.1.4 Các mơ hình phát triển phần mềm 10 1.2 Kiểm thử phần mềm 15 1.2.1 Khái niệm kiểm thử phần mềm 15 1.2.2 Các mức kiểm thử 15 1.2.3 Các phương pháp kiểm thử 16 1.2.4 Các loại kiểm thử 18 1.3 Quy trình kiểm thử phần mềm (STLC) 20 1.4 Kế hoạch kiểm thử (test plan) 21 1.5 Thiết lập môi trường kiểm thử 22 1.5.1 Khái niệm môi trường kiểm thử 22 1.5.2 Thiết lập môi trường kiểm thử 22 1.6 Testcase, kỹ thuật thiết kế testcase 23 1.6.1 Khái niệm testacase 23 1.6.2 Các kỹ thuật thiết kế testcase 23 1.7 Kiểm thử tự động 26 1.7.1 Kiểm thử tự động gì? Quy trình kiểm thử tự động 26 1.7.2 Ưu điểm nhược điểm kiểm thử tự động 27 1.7.3 Các trường hợp nên áp dụng kiểm thử tự động 27 CHƯƠNG 2: KIỂM THỬ ỨNG DỤNG WEB 29 2.1 Kiểm thử ứng dụng web 29 2.1.1 Khái quát 29 2.1.2 Đặc điểm chất lượng ứng dụng Web 29 2.2 Công việc kiểm thử ứng dụng web 30 2.2.1 Kiểm tra chức (hồi quy, tích hợp, kiểm tra khói) 31 2.2.2 Kiểm tra tương thích trình duyệt 32 2.2.3 Thử nghiệm tính 33 2.2.4 Kiểm tra bảo mật 33 2.2.5 Giám sát sản xuất 34 2.2.6 Kiểm tra khả sử dụng 34 2.3 Thiết kế testcase cho ứng dụng web 35 2.3.1 Quy trình thiết kế testcase cho ứng dụng web 35 2.3.2 Các Check list 35 2.4 Giới thiệu số công cụ hỗ trợ kiểm thử ứng dụng web 37 2.4.1 Công cụ test bảo mật web 37 2.4.2 Công cụ test hiệu 38 CHƯƠNG 3: SỬ DỤNG CÔNG CỤ HỖ TRỢ TEST SELENIUM WEBDRIVER ĐỂ TEST ỨNG DỤNG WEB 39 3.1 Giới thiệu chung Selenium, cách cài đặt sử dụng Selenium 39 3.1.1 Giới thiệu chung Selenium 39 3.1.2 Các đặc điểm Selenium 39 3.1.3 Các thành phần Selenium 40 3.2 Selenium IDE 43 3.2.1 Giới thiệu Selenium IDE 43 3.2.2 Hướng dẫn cài đặt Selenium IDE 43 3.2.3 Các câu lệnh Selenium IDE 45 3.2.4 Locator (Xác định đối tượng UI) 47 3.3 Selenium WebDriver 48 3.3.1 Giới thiệu Selenium WebDirver 48 3.3.2 Cài đặt Selenium WebDriver 49 3.3.3 Các câu lệnh sử dụng Selenium WebDriver 57 3.3.4 Bài toán thử nghiệm tiến hành test Selenium WebDriver trang https://accounts.google.com/ 61 3.3.5 Kịch kiểm thử tự động 63 3.3.6 Sự khác kịch kiểm thử thử công kịch kiểm thử tự động 65 KẾT LUẬN 67 TÀI LIỆU THAM KHẢO 68 DANH MỤC HÌNH ẢNH Hình 1.1: Vòng đời phát triển phần mềm Hình 1.2: Mơ hình thác nước 10 Hình 1.3: Mơ hình mẫu 11 Hình 1.4: Mơ hình phát triển ứng dụng nhanh RAD 12 Hình 1.5: Mơ hình tiến hóa 12 Hình 1.6: Mơ hình chữ V 13 Hình 1.7: Mơ hình Agile Scrum 14 Hình 1.8: Phương pháp kiểm thử hộp đen 16 Hình 1.9: Phương pháp kiểm thử hộp trắng 17 Hình 1.10: Phương pháp kiểm thử hộp xám 18 Hình 1.11: Quy trình kiểm thử phần mềm 20 Hình 1.12: Kỹ thuật phân vùng tương đương 24 Hình 1.13: Kỹ thuật phân tích giá trị biên 25 Hình 3.1: Cấu trúc Selenium 39 Hình 3.2: Minh họa kiến trúc WebDriver Selenium RC 42 Hình 3.3: Thao tác mở Selenium IDE công cụ 44 Hình 3.4: Giao diện Selenium IDE 44 Hình 3.5: Cấu trúc Selenium WebDriver 49 Hình 3.6: Download cài đặt JDK 50 Hình 3.7: Download Eclipse IDE 50 Hình 3.8: Download Selenium Java Client Driver 51 Hình 3.9: Tạo project 51 Hình 3.10: Đặt tên chọn tạo phương thức 52 Hình 3.11: Tên Class Eclipse 52 Hình 3.12: Thêm Selenium Java Client Driver (.jar) vào project 53 Hình 3.13: Đăng nhập thành công Firefox 63 Hình 3.14: Đăng nhập thành công Chrome 64 Hình 3.15: Giao diện báo cáo kết kiểm thử thành công 64 Hình 3.16: Giao diện báo cáo kết kiểm thử thất bại 65 Hình 3.17: Bảng tóm tắt trường hợp testcase chạy 65 LỜI NÓI ĐẦU Lí chọn đề tài Các ứng dụng Web phát triển trở thành tảng kết nối thơng tin thiết yếu doanh nghiệp, đóng vai trò định thương mại điện tử, trao đổi thơng tin Để đạt điều này, úng dụng web cần phải có hiệu cao, đáng tin cậy…Việc đưa ứng dụng web hoàn hảo cho người sử dụng ứng dụng trở thách vấn đề đảm bảo chất lượng Kiểm thử ứng dụng web vượt giới hạn kiểm thử hệ thống phần mềm truyền thống Như biết, ứng dụng web thường có nhiều nhóm người sử dụng với tảng khác (hệ điều hành, trình duyệt, ) điều dẫn tới việc kiểm thử ứng dụng web cần phải có phương pháp đặc biệt khác với phần mềm truyền thống Selenium WebDriver công cụ kiểm thử ứng dụng Web tiêu biểu Đây công cụ mã nguồn mở, mạnh mẽ hỗ trợ Web, nhiều platform trình duyệt phổ biến Công cụ phát triển chủ yếu JavaScript cơng nghệ trình duyệt HTML khung hình, hỗ trợ tất trình duyệt tảng Selenium WebDriver có lẽ cơng cụ tốt thị trường cho ứng dụng Web Điều đáng lưu ý kiểm thử phần mềm nói chung kiểm thử Web nói riêng chưa phổ biến Việt Nam Đây lí em chọn đề tài “Nghiên cứu ứng dụng công cụ Selenium WebDriver kiểm thử tự động ứng dụng Web” với mong muốn giúp nhiều người hiểu rõ kiểm thử ứng dụng Web cách sử dụng công cụ Selenium WebDriver vào công việc Mục tiêu nghiên cứu Đề tài giới thiệu tổng quan phần mềm, phương pháp kiểm thử công việc kiểm thử ứng dụng Web Đi sâu vào nghiên cứu tính cơng cụ Selenium WebDriver, thành phần công cụ Đưa tài liệu hướng dẫn cài đặt, sử dụng cách đơn giản hiệu cơng cụ Ứng dụng kiến thức kiểm thử phần mềm kiến thức Selenium WebDriver để viết kịch cho ứng dụng cụ thể CHƯƠNG 1: TỔNG QUAN VỀ PHẦN MỀM 1.1 Phần mềm gì? 1.1.1 Khái niệm Phần mềm ứng dụng chạy bên máy tính, (nhằm) cung cấp chức năng, đáp ứng yêu cầu, công việc người sử dụng thông qua phần cứng máy tính Một phần mềm thường gồm 03 phần: • Chương trình máy tính: mã nguồn, mã máy • Cấu trúc liệu: cấu trúc làm việc (bộ nhớ trong), cấu trúc lưu trữ (bộ nhớ ngồi) • Các tài liệu liên quan: tài liệu hướng dẫn sử dụng, tài liệu phát triển, tài liệu tham khảo kĩ thuật… 1.1.2 Phân loại phần mềm Dựa vào môi trường thực thi, phần mềm chia thành loại sau: • Phần mềm ứng dụng giao diện hệ điều hành: (Windows Form, Windows Service) • Phần mềm ứng dụng Web: (Website, Web Service, Web API….) • Phần mềm ứng dụng Mobile App: (Android App, iOS App, Winphone App…) • Phần mềm nhúng: (Ti vi, tủ lạnh, điều hòa….) 1.1.3 Vòng đời phát triển phần mềm (Software Development Life Cycle) Vòng đời phát triển phần mềm thời kì tính từ phần mềm sinh (tạo) chết (từ lúc hình thành đáp ứng yêu cầu, vận hành, bảo dưỡng loại bỏ không dùng nữa) Vòng đời phần mềm chia thành pha chính: Phân tích, Thiết kế, chiết tạo, kiểm thử, bảo trì Được biểu diễn theo mơ hình sau đây: Hình 1.1: Vòng đời phát triển phần mềm Pha xác định yêu cầu hệ thống: Mọi phần mềm xây dựng, phát triển tài liệu đặc tả (Software Requirement Specification) Dựa vào đặc tả người dùng, phận xây dựng phần mềm xác định yêu cầu hệ thống hệ thống phần mềm xây dựng Xác định phần mềm thuộc loại nào: Windows Form, Web Form hay Mobile App Pha xác định yêu cầu phần mềm: Sau xác định loại hệ thống xây dựng, kĩ sư phần mềm tiếp tục khảo sát yêu cầu sử dụng khách hàng qua xác định yêu cầu phần mềm mà khách hàng mong muốn xây dựng, pha xác định xem phần mềm có chức tương tác nào? Pha thiết kế bản: Hay gọi thiết kế sơ hệ thống, giai đoạn kiến trúc khung phần mềm thiết kế (sử dụng tảng nào, ngơn ngữ lập trình nào, áp dụng cơng nghệ gì…) Pha thiết kế chi tiết: Thiết kế chi tiết chức mà chương trình có Xác định nghiệp vụ cho chức xây dựng Pha lập trình: Đây pha thực hóa phần mềm dựa vào thiết kế pha Người lập trình cần phải sử dụng cơng nghệ, ngơn ngữ lập trình tảng xác định để tiến hành lập trình thực nghiệp vụ thiết kế Pha kiểm thử: Sauk hi phần mềm lập trình xong chuyển sang pha kiểm thử nhằm đảm bảo chương trình có đầy đủ chức năng, nghiệp vụ mà khách hàng yêu cầu tất hoạt động tốt theo mong muốn Pha vận hành bảo trì: Đây pha có thời gian dài vòng đời phần mềm Sau phần mềm thiết kế, lập trình kiểm thử xong bàn giao cho khách hàng mang vào hoạt động thực tế Pha kéo dài phần mềm khơng phù hợp kết thúc 1.1.4 Các mơ hình phát triển phần mềm  Mơ hình tuyến tính/ Thác nước (Water fall) Là mơ hình phát triển phần mềm cổ điển gồm có 05 pha: Phân tích, định nghĩa yêu cầu, Thiết kế, Cài đặt kiểm thử đơn vị, Tích hợp kiểm thử hệ thống, vận hành bảo trì mơ tả theo hình đây: Hình 1.2: Mơ hình thác nước Trong mơ hình thác nước pha phải thực cách tuần tự, kết thúc pha trước thực pha Do đó, nhược điểm mơ hình thác nước khó khăn việc thay đổi pha thực Mơ hình 10  Click “I accept the terms of the license agreement” nhấn Finish button  Nếu popup thông báo Security Warning, nhấn OK để tiếp tục  Hoàn thành, click Yes để khởi động lại Eclipse 55  Sau khởi động xong, cần kiểm tra TestNG cài đặt thành công: Window -> Preferences  TestNG plugin tích hợp thành công vào Eclipse 56 3.3.3 Các câu lệnh sử dụng Selenium WebDriver  Các câu lệnh trình duyệt Selenium webdrive có số câu lệnh thao tác với trình duyệt mở, đóng, lấy tiêu đề trang web : Câu lệnh [Get] Mục đích : Câu lệnh sử dụng để mở trang web trình duyệt Cú pháp: drive.get(URL); URL: Là url để tải trang, nên sử dụng url đầy đủ Ví dụ: driver.get("https://accounts.google.com"); Câu lệnh lấy tiêu đề [getTitle] Mục đích : Câu lệnh sử dụng để lấy tiêu đề trang web Cú pháp: driver.getTitle(); Câu lệnh lấy URL [getCurrentUrl] Mục đích: Câu lệnh dùng để lấy URL trang tải trình duyệt Cú pháp: driver.getCurrentUrl(); Câu lệnh lấy source trang web [getPageSource] Mục đích: Câu lệnh dùng để lấy source trang tải cuối Cú pháp: driver.getPageSource(); Câu lệnh đóng trang web [close] Mục đích: Câu lệnh dùng để đóng cửa sổ trình duyệt Cú pháp: driver.close(); Câu lệnh trình duyệt [quit] Mục đích: Câu lệnh dùng để khỏi trình duyệt tất cửa sổ mở Cú pháp: drive.quit(); Câu lệnh làm [refresh] Mục đích: Câu lệnh dùng để làm trình duyệt Cú pháp: driver.navigate().refresh(); 57  Các câu lệnh WebElement Để tương tác với trang web, cần phải xác định vị trí phần tử trang web , Webdrive cung cấp phương thức “Find Element” and “Find Elements” để xác định vị trí phần tử trang web Phương thức “Find Element” “Find Elements” Sự khác phương thức “Find Element” “Find Elements” trả đối tượng WebElement, không ném ngoại lệ trả danh sách WebElement, trả danh sách rỗng không cố phần tử DOM phù hợp với truy vấn(query) Phương thức “Find” lấy vị trí đối tượng truy vấn gọi phương thức “By” Tìm phần từ ID (By ID) Mục đích : Tìm vị trí phần tử ID, tìm id phù hợp trả vị trí phần tử, khơng có phần từ phù hợp với id xuất NoSuchElementException Cú pháp : driver.findElement(By.id("")); Ví dụ: WebElement element=driver.findElement(By.id("Email")); Tìm phần tử Name (By Name) Mục đích : Tìm vị trí phần tử name, tìm giá trị thuộc tính name phù hợp trả vị trí phần tử, khơng có phần từ phù hợp với thuộc tính name xuất NoSuchElementException Cú pháp : driver.findElement(By.name("")); Ví dụ: WebElement element=driver.findElement(By.name("hien")); Tìm phần tử Class Name (className) Mục đích : Tìm phần tử dựa giá trị thuộc tính “class” Cú pháp : driver.findElement(By.className("")); Ví dụ: _WebElement elemen_t=driver.findElement(By.className("test")); Tìm phần tử Tag Name (tagName) Mục đích : Tìm phần tử dựa vào tag names 58 Cú pháp : driver.findElement(By.tagName("")); Ví dụ: TagSelected WebElement element=driver.findElement(By.tagName("dt")); Tìm phần tử Link Text Mục đích : Bạn tìm phần tử thẻ a tên link , Cú pháp : driver.findElement(By.tagName("")); Ví dụ: NameoftheLink WebElement element=driver.findElement(By.linkText("Name of the Link")); Tìm phần tử phần Link Text Mục đích : Bạn tìm phần tử thẻ a phần tên link , Cú pháp : driver.findElement(By.partialLinkText("")); Ví dụ: NameoftheLink WebElement element=driver.findElement(By.partialLinkText("Name of the Link"));  Các câu lệnh chuyển hướng trình duyệt Câu lệnh To Mục đích: Lệnh dùng để chuyển hướng đến trang web URL yêu cầu Cú pháp: driver.navigate().to(URL) Trong đó: URL: url để tải trang, nên sử dụng url đầy đủ Ví dụ: driver.navigate().to("http://www.gooogle.com"); Câu lệnh Forward Mục đích: Lệnh dùng để đến trang , giống với nút forward trình duyệt Cú pháp: driver.navigate().forward() Câu lệnh Back Mục đích: Lệnh dùng để quay trang trước , giống với nút back trình duyệt Cú pháp: driver.navigate().back() Câu lệnh Refresh Mục đích: Lệnh dùng để làm trang Cú pháp: driver.navigate().refresh() 59  Các câu lệnh Wait Câu lệnh ImplicitlyWait Mục đích: Đợi thời gian định trước ném ngoại lệ khơng thể tìm thấy phần tử trang web Lưu ý chờ đời ngầm thực suốt thời gian trình duyệt mở Điều có nghĩa tìm kiếm phần tử trang thời gian chờ đợi ngầm cho việc thiết lập câu lệnh Cú pháp: drive.manage().timeouts().implicitlyWait(10, TimeUnit.SECONDS); Câu lệnh FluentWait Mục đích: Xác định số lượng tối đa thời gian để chờ đợi điều kiện giống tần suất để kiểm tra điều kiện xuất Hơn nữa, người dùng cấu hình để loại bỏ việc chờ đợi cách ném ngoại lệ chờ đợi NoSuchElementExceptions Cú pháp: Wait wait=newFluentWait(driver) withTimeout(30, SECONDS) pollingEvery(5, SECONDS) ignoring(NoSuchElementException.class); Câu lệnh ExpectedConditions Mục đích: Một điều kiện hợp lý mong đợi để giá trị cuối null sai(false) Cú pháp: WebDriverWait wait = new WebDriverWait(driver, 10); WebElement element =wait.until(ExpectedConditions.elementToBeClickable(By.id(>someid>))); Câu lệnh PageLoadTimeout Mục đích: Thiết lập giá trị thời gian để chờ đợi cho trang web hoàn thành tải(loadding) trước ném lỗi Cú pháp: driver.manage().timeouts().pageLoadTimeout(100, SECONDS); 60 Câu lệnh SetScriptTimeout Mục đích: Thiết lập giá trị thời gian chờ đợi kịch bản(script) không đồng để kết thúc việc thực trước ném lỗi Nếu thời gian chờ tiêu cực, sau kịch chạy vơ hạn Cú pháp: driver.manage().timeouts().setScriptTimeout(100,SECONDS); Câu lệnh Sleep Mục đích: Câu lệnh sử dụng ln ln buộc trình duyệt chờ đợi thời gian cụ thể Nếu bạn sử dụng câu lệnh bạn xác định giá trị thời gian chờ đợi cao nhiều bạn làm trường hợp kiểm thử Cú pháp: thread.sleep(1000); 3.3.4 Bài toán thử nghiệm tiến hành test Selenium WebDriver trang https://accounts.google.com/ 3.3.4.1 Bài tốn thử nghiệm • Vấn đề đặt kiểm thử hai chức cho ứng dụng web trang https://accounts.google.com/ chức đăng nhập chức soạn thảo gửi email • Ứng dụng kiểm thử trình duyệt FireFox Google Chrome • Chức đăng nhập: Chức chức đăng nhập túy vào ứng dụng web thông thường giống ứng dụng khác yahoo, google hay forum Các yếu tố cần kiểm tra: - Nếu đăng nhập tên mật tải đến trang chủ ứng dụng tiến hành gửi email - Nếu đăng nhập với tên mật để trống đưa thơng báo “Hãy nhập email số điện thoại” - Nếu nhập thiếu mật đưa thơng báo “Vui lòng nhập mật bạn” - Nếu đăng nhập với tên mật sai đưa thơng báo “Rất tiếc! Google khơng nhận dạng email đó” “Mật sai! Hãy thử lại” • Chức gửi email: Kiểm tra gửi email tới địa email hợp lệ khác thành công 61 3.3.4.2 Xây dựng testcase cho toán MA_TC TC01 TC02 ĐIỀU KIỆN TEST KẾT QUẢ MONG ĐỢI Đăng nhập với Email Pass trống Không cho phép đăng nhập Mở trang chủ: thành công thông https://accounts.google.com báo “Hãy nhập email Click nút “Next” số điện thoại” Đăng nhập với Pass trống Không cho phép đăng nhập Mở trang chủ: thành cơng thơng https://accounts.google.com báo “Vui lòng nhập mật Nhập email: bạn” ngoancnttk11@gmail.com Click nút “Next” Click nút “SignIn” TC03 TC04 Đăng nhập với Email sai Không cho phép đăng nhập Mở trang chủ: thành công thị https://accounts.google.com thông báo “Rất tiếc, Google Nhập email: ngoan@gmail.com không nhận dạng Click nút “Next” Email đó” Đăng nhập với Pass sai Không cho phép đăng nhập Mở trang chủ: thành công hiển thị https://accounts.google.com thông báo “Mật sai Nhập email: ngoan@gmail.com Hãy thử lại” Nhập pass: hongngoan Click nút “SignIn” TC05 Đăng nhập với Email Pass hợp lệ Mở trang chủ: https://accounts.google.com Nhập email: ngoan@gmail.com Nhập pass: ngoanhong Click nút “SignIn” Click vào biểu tượng gửi mail 62 Thư gửi thành công OK/NG trang google account Click nút “Soạn” Nhập tới: ngoan21051994@gmail.com Nhập chủ đề: “SeleniumWebDriver” Nhập nội dung: “DemoSeleniumWebDriver” 10 Click nút “Gửi” 3.3.5 Kịch kiểm thử tự động Do hạn chế kinh nghiệm phức tạp tìm hiểu tool, đồ án em trình bày demo số testcase chức đăng nhập gửi email công cụ Selenium WebDriver thực báo cáo dựa framework kiểm thử TestNG  Đăng nhập FireFox: Hình 3.13: Đăng nhập thành công Firefox 63  Đăng nhập Google Chrome Hình 3.14: Đăng nhập thành cơng Chrome  Báo cáo kết kiểm thử tất trường hợp testcase Hình 3.15: Giao diện báo cáo kết kiểm thử thành công Tổng số trường hợp kiểm thử: Số trường hợp kiểm thử thành công: Số trường hợp kiểm thử thất bại: 64  Báo cáo kết kiểm thử trường hợp thất bại Hình 3.16: Giao diện báo cáo kết kiểm thử thất bại  Bảng tóm tắt trường hợp testcase chạy Hình 3.17: Bảng tóm tắt trường hợp testcase chạy 3.3.6 Sự khác kịch kiểm thử thử công kịch kiểm thử tự động Với kiểm thử thủ công, kịch kiểm thử chức thông thường chia thành ba phần chính: • Phần giao diện • Phần chức • Phần an tồn thơng tin Với kiểm thử tự động, có hai phần mà quan tâm testcase liệu kiểm thử Trong đó: 65 • Testcase lớp hàm lớp ghi lại chuỗi kiện mà ta thao tác với ứng dụng cần kiểm thử Khác với khái niệm testcase thực kiểm thử thủ công giá trị đầu vào khác testcase • Dữ liệu kiểm thử liệu nhập vào để kiểm thử 66 KẾT LUẬN Kiểm thử phần mềm vấn đề quan trọng với tổ chức phát triển phần mềm Trong thời gian thực đồ án em thời gian kinh nghiệm hạn chế nên có phần đề tài chưa đào sâu nghiên cứu Sau thời gian thực đề tài hướng dẫn Tiến Sĩ Nguyễn Văn Núi, đề tài em thực tốt mục tiêu đề đạt kết sau: Kết đạt được: • Trình bày đầy đủ xác vấn đề liên quan đến phần mềm, kiểm thử phần mềm, thiết kế testcase kiểm thử tự động • Giới thiệu cơng cụ kiểm thử phần mềm Selenium • Giới thiệu Selenium IDE Selenium WebDriver, thao tác để sử dụng cơng cụ • Áp dụng kiến thức nghiên cứu thực kiểm thử chức đăng nhập gửi email ứng dụng web: https://accounts.google.com Hạn chế: Mặc dù em cố gắng thời gian thực đề tài với kinh nghiệm hạn chế nên đồ án khơng tránh khỏi thiếu sót:  Chỉ vào nghiên cứu cơng cụ Selenium Còn công cụ Selenium Core Selenium Grid giới thiệu sơ qua  Chưa nghiên cứu phần lập trình nâng cao với Selenium  Chỉ áp dụng kiểm thử với số trường hợp đăng nhập gửi email trang https://accounts.google.com Hướng phát triển đề tài: Trong thời gian tới em tiếp tục nghiên cứu sâu vấn đề kiểm thử phần mềm, đặc biệt công cụ kiểm thử ứng dụng Selenium, để vận dụng vào kiểm thử ứng dụng lớn thực tế công việc tương lai nhằm góp phần nhỏ bé vào cơng chun nghiệp hóa kiểm thử phần mềm Việt Nam Thái Nguyên, tháng 05, năm 2017 Sinh viên thực Nguyễn Thị Ngoan 67 TÀI LIỆU THAM KHẢO [1] http://www.testingvn.com/ [2] http://testervn.com/ [3] http://www.seleniumhq.org/ 68 NHẬN XÉT CỦA GIÁO VIÊN HƯỚNG DẪN Thái Nguyên, tháng năm 2017 Giáo viên hướng dẫn 69 ... ứng dụng công cụ Selenium WebDriver kiểm thử tự động ứng dụng Web với mong muốn giúp nhiều người hiểu rõ kiểm thử ứng dụng Web cách sử dụng công cụ Selenium WebDriver vào công việc Mục tiêu nghiên. .. tự động 1.7.1 Kiểm thử tự động gì? Quy trình kiểm thử tự động Kiểm thử tự động trình xử lý cách tự động bước thực test case Kiểm thử tự động công cụ nhằm rút ngắn thời gian kiểm thử Qui trình kiểm. .. 1.7.1 Kiểm thử tự động gì? Quy trình kiểm thử tự động 26 1.7.2 Ưu điểm nhược điểm kiểm thử tự động 27 1.7.3 Các trường hợp nên áp dụng kiểm thử tự động 27 CHƯƠNG 2: KIỂM THỬ ỨNG DỤNG

Ngày đăng: 02/11/2017, 14:42

Từ khóa liên quan

Tài liệu cùng người dùng

Tài liệu liên quan