Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 67 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
67
Dung lượng
3,51 MB
Nội dung
LỜI CẢM ƠN Sau thời gian tìm hiểu đề tài “Kiểm thử ứng dụng Web với công cụ Selenium”, em hoàn thành tiến độ dự kiến Để đạt kết này, em nỗ lực thực đồng thời nhận nhiều giúp đỡ, quan tâm, ủng hộ thầy cô bạn bè gia đình Em xin chân thành cảm ơn giáo viên hướng dẫn: Th.S Nguyễn Thị Dung – Bộ môn Công nghệ phần mềm – Trường Đại học Công nghệ thông tin truyền thông – Đại học Thái Nguyên tận tình hướng dẫn sát em trình làm đồ án tốt nghiệp Trong thời gian làm việc với cô, em không ngừng tiếp thu thêm nhiều kiến thức bổ ích mà học tập tinh thần làm việc, thái độ nghiên cứu khoa học nghiêm túc, hiệu quả, điều cần thiết cho em trình học tập công việc sau Em xin chân thành cảm ơn thầy cô ban lãnh đạo trường Đại học Công nghệ thông tin truyền thông – Đại học Thái Nguyên nhiệt tình giảng dạy truyền đạt kiến thức quý báu bổ ích suốt trình em học tập trường Và cuối xin gửi lời cảm ơn chân thành tới gia đình, bạn bè động viên, đóng góp ý kiến giúp đỡ trình học tâp, thời gian nghiên cứu hoàn thành đồ án tốt nghiệp Thái Nguyên, tháng 06 năm 2016 Sinh viên thực Hoàng Thị Hiền LỜI CAM ĐOAN Em xin cam đoan kết đề tài “Kiểm thử ứng dụng Web với công cụ Selenium” sản phẩm nghiên cứu riêng cá nhân em, không chép lại người khác Trong toàn nội dung đồ án điều trình bày cá nhân em tổng hợp từ nhiều nguồn tham khảo mà em chắt lọc để lấy thông tin cần thiết bổ ích phục vụ cho đồ án Tất tài liệu tham khảo có xuất xứ rõ ràng trích dẫn hợp pháp Mọi chép không hợp lệ, vi phạm quy chế đào tạo, hay gian trá, em xin chịu hoàn toàn trách nhiệm Tác giả đề tài Hoàng Thị Hiền MỤC LỤC LỜI CẢM ƠN .1 LỜI CAM ĐOAN MỤC LỤC DANH MỤC CÁC HÌNH VẼ .5 LỜI MỞ ĐẦU .7 CHƯƠNG CƠ SỞ LÍ THUYẾT 1.1 Kiểm thử phần mềm 1.1.1 Khái niệm 1.1.2 Các phương pháp kiểm thử (Testing Methods) 1.1.3 Các mức độ kiểm thử (Testing level) 10 1.2 Kiểm thử ứng dụng Web 11 1.2.1 Khái quát 11 1.2.2 Tại phải kiểm thử ứng dụng Web? 12 1.2.3 Đặc trưng kiểm thử ứng dụng Web 13 1.2.4 Công việc kiểm thử Theme WordPress 13 1.3 Giới thiệu Selenium .19 1.3.1 Tổng quan 19 1.3.2 Lịch sử phát triển 20 1.3.3 Selenium IDE 22 1.3.4 Selenium RC/ Web driver 30 1.3.5 Cài đặt Selenium Remote Control .31 1.3.6 Báo cáo kết kiểm thử 32 CHƯƠNG PHÂN TÍCH, THIẾT KẾ BÀI TOÁN 35 2.1 Bài toán thử nghiệm 35 2.1.1 Giới thiệu toán 35 2.1.2 Lựa chọn công cụ .35 2.1.3 Phương pháp test 39 2.1.4 Sự khác kịch kiểm thử tự động kịch kiểm thử thủ công 39 2.2 Xây dựng TestCase 40 2.2.1 Kịch kiểm thử thủ công 40 2.2.2 Kịch kiểm thử kiểm thử tự động .48 CHƯƠNG CÀI ĐẶT DEMO 49 3.1 Thực thi testcase với Selenium IDE 49 3.1.1 Chức đăng nhập 49 3.1.2 Chức Contact .53 3.1.3 Chức Subcribe 59 3.1.4 Chức Comment .59 3.2 Thực thi testcase với Selenium WebDiver .60 3.3 Công cụ quản lí bug báo cáo kết kiểm thử 61 KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN 64 TÀI LIỆU THAM KHẢO 66 NHẬN XÉT CỦA GIÁO VIÊN HƯỚNG DẪN 67 DANH MỤC CÁC HÌNH VẼ Hình 1.1Những kiểm thử cần có cho ứng dụng web 12 Hình 1.2 Test Plan dự án .14 Hình 1.3 Kiểm thử Front- End Back-End 15 Hình 1.4 Kiểm thử Front -End 15 Hình 1.5 Check speed 16 Hình 1.6 Kiểm thử tùy chọn Theme Option 18 Hình 1.7 Kiểm thử tùy chọn Page Option 18 Hình 1.8 Cấu trúc Selenium .19 Hình 1.9 Kiến trúc Selenium IDE 22 Hình 1.10 Trang download tiện ích Selenium IDE 23 Hình 1.11 Quá trình cài đặt Selenium IDE .23 Hình 1.12 Thao tác mở IDE menu Tool 24 Hình 1.13 Giao diện Selenium IDE .24 Hình 1.14 Các thành phần kí hiệu Selenium IDE 25 Hình 1.15 Lưu trữ testcase dạng HTML Selenium 26 Hình 1.16 Sơ đồ Selenium RC/ WebDriver 30 Hình 2.1 Form Sign Up Theme Pizzeria 40 Hình 2.2 Form Contact Theme Pizzeria .42 Hình 2.3 Form Delivery Theme Pizzeria .43 Hình 2.4 Form Comment Theme Pizzeria 44 Hình 2.5 Form Review Theme Pizzeria .46 Hình 2.6 Form Subcribe Theme Pizzeria 47 Hình 3.1 Trường hợp Sign in với trường Username password để trống 49 Hình 3.2 Sign in với trường password để trống 50 Hình 3.3 Sign in với trường Username để trống .50 Hình 3.4 Sign in thành công 51 Hình 3.5 Sign in không thành công với username password sai 51 Hình 3.6 Testsuite cho chức đăng nhập .52 Hình 3.7 Thao tác dịch Selenium IDE sang code Webdriver 52 Hình 3.8 Testcase Selenium WebDriver dịch sang TestNG từ Selenium WebDriver .53 Hình 3.9 Contact với Subject and Message trống .53 Hình 310 Contact không thành công với tất trường để trống 54 Hình 3.11 Contact không thành công để trống Name 54 Hình 3.112 Contact không thành công để trống Email 55 Hình 3.13 Contact thành công 55 Hình 3.14 Contact không thành công Email không hợp lệ 56 Hình 3.15 Contact không thành công để trống Subject 56 Hình 3.16 Contact không thành công để trống Message .57 Hình 3.17 Contact không thành công nhập Name để trống trường 57 Hình 3.18 Thao tác dịch Selenium IDE sang code Webdriver 58 Hình 3.19 Testcase Selenium WebDriver dịch sang TestNG từ Selenium WebDriver .58 Hình 20 Testsuite cho chức Subscribe 59 Hình 21 Testcase cho chức Comment 59 Hình 3.22 Các lỗi Theme Pizzeria .61 Hình 3.23 Quá trình thực thi testcase 62 Hình 3.24 Báo cáo thực thi test cho chức Contact .62 LỜI MỞ ĐẦU Bạn dùng đồ vật hay thiết bị đó, bạn có đảm bảo đủ chất lượng hay thực sản phẩm tốt hay chưa? Khi bạn xem xét nâng cấp cho phần mềm hay thiết bị đó, bạn có chắn nhà phát triển kiểm tra lại lỗi hay không hay bạn phải nghe ngóng người dùng trước sau nâng cấp có lỗi xảy không? Đó thực tế chứng minh cho việc kiểm thử thực quan trọng sống Với việc phát triển máy tính mạng Internet, việc phát triển ứng dụng mã nguồn mở xem trọng lĩnh vực thương mại điện tử Là mã nguồn mở bật góp phần không nhỏ phát triển thương mại điện tử mã nguồn mở sử dụng rộng rãi Vậy việc kiểm thử tảng WordPress thực sao, có khác biệt kiểm thử sản phẩm tảng web sản phầm phần mềm tảng khác? Việc đưa ứng dụng Web hoàn hảo cho người sử dụng ứng dụng trở thách đảm bảo chất lượng Kiểm thử ứng dụng Web vượt qua giới hạn việc kiểm thử hệ thống phần mềm truyền thống Vì ứng dụng Web thường có nhiều có cộng đồng khách hàng sử dụng với tảng khác hệ điều hành, trình duyệt, thiết bị… Từ việc kiểm thử ứng dụng Web cần có phương pháp đặc biệt khác với phần mềm truyền thống Ngày nay, tự động hóa nghiên cứu ứng dụng rộng rãi nhiều lĩnh vực công nghệ phần mềm nói chung kiểm thử phần mềm nói riêng ngoại lệ Cùng với việc kiểm thử thủ công việc kết hợp với công cụ kiểm thử tự động mang lại hiệu đáng kinh ngạc hoàn hảo Sự đời công cụ kiểm thử tự động Quick Test Professinal NUnit, JUnit, Load Runner(thường dùng kiểm thử hiệu năng) tất yếu Selenium công cụ kiểm thử ứng dụng Web với nhiều ưu điểm bật Đây công cụ mã nguồn mở, mạnh mẽ hỗ trợ tảng Web, nhiều platform trình duyệt phổ biến Công cụ phát triển chủ yếu Java Script công nghệ trình duyệt DHTML khung hình với việc hỗ trọ trình duyệt tất tảng Selenium trở thành công cụ kiểm thử phần mềm tự động tốt thị trường cho ứng dụng Web Với việc thực đề tài:” Kiểm thử ứng dụng Web với Selenium” giúp em làm sang tỏ lý đưa đặc biệt việc kiểm thử thực môi trường thực tế với dự án thực tế thị trường, thấy rõ vấn đề tồn lí thuyết thực tế quan sát Đồ án tổ chức thành chương với nội dung chương : - Chương 1: Tìm hiểm chung kiểm thử phần mềm, kiểm thử ứng dụng web, quy trình kiểm thử phần mềm phương pháp để tiến hành kiểm thử - Chương 2: Đưa toán, phân tích, lựa chọn công cụ phương pháp thực test - Chương 3: Cài đặt demo chương trình trình bày báo cáo lỗi Thái Nguyên, tháng năm 2016 Sinh viên Hoàng Thị Hiền CHƯƠNG CƠ SỞ LÍ THUYẾT 1.1 Kiểm thử phần mềm 1.1.1 Khái niệm Theo IEEE: Kiểm thử tiến trình vận hành hệ thống thành phần điều kiện xác định, quan sát ghi nhận kết đưa đánh giá hệ thống thành phần Theo Myers (the art of software testing): Kiểm thử tiến trình thực thi chương trình với mục đích tìm thấy lỗi Mục tiêu kiểm thử phần mềm Mục tiêu trực tiếp: - Phát xác định nhiều lỗi tốt phần mềm kiểm thử - Tiến hành sửa lỗi phần mềm kiểm thử kiểm thử lại đạt mức độ chất lượng phần mềm chấp nhận - Thực thi trường hợp kiểm thử cách hiệu giới hạn ngân sách lịch trình cho phép Mục tiêu gián tiếp: Để biên dịch tài liệu lỗi phần mềm thường gặp nhằm mục đích ngăn ngừa sửa chữa lỗi Kiểm thử tự động: trình kiểm tra hệ thống với liệu đầu vào đầu xác định trước tự động 1.1.2 Các phương pháp kiểm thử (Testing Methods) Kĩ thuật kiểm thử hộp đen (Black Box) Với kĩ thuật giúp hiểu rõ chức cụ thể hàm hay module thông qua đặc tả mà không cần biết bên chương trình viết Kiểm thử gọi kiểm thử mức giao diện.Ta cần nhập liệu vào nhận kết mong muốn không cần biết làm cách lại làm Với kỹ thuật kiểm thử phát lỗi chức năng, sai sót giao diện module, tính hiệu quả, phát lỗi khởi tạo, lỗi kết thúc Đối với phương pháp kiểm thử hộp đen, để thiết kế testcase dựa vào phương pháp phân hoạch miền giá trị, phân tích giá trị biên, kiểm thử cặp, kiểm thử fuzz, kiểm thử dựa mô hình, ma trận dấu vết, kiểm thử thăm dò, kiểm thử dựa đặc tả Kỹ thuật kiểm thử hộp đen dựa vào đặc tả chương trình, xây dựng liệu thử trước mã hóa/lập trình, thường phát lỗi đặc tả yêu cầu, thiết kế; Dễ dàng thực hiện, chi phí thấp Kiểm thử hộp trắng Ngược lại với kỹ thuật kiểm thử hộp đen kỹ thuật kiểm thử hộp trắngWhite-Box (clear-box) kỹ sư kiểm thử phải kiểm tra mã nguồn chương trình để kiểm thử hay tìm đầu mối để giúp cho công việc kiểm thử Từ giúp hiểu rõ cách hoạt động hàm/module hay sản phẩm Điều mà cần làm thiết kế tất đường logic chương trình sau cài đặt tất trường hợp kiểm định có Tuy nhiên, kỹ thuật có số rủi ro định tester can thiệp sâu vào mã nguồn nên thường đưa ý kiến chủ quan đồng thời việc kiểm thử thấu đáo tất trường hợp tốn nhiều chi phí Theo phương pháp ta chia testcase dựa vào cấu trúc đơn vị cần kiểm tra - Kiểm tra giao tiếp đơn vị để đảm bảo dòng thông tin vào đơn vị (đúng giá trị, khớp kiểm…) - Kiểm tra liệu cục để đảm bảo liệu lưu trữ đơn vị toàn vẹn suốt trình giải thuật thực - Kiểm tra điều kiện biên câu lệnh if, vòng lặp để đảm bảo đơn vị chạy biên - Kiểm tra để đảm bảo đường thực phải qua lần Con đường thực đơn vị chương trình dãy có thứ tự câu lệnh bên đơn vị kích hoạt thực 1.1.3 Các mức độ kiểm thử (Testing level) Kiểm thử đơn vị (Unit test): - KN: Là test với đơn vị phần mềm nhỏ hàm, module gọi component test, unit test Developer thực test code xem code có thực thiết kế vật lý hay không? 10 Ta có đoạn mã nguồn địch từ HTML sang TestNG giống hình Hình 3.8 Testcase Selenium WebDriver dịch sang TestNG từ Selenium WebDriver 3.1.2 Chức Contact Sử dụng Selenium IDE ghi lại trường hợp kiểm thử Hình 3.9 Contact với Subject and Message trống 53 Hình 310 Contact không thành công với tất trường để trống Hình 3.11 Contact không thành công để trống Name 54 Hình 3.112 Contact không thành công để trống Email Hình 3.13 Contact thành công 55 Hình 3.14 Contact không thành công Email không hợp lệ Hình 3.15 Contact không thành công để trống Subject 56 Hình 3.16 Contact không thành công để trống Message Hình 3.17 Contact không thành công nhập Name để trống trường Với trường hợp kiểm thử trên, ta dễ dàng chuyển đổi từ Selenium IDE sang Selenium RC/ WebDriver theo TestNG 57 Hình 3.18 Thao tác dịch Selenium IDE sang code Webdriver Ta có đoạn mã nguồn địch từ HTML sang TestNG giống hình Hình 3.19 Testcase Selenium WebDriver dịch sang TestNG từ Selenium WebDriver 58 3.1.3 Chức Subcribe Ta chạy tất trường hợp chức đăng nhập với file lưu testsubscribe click vào nút “Play entire test suite” Ta nhận kết hình: Hình 20 Testsuite cho chức Subscribe 3.1.4 Chức Comment Hình 21 Testcase cho chức Comment Ban đầu em sử dụng Selenium IDE trình duyệt Firefox cho trình test trang web chạy phần mềm record lại trường hợp với giá trị cho chức Sau record lại lưu duwois dạng html 59 Có cách để tạo testcase chạy phần mềm IDE với trường hợp chia thiết kế testcase sử dụng thông tin testcase trước thực thay đổi thông tin thành công thành thông tin sai giữ nguyên phần lại nhằm tạo testcase để kiểm tra phản hồi phần mềm Lưu testcase tạo, nạp vào Selenium IDE thực thi test 3.2 Thực thi testcase với Selenium WebDiver Với tất testcase đưọc tạo từ Selenium IDE, ta dễ dàng convert chúng sang Selenium WebDriver cách em nêu Hoặc có cách khác để ta thực thi testcase WebDriver tự viết code cho trình ngôn ngữ khác Ở em thực thi test Selenium WebDriver với ngôn ngữ Java Để thực thi testcase, ta cần thực theo bước Bước 1: Khởi động Eclipse – Tạo Project thiết lập thư viện đầy đủ Bước 2: Với trường hợp ta có thêm tập tin vào Project Eclipse Bước 3: Xây dựng code cho testcase Bước 4: Chạy testcase để xem kết cho trường hợp kiểm thử ta chọn Project, click chuột phải chọn Run as… để có kết chạy cho tất testcase thuộc Project chọn Bước 5: Xem kết 60 3.3 Công cụ quản lí bug báo cáo kết kiểm thử Mục đích kiểm thử phần mềm tìm bug Vì lỗi kiểm thử phần quan trọng kiểm thử phần mềm Đặc biệt việc quản lí lỗi phần coi trọng giúp kiểm thử viên dễ dàng kiểm soát lỗi test, lỗi lập trình viên config đồng thời kiểm soát thời gian thực kiểm thử dễ dàng xem xét lưu vết tạo Xác định vai trò việc kiểm soát lỗi, em sử dụng công cụ taiga.io để kiểm soát lỗi suốt trình kiểm thử Theme phương pháp thủ công Bug dự án lưu trang https://tree.taiga.io/project/hoanghien101-wp-pizzeria/backlog với giao diện : Hình 3.22 Các lỗi Theme Pizzeria Việc mô tả bug phải thực chi tiết, rõ ràng dễ hiểu tốt, nên có hình ảnh kèm với bug Với kiểm thử tự động với công cụ Selenium IDE Selenium WebDriver, em tích hợp framework TestNG để theo dõi trình thực thi xuất báo cáo bug dạng file HTML cho biết 61 Hình 3.23 Quá trình thực thi testcase Hình 3.24 Báo cáo thực thi test cho chức Contact Sau thực thi kiểm thử với kịch kiểm thử lập phía trên, tác giả xin trình bày số nhận định kết thử nghiệm với chức tiêu biểu trang web: http://demo.cmssuperheroes.com/themeforest/wp-pizzeria chức đăng nhập chức contact Chức đăng nhập - 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ử không thành công: 62 Nhận xét: Xét tổng thể giao diện: - Giao diện dễ hiểu, dễ sử dụng, chức phím tab, shift+tab, enter hoạt động tốt - Khi phóng to, thu nhỏ không bị vỡ giao diện - Tuy nhiên có lỗi câu thông báo thực chức trường hợp: Đăng nhập không nhập tên đăng nhập mật khẩu: Chương trình không đưa câu cảnh báo mà reset hai trường tên đăng nhập mật đăng nhập null gây khó khăn cho người sử dụng Trường hợp kiểm thử đề xuất đưa câu cảnh báo:”Bạn chưa nhập Tên đăng nhập password” - Đăng nhập không nhập mật đăng nhập: Chương trình không đưa câu cảnh báo mà resetVề chức năng: Chức thực đủ trường hợp đăng nhập Về an toàn thông tin: Chức đảm bảo an toàn thông tin Chức Contact - 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ử không thành công: Nhận xét: Xét tổng thể giao diện: - Giao diện dễ hiểu, dễ sử dụng, chức phím tab, shift+tab, enter hoạt động tốt - Giao diện đáp ứng thiết kế - Khi phóng to, thu nhỏ không bị vỡ giao diện - Tuy nhiên có lỗi câu thông báo thực chức trường hợp: Đăng nhập không nhập tên đăng nhập mật khẩu: Chương trình không đưa câu cảnh báo mà reset hai trường tên đăng nhập mật đăng nhập null gây khó khăn cho người sử dụng Trường hợp kiểm thử đề xuất đưa câu cảnh báo:”Bạn chưa nhập Tên đăng nhập password” - Đăng nhập không nhập mật đăng nhập: Chương trình không đưa câu cảnh báo mà resetVề chức năng: Chức thực đủ trường hợp đăng nhập Về an toàn thông tin: Chức đảm bảo an toàn thông tin 63 KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN Kiểm thử phần mềm, hướng không mẻ giới, lại hướng Việt Nam Nó hứa hẹn tương lai cho học sinh, sinh viên ngành CNTT Đặc biệt thời điểm tại, mà nhu cầu phần mềm ngày nhiều phức tạp – yêu cầu tối ưu kiểm thử trước đưa đến tay người sử dụng đòi hỏi cấp thiết Việc tự động hóa phần quy trình kiểm thử giúp hỗ trợ tester nâng cao nâng suất chất lượng dự án Tuy nhiên, chi phí cho phần mềm kiểm thử thương mại thường cao, làm cho dự án khả sinh lời Vì chọn lựa công cụ kiểm tra tự động mã nguồn mở lựa chọn sáng suốt.Một số lựa chọn Selenium Qua tìm hiểu xây dựng đề tài này, em thấy đạt ưu điểm số tồn Những điểm đạt Nắm tổng quan kiểm thử phần mềm: Các khái niệm bản, phương pháp kiểm thử phần mềm, vấn đề liên quan… Tìm hiểu nắm phương pháp chiến lược thiết kế test – case kiểm thử phần mềm tự động, áp dụng phương pháp tìm hiểu để test cho theme Wordpress thực tế công ty phát triển phần mềm phát triển dịch vụ công cụ Selenium Bổ sung rèn luyện thêm kỹ sử dụng phần mềm Word Powerpoint, nâng cao khả đọc hiểu tài liệu Tiếng Anh Tiếp xúc với môi trường làm việc thực tế giúp thân em tự trao dồi thêm nhiều kiến thức lẫn kĩ để sau làm việc chuyên nghiệp đỡ bỡ ngỡ sau tốt nghiệp đại học Trình bày số hiểu biết Selenium số kết ứng dụng Selenium thực tế Đặc biệt khác kiểm thử thủ công kiểm thử tự động 64 Những điểm chưa đạt Sự áp dụng kiến thức tìm hiểu dừng lại việc test theme WordPress Selenium IDE Selenium WebDriver Trong thời gian tìm hiểu nghiên cứu vấn đề, tìm tòi cố gắng làm rõ vấn đề cài đặt theme kiểm thử mốt số lỗi song suốt trình gặp nhiều khó khăn thiếu sót, số lỗi chưa phát Khó khăn công cụ mới, áp lực thời gian hoàn thành Từ điểm đạt chưa đạt trên, em hi vọng nhận góp ý chân thành thầy cô bạn để báo cáo hoàn thiện Hướng phát triển + Bổ sung hạn chế đề tài, tìm lỗi chưa kiểm thử + Sẽ bổ sung thiếu xót đề tài sau báo cáo + Trâu dồi kiến thức kĩ để áp dụng kiểm thử mã nguồn mở tương tự Joomla, Drupal, Magento, OpenCart… + Thử nghiệm kiểm thử ứng dụng Web Selenium RC Selenium Grid – xây dựng test-script ngôn ngữ khác C#, Perl, Ruby + Trong tương lai, em tiếp tục tìm hiểu thêm chức Selenium nghiên cứu cách xây dựng test-script ngôn ngữ Java để tối ưu khả Selenium 65 TÀI LIỆU THAM KHẢO Tài liệu Tiếng Việt [1] Bộ môn CNPM Trường ĐH CNTT&TT, Giáo trình môn Công nghệ phần mềm [2] Tường Thụy- Phạm Quang Hiển, Kiểm thử phần mềm( Testing), Thông Tin&Truyền thông [3] Phạm Ngọc Hùng, Trương Anh Hoàng, Đặng Văn Hưng,Giáo trình kiểm thử phần mềm, Đại học Công nghệ- Đại học Quốc gia Hà Nội, 2014 Tài liệu Tiếng Anh [4] Glenford J Myers, John Wiley and Sons, Inc, The Art of Software Testing, Second Edition, 2010 [5] David Burn, Selelium1.0 Testing Tool Beginner’s Guide, First Edition, Packt Publishing Ltd- UK, 2010 [6] David Burn, Selelium2.0 Testing Tool Beginner’s Guide, Second Edition, Packt Publishing Ltd- UK, 2012 [7] Guru99.com, Selenium Tool Complete Beginner’s guide [8] William E Perry, Effective methods for Software Testing, 3rd Edition, Wiley Publishing, Indian [9] Satya Avasarala, Selenium WebDriver Practical Guide, First Edition, Packt Publishing Ltd-UK, 2014 [10] John Wiley & Sons, Inc, Software Testing and quality assurance Theory and Practice, Canada, 2008 [11]Boris Beizer , Software Testing Techniques, Second Edition, Van Nostrand Reinhold, 1990 Website: [12] http://en.wikipedia.org/wiki/Software_testing [13] http://testingvn.com/ [14] http://www.guru99.com/ [15] http://selenium-linhvu.blogspot.com/ [16] https://vntesters.com 66 NHẬN XÉT CỦA GIÁO VIÊN HƯỚNG DẪN …………………………………………………………………………………… …………………………………………………………………………………… …………………………………………………………………………………… …………………………………………………………………………………… …………………………………………………………………………………… …………………………………………………………………………………… …………………………………………………………………………………… …………………………………………………………………………………… …………………………………………………………………………………… …………………………………………………………………………………… …………………………………………………………………………………… …………………………………………………………………………………… …………………………………………………………………………………… …………………………………………………………………………………… …………………………………………………………………………………… …………………………………………………………………………………… …………………………………………………………………………………… …………………………………………………………………………………… …………………………………………………………………………………… ……………………………………………………………………………… Thái Nguyên, ngày … tháng 06 năm 2016 Giáo viên hướng dẫn Nguyễn Thị Dung 67 [...]... biệt với các ứng dụng Web điều này là không thể Bởi vì khi kiểm 11 thử ứng dụng Web ngoài kiểm thử các chức năng chính của ứng dụng, ta còn cần kiểm tra nhiều yêu cầu phi chức năng khác như: hiệu năng sử dụng, tính dễ sử dụng, độ tin cậy, tính bảo mật của hệ thống… 1.2.2 Tại sao phải kiểm thử ứng dụng Web? Các ứng dụng Web đưa ra những thách thức mới trong việc đánh giá và kiểm tra Các ứng dụng Web. .. tiên tiến hiệu quả để kiểm thử những hệ thông phần mềm Tuy nhiên chúng ta cần phải linh hoạt sử dụng chúng chứ không áp dụng một các cứng nhắc những phương pháp và kĩ thuật cho phần mềm truyền thống lên những ứng dụng Web Hình 1.1Những kiểm thử cần có cho một ứng dụng web Kiểm thử các ứng dụng Web đã vượt qua giới hạn của kiểm thử các hệ thống phần mềm truyền thống bởi một ứng dụng Web không chỉ phát... năng Web từ Telerik Còn TOSCA Testsuite là công cụ phần mềm thực hiện tự động cho các ứng dụng Web theo chức năng và hồi quy Dưới đây sẽ là sự so sánh nhanh giữa Selenium và Quick TestPro, CUIT dựa trên những tiêu chí đánh giá về các công cụ kiểm thử tự động để thấy được tại sao Selenium được chọn là công cụ tốt nhất dành cho việc kiểm thử các ứng dụng Web: o Chức năng Record và Playback: Mỗi công cụ thử. .. Hình 1.16 Sơ đồ Selenium RC/ WebDriver Selenium RC là công cụ phục vụ cho các công việc kiểm thử đòi hỏi nhiều thao tác với các website trên giao diện Selenium RC sử dụng ngôn ngữ lập trình kiểm thử các trường hợp phức tạp mà Selenium không hỗ trợ Thành phần chính của Selenium RC gồm 2 phần: Máy chủ Selenium: Thực hiện phân tích và chạy các lệnh được gửi đến từ các ứng dụng cần kiểm thử và các thao... và sử dụng để kiểm tra các ứng dụng Web nhưng chủ yếu khi kiểm tra các ứng dụng Web sẽ tập trung vào các test case, giao diện chức năng và khả năng tương thích với trình duyệt Về công cụ test chức năng, ta không thể không nhắc đến Ranorex, Test Studio, TOSCA Testsuite, QuickTest Pro và Selenium Trong đó Ranotext là công cụ kiểm tra chức năng tự động qua trình duyệt, Test Studio là công cụ kiểm thử phần... nghĩa phạm vi kiểm thử, các chiến lược kiểm thử, nhận dạng các rủi ro và yếu tố bất ngờ, nhận dạng các hoạt động kiểm thử nào là thủ công, kiểm thử nào là tự động hay cả hai, ước lượng chi phí kiểm thử và xây dựng lịch kiểm thử, nhận dạng môi trường kiểm thử Kế hoạch kiểm thử cần được xem lại bởi đội quản lý kiểm tra chất lượng phần mềm, nhà phát triển phần mềm, nhà phân tích kinh doanh, kiểm thử viên... hơn là một Theme WordPress Vì vậy ngoài việc thực hiện kiểm thử Theme bằng phương pháp thủ công thì em còn lựa chọn thêm một công cụ test tự động để 35 giúp quá trình kiểm thử được linh hoạt nhanh chóng và đáp ứng yêu cầu của bài toán đề ra đó chính là công cụ Selenium Trên thực tế có rất nhiều công cụ kiểm thử tự động nhất là công cụ kiểm tra trang Web Nó có thể được phân loại dựa trên những điều kiện... nay.SE là một công cụ kiểm tra tự động các ứng dụng Web Nó có thể chạy trên hầu hết các trình duyệt và hệ điều hành: Windows, Linux, Mac…và hỗ trợ hầu hết các ngôn ngữ lập trình Web như C#, Java, Perl, PHP, Python, Ruby… Về cấu trúc thì Selenium có 4 phần Selenium IDE Selenium RC (Selenium 1 – Selenium Remote Control) Selenium Gird Selenium WebDriver (Selenium 2) Hình 1.8 Cấu trúc của Selenium Selenium... trên trang Web 29 1.3.4 Selenium RC/ Web driver 1.3.4.1 Giới thiệu chung về Selenium RC Selenium RC ban đầu được phát triển bởi Patrick Lightbody theo hướng kiểm tra các ứng dụng Web trên các trình duyệt khác nhau mà không cần cài đặt Selenium Core trên Server Nó được phát triển để tương tác như một giao tiếp giữa ứng dụng cần kiểm tra và kịch bản kiểm thử Selenium Core được tích hợp với Selenium RC... thành công của 1 ứng dụng Web trên Internet và nó cần được quan tâm cũng như kiểm thử sớm 1.2.3 Đặc trưng khi kiểm thử ứng dụng Web Một ứng dụng được phát triển luôn hướng đến người sử dụng với mục tiêu chương trình sữ được vận hành một cách ổn định, chính xác với hiệu năng sử dụng trên 24 giờ trên 1 ngày và 7 ngày trong tuần Đặc biệt là chương trình phải tồn tại những ưu điểm như tính dễ sử dụng, ... khung hình với việc hỗ trọ trình duyệt tất tảng Selenium trở thành công cụ kiểm thử phần mềm tự động tốt thị trường cho ứng dụng Web Với việc thực đề tài:” Kiểm thử ứng dụng Web với Selenium ... xuyên thay đổi đặc biệt với ứng dụng Web điều Bởi kiểm 11 thử ứng dụng Web kiểm thử chức ứng dụng, ta cần kiểm tra nhiều yêu cầu phi chức khác như: hiệu sử dụng, tính dễ sử dụng, độ tin cậy, tính... cần có cho ứng dụng web Kiểm thử ứng dụng Web vượt qua giới hạn kiểm thử hệ thống phần mềm truyền thống ứng dụng Web không phát triển cho nguwoif sử dụng mà nhiều nhóm người sử dụng với nhiều