Sử dụng các công cụ kiểm thử tự động kiểm thử web Shopee: Selenium IDE, Selenium Webdriver. Kiểm thử 3 chức năng cơ bản của web: Chức năng đăng ký qua số điện thoại, Chức năng đăng nhập qua số điện thoại, Chức năng mua hàng
KIẾN THỨC NỀN TẢNG
Quy trình kiểm thử phần mềm
Hình 1: Quy trình kiểm thử phần mềm
Kiểm thử phần mềm là một quá trình thực thi một chương trình với mục đích tìm ra lỗi Kiểm thử phần mềm bảo đảm sản phẩm phần mềm đáp ứng chính xác, đầy đủ và đúng theo yêu cầu của khách hàng, yêu cầu sản phẩm đề đã đặt ra Kiểm thử phần mềm cũng cung cấp mục tiêu, cái nhìn độc lập về phần mềm, điều này cho phép việc đánh giá và hiểu rõ các rủi ro khi thực thi phần mềm Kiểm thử phần mềm tạo điều kiện cho bạn tận dụng tối đa tư duy đánh giá và sáng tạo để bạn có thể phát hiện ra những điểm mà người khác chưa nhìn thấy Người thực hiện kiểm thử được gọi là kiểm thử viên (Tester).
Về cơ bản, quy trình kiểm thử phần mềm gồm 6 giai đoạn:
- Requirement Analysis (Phân tích yêu cầu)
- Test Planning (Lập kế hoạch kiểm thử)
- Test Case Development (Phát triển kịch bản kiểm thử)
- Environment Setup (Thiết lập môi trường kiểm thử)
- Test Execution (Thực hiện kiểm thử)
- Test Cycle Closure (Kết thúc chu kỳ kiểm thử)
- Requirement Analysis (Phân tích yêu cầu)
2.1.1 Requirement Analysis (Phân tích yêu cầu)
Trong giai đoạn này, các tester sẽ phân tích tài liệu Prototype (Tài liệu đặc tả yêu cầu) được tạo trong Software Development Life Cycle (Vòng đời phát triển phần mềm) để kiểm tra các yêu cầu do khách hàng đưa ra
Yêu cầu được chia làm 2 dạng: Functional (Chức năng) và Non-Functional (Phi chức năng) Yêu cầu về Functional sẽ mô tả tính năng còn Non-Functional sẽ mô tả hiệu năng, tính bảo mật, tính hữu dụng của phần mềm Trong quá trình phân tích, nếu yêu cầu còn mơ hồ sẽ được xem xét lại, tester đồng thời làm việc với các bên liên quan để làm rõ vấn đề Cuối cùng, tester sẽ xác định loại kiểm thử sẽ dùng và độ ưu tiên của các hoạt động kiểm thử, xác định môi trường test cần chuẩn bị.
Hình 2 : Phân tích yêu cầu
2.1.2 Test Planning (Lập kế hoạch kiểm thử)
Sau giai đoạn một, tester tiến hành Lập kế hoạch kiểm thử để kiểm tra xem phần mềm có đáp ứng các yêu cầu hay không Kế hoạch kiểm thử là một tài liệu tổng quan về việc kiểm thử dự án bao gồm những thông tin sau:
- Phạm vi kiểm thử, hướng tiếp cận, quy trình kiểm thử, tài nguyên và nhân lực test.
- Các chức năng/module cần được kiểm tra ; các công cụ và môi trường kiểm thử cần có.
- Ai test chức năng nào ? - Khi nào bắt đầu thực hiện viết và hoàn thành test case ? - Khi nào bắt đầu thực hiện và hoàn thành test ?
2.1.3 Test Case Development (Phát triển kịch bản kiểm thử)
Sau khi có được Test Plan, Tester bắt đầu xây dựng bộ Test Case dựa trên yêu cầu của phần mềm Test Case cần mô tả được chi tiết dữ liệu đầu vào, hành động, kết quả mong đợi để xác định một chức năng của ứng dụng phần mềm có hoạt động đúng hay không Template của Test Case có nhiều trường hợp nhưng bắt buộc phải có 5 mục chính: ID, mục đích kiểm thử, các bước thực hiện, kết quả mong đợi & kết quả thực tế.
Nếu sử dụng tool để thực hiện test tự động (Automation testing ) chức năng và giao diện của sản phẩm, tester sẽ tạo thêm một kịch bản kiểm thử gọi là Test
Script Test Script là bản hướng dẫn chi tiết được viết bằng mã code nhằm hỗ trợ kiểm thử những trường hợp nếu test thủ công bằng tay sẽ rất khó khăn.
Các Tester trong cùng một team sẽ review chéo Test Case của nhau tránh bỏ sót những trường hợp test quan trọng Một bộ Test Case chất lượng sẽ giúp đảm bảo chất lượng sản phẩm, hạn chế lỗi và rủi ro nhất cho khách hàng.
Hình 3 : Biểu mẫu Test Case cơ bản với 5 thành phần chính
2.1.4 Environment Setup (Thiết lập môi trường kiểm thử)
Thiết lập môi trường thử nghiệm là một hoạt động độc lập và có thể được bắt đầu cùng với giai đoạn phát triển kịch bản kiểm thử Môi trường kiểm thử sẽ do developers tạo ra để deploy sản phẩm đã được hoàn thiện về phần lập trình
Sau khi thiết lập môi trường thử nghiệm, tester thực hiện nhanh Smoke Testing (Kiểm thử khói) để kiểm tra tính sẵn sàng của môi trường thử nghiệm đồng thời tính ổn định của bản build sản phẩm Trường hợp xuất hiện lỗi như môi trường không ổn định hay bản build lỗi chức năng chính, tester sẽ báo lại developers sửa ngay Nếu môi trường và bản build đã đủ ổn định để tiến hành test chi tiết, tester sẽ tiến hành giai đoạn tiếp theo - Thực hiện kiểm thử.
2.1.5 Test Execution (Thực hiện kiểm thử)
Khi developers đã code và đưa sản phẩm lên môi trường kiểm thử, tester sẽ thực thi dựa trên Test Case đã viết Trong quá trình test, nếu phát hiện ra bug (lỗi) thì tester sẽ log (viết) lên các tool quản lý lỗi Bug của lập trình viên nào sẽ giao lại cho người đấy xử lý Khi nào developers fix bug xong, tester sẽ nhận lại và tiến hành kiểm thử
Nếu lỗi đã được sửa, tính năng hoạt động ổn định, tester sẽ đổi trạng thái thành Close Bug Trường hợp lỗi vẫn chưa được fix thành công, trạng thái sẽ được đổi thành Re-open để developers thực hiện fix lại Khi nào bug được fix thành công mới được đóng lại việc test tính năng đấy.
Trong cả quá trình kiểm thử phần mềm, tester ưu tiên kiểm tra chức năng chính trước, chức năng phụ và giao diện sẽ thực hiện test sau Quá trình kiểm thử phần mềm bắt buộc phải tuân thủ thời gian đã đề ra, mọi người trong team đôn đốc nhau để kịp tiến độ bàn giao sản phẩm Cuối cùng, tester thực hiện làm báo cáo tùy theo yêu cầu của dự án để đánh giá việc kết thúc quy trình kiểm thử phần mềm.
2.1.6 Test Cycle Closure (Kết thúc chu kỳ kiểm thử) Ở giai đoạn cuối cùng, tester chuẩn bị báo cáo kết thúc kiểm thử, tổng hợp lại các chỉ số trong quá trình test Cả team phát triển sẽ ngồi họp để đánh giá toàn bộ các tiêu chí xác định kiểm thử đã đủ hay chưa Những tiêu chí này khác nhau tùy theo từng dự án, thông thường bao gồm:
- Số lượng test case tối đa được thực thi Passed.
- Tỷ lệ lỗi giảm xuống dưới mức nhất định.
- Deadline được chốt từ giai đoạn làm kế hoạch kiểm thử.
Quy trình kiểm thử phần mềm thường chỉ được kết thúc khi sản phẩm được bàn giao cho khách hàng Ngoài ra, hoạt động kiểm thử có thể kết thúc trong các trường hợp sau:
- Khi 1 dự án bị hủy bỏ.
- Khi các mục tiêu chính đã hoàn thành.
- Khi việc bảo trì hoặc cập nhật đã hoàn thành.
Kiểm thử hộp trắng
Kiểm thử hộp trắng hay còn gọi là kiểm thử logic, là kỹ thuật kiểm thử cho phép kiểm tra cấu trúc bên trong của chương trình.
Kiểm thử hộp trắng có ưu và nhược điểm sau:
- Ưu điểm: Kiểm thử hộp trắng có ưu điểm kiểm thử được rõ ràng cấu trúc bên trong của ứng dụng, không phải kiểm thử mò không có chủ đích
- Nhược điểm: Chính vì tính kiểm thử được rõ ràng nên chỉ phát hiện được những lỗi thông thường, khó có thể phát hiện được lỗi tiềm ẩn.
Các kỹ thuật kiểm thử hộp trắng cơ bản
2.2.1 Kiểm thử đường cơ bản – đồ thị dòng
- Là một kỹ thuật dùng trong kiểm thử hộp trắng được Tom McCabe đưa ra đầu tiên Đồ thị dòng gần giống đồ thị luồng điều khiển của chương trình.
- Là một trong nhiều phương pháp miêu tả thuật giải Đây là phương pháp trực quan cho chúng ta thấy dễ dàng các thành phần của thuật giải và mối quan hệ trong việc thực hiện các thành phần này.
- Kỹ thuật đường cơ bản - đồ thị dòng có thể giúp những người thiết kế ca kiểm thử nhận được một độ phức tạp của 1 logic thủ tục.
- Gồm 2 loại thành phần : các nút và các cung nối kết giữa chúng.
Hình 4: Các loại nút trong đồ thị dòng điều khiển
Hình 5: Các kiểu cấu trúc của đồ thị dòng
Nếu đồ thị dòng điều khiển chỉ chứa các nút quyết định nhị phân thì ta gọi nó là đồ thị dòng điều khiển nhị phân Ta luôn có thể chi tiết hóa 1 đồ thị dòng điều khiển bất kỳ thành đồ thị dòng điều khiển nhị phân.
Hình 6: Đồ thị dòng điều khiển nhị phân
2.2.2 Kiểm thử dựa trên luồng điều khiển Đường thi hành (Execution path) : là 1 kịch bản thi hành đơn vị phần mềm tương ứng, cụ thể nó là danh sách có thứ tự các lệnh được thi hành ứng với 1 lần chạy cụ thể của đơn vị phần mềm, bắt đầu từ điểm nhập của đơn vị phần mềm đến điểm kết thúc của đơn vị phần mềm.
Mỗi TPPM có từ 1 đến n (có thể rất lớn) đường thi hành khác nhau.
Mục tiêu của phương pháp kiểm thử luồng điều khiển là đảm bảo mọi đường thi hành của ₫ơn vị phần mềm cần kiểm thử đều chạy đúng Rất tiếc trong thực tế, công sức và thời gian để đạt mụctiêu trên đây là rất lớn, ngay cả trên những đơn vị phần mềm nhỏ.
Kiểm thử hộp đen
Kỹ thuật kiểm thử hộp đen hay còn gọi là kiểm thử vào/ra Trong kỹ thuật này, người kiểm thử xem phần mềm như là một hộp đen Người kiểm thử hoàn toàn không quan tâm đến cấu trúc bên trong của chương trình mà chỉ quan tâm tới dữ liệu đầu vào và đầu ra sau khi được xử lý vì thế dữ liệu kiểm thử sẽ xuất phát từ đặc tả.
Kiểm thử hộp đen có ưu và nhược điểm như sau:
- Ưu điểm: Kiểm thử hộp đen không có mối liên quan nào đến mã lệnh, vì vậy người kiểm thử sẽ tìm được những lỗi mà lập trình viên không tìm thấy được.
- Nhược điểm: Kiểm thử hộp đen “giống như là đi trong bóng tối mà không có đèn” bởi vì kiểm thử viên không biết các phần mềm được kiểm tra thực sự xây dựng như thế nào Đó là lý do mà có nhiều trường hợp mà một kiểm thử viên hộp đen viết rất nhiều test case để kiểm tra một thứ gì đó mà đáng lẽ có thể chỉ cần kiểm tra bằng một test case duy nhất, hoặc là trường hợp một số phần chương trình không được kiểm tra chút nào.
Sau đây tôi xin giới thiệu chung một vài kỹ thuật trong kiểm thử hộp đen, chi tiết hơn sẽ được nghiên cứu trong những bài viết sau. Đoán lỗi: là một kỹ năng quan trọng của tester, thậm chí có thể gọi là nghệ thuật Một kiệt tác của trực giác Phương pháp này đặc biệt dựa vào kinh nghiệm và kiến thức của tester Nhiều tester cố gắng đoán xem phần nào của hệ thống mà có khả năng ẩn chứa lỗi Với phương pháp này, họ không cần một công cụ hay một kịch bản kiểm thử nào khi bắt đầu vào việc.
Kiểm thử dựa vào đồ thị nguyên nhân - kết quả (Cause Effect Graphing): là một kỹ thuật thiết kế kiểm thử phần mềm liên quan đến việc xác định các trường hợp (điều kiện đầu vào) và các hiệu ứng (điều kiện đầu ra) Vì các hệ thống hiện nay đều được phát triển trên nền tảng OOP, do đó, chúng ta có thể có được một đồ thị các đối tượng mà hệ thống định nghĩa và kết nối Từ đồ thị này, chúng ta dễ dàng biết các mối quan hệ của những đối tượng mà hệ thống xử lý, từ đó sẽ cho chúng ta các kịch bản kiểm thử phù hợp
CÔNG CỤ SELENIUM
Giới thiệu chung về Selenium
Selenium (thường được viết tắt là SE) là một phần mềm mã nguồn mở, được phát triển bởi Jason Huggins, sau đó được tiếp tục bởi nhóm
ThoughtWorks vào năm 2004 Selenium là một công cụ hỗ trợ kiểm tra tự động cho các ứng dụng chạy trên nền web.
Selenium hỗ trợ kiểm tra hầu hết trên các trình duyệt phổ biến hiện nay nhưFirefox, Internet Explorer, Chrome, Safari, cũng như các hệ điều hành chủ yếu như Windows, Linux, Mac, Selenium hỗ trợ một số lớn các ngôn ngữ lập trình như C#, Java, Perl, PHP, Python, Ruby, Không những vậy, Selenium có thể kết hợp thêm với một số công cụ khác như Bromien, Junit, Nunit.[2]
Đặc điểm của Selenium
Mã nguồn mở: Đây là điểm mạnh nhất của Selenium khi so sánh với các test tool khác Vì là mã nguồn mở nên chúng ta có thể sử dụng mà không phải lo lắng về phí bản quyền hay thời hạn sử dụng
Cộng đồng hỗ trợ: Vì là mã nguồn mở nên Selenium có một cộng đồng hỗ trợ khá mạnh mẽ Bên cạnh đó, Google là nơi phát triển Selenium nên chúng ta hoàn toàn có thể yên tâm về sự hổ trợ miễn phí khi có vấn đề vềSelenium Tuy nhiên, đây cũng là một điểm yếu của Selenium Vì công cụ này hoàn toàn miễn phí, cộng đồng lại đông nên một vấn đề có thể nhiều giải pháp, và có thể một số giải pháp là không hữu ích Mặc khác, chúng ta không thể hối thúc hay ra deadline cho sự hỗ trợ.
Selenium hỗ trợ nhiều ngôn ngữ lập trình Selenium hỗ trợ chạy trên nhiều hệ điều hành khác nhau với mức độ chỉnh sửa script hầu như là không có.Thực sự thì điều này phụ thuộc phần lớn vào khả năng viết script của người dùng.
Thành phần của Selenium
Selenium gồm một bộ công cụ hỗ trợ kiểm tra tự động các ứng dụng web để đảm bảo chất lượng của các ứng dụng web, Selenium gồm có các thành phần sau:
Hình 7: Thành phần của Selenium
Selenium-IDE: Là một công cụ cho phép ghi (record) và phát lại (playback) một test script Nó được thực hiện như là một Firefox Add-On. Selenium IDE cho phép export ra kịch bản đã thu dưới nhiều loại ngôn ngữ lập trình khác nhau như Java, Php, C#, Ruby, Perl hay Python.
Selenium Remote Control: Là một framework kiểm thử cho phép thực hiện nhiều hơn và tuyến tính các hành động trên trình duyệt Nó cho phép cho phép các nhà phát triển tự động hóa kiểm thử sử dụng một ngôn ngữ lập trình cho tính linh hoạt tối đa và mở rộng trong việc phát triển logic thử nghiệm. Công cụ này có thể nhận các test script được thu bởi Selenium IDE, cho phép chỉnh sửa, cải tiến linh động bằng nhiều ngôn ngữ lập trình khác nhau Sau đó khởi động một trong các trình duyệt Web được chỉ định để thực thi kiểm thử trực tiếp trên trình duyệt đó Selenium RC còn cung cấp khả năng lưu lại kết quả kiểm thử, cung cấp một API (Application Programming Interface) và thư viện cho mỗi ngôn ngữ được hỗ trợ: HTML, Java, C#, Perl, PHP, Python và Ruby. Khả năng sử dụng Selenium RC với một ngôn ngữ lập trình bậc cao để phát triển các trường hợp kiểm thử cũng cho phép kiểm thử tự động được tích hợp với một dự án xây dựng môi trường tự động
Selenium WebDriver: Là sự kế thừa từ Selenium Remote Control, làm việc trực tiếp với trình duyệt ở mức hệ điều hành, cho phép gửi lệnh trực tiếp đến trình duyệt và xuất ra kết quả
Selenium-Grid: Là một hệ thống hỗ trợ người dùng thực thi test script trên nhiều trình duyệt một cách song song mà không cần phải chỉnh sửa test script.Thực hiện phương pháp kiểm tra phân bổ, phối hợp nhiều Selenium RC để có thể thực thi trên nhiều trình duyệt Web khác nhau trong cùng một lúc nhằm giảm thiểu thời gian thực hiện.
GIỚI THIỆU VỀ SELENIUM IDE VA MÔI TRƯỜNG CÀI DẶT
Giới thiệu về Selenium IDE
Trước đây người ta gọi Selenium IDE là Selenium Recorder Selenium IDE ban đầu được tạo ra bởi ShinyaKasatani và trao tặng cho các dự án
Selenium vào năm 2006 Selenium IDE cho phép người dùng thực thi những công việc sau đây:
- Ghi (Record) những thao tác của người dùng khi sử dụng trình duyệt Firefox Record những hành động trên Firefox khá đơn giản, người dùng chỉ cần nhấn nút Record trên Selenium IDE là chương trình sẽ ghi lại các thao tác đã tương tác với Web trên Firefox.Người dùng có thể sửa lại command hoặc target ngay trên Selenium IDE, sau đó lưu test case (sử dụng chức năng save) để tái sử dụng lần sau.
- Chạy lại những script đã ghi được.
- Chuyển đổi script đã ghi thành các ngôn ngữ lập trình khác Selenium IDE còn có chức năng Export Chức năng này sẽ giúp cho người dùng export code dưới dạng nhiều ngôn ngữ khác nhau như Python, Java, C#, Ruby Nếu đã export thì không thể import trở lại để playback trên Selenium IDE mà phải dùng nó trong một framework khác.
4.2 Môi trường cài đặt Selenium IDE trên trình duyệt Chrome Đầu tiên người dùng nên kiểm tra xem trình duyệt Mozilla Firefox đã được cài đặt Selenium IDE hay chưa bằng cách mở trình duyệt này lên, chọn menu tools Nếu trong danh sách menu con không chứa Selenium IDE thì cần thực hiện những bước sau để tiến hành cài đặt.
Bước 1: Tiến hành truy cập vào địa chỉ https://www.selenium.dev/downloads/ Sau đó chọn menu Download.
Hình 8: Truy cập trang Download tiện ích Selenium IDE
Bước 2: Tìm tới mục Selenium IDE và chọn phiên bản mới nhất (latest released) hoặc những bản cũ hơn tùy theo nhu cầu sử dụng Ở đây chọn phiên bản mới nhất tính từ thời điểm báo cáo khóa luận là
Bước 3: Tại website mới được mở ra, chọn “Thêm vào Chrome” để thêm tiện ích Selenium IDE vào Chrome.
Hình 9: Thêm tiện ích Selenium IDE vào Chrome
Bước 4: Tiếp tục chọn “Thêm tiện ích” để xác nhận thao tác thêm tiện ích Selenium IDE vào trình duyệt.
Hình 10: Xác nhận cài đặt tiện ích Selenium IDE vào trình duyệt
Hình 11: Giao diện khởi chạy của tiện ích Selenium IDE
4.3 Ưu va nhược điểm của Selenium IDE
- Dễ dàng cài đặt, sử dụng, tiết kiệm thời gian.
- Không yêu cầu kinh nghiệm lập trình.
- Có thể chuyển đổi qua các ngôn ngữ lập trình khác như: HTML, Java, C#, Python, Ruby.
- Có thể debug, set breakpoint, thêm comment vào script cho dễ đọc.
- Không hỗ trợ biểu thức điều kiện/ vòng lặp (cần cài đặt thêm để chạy được vòng lặp)
- Không hỗ trợ test report (cần cài đặt thêm để hiển thị report)
- Không cho phép đọc dữ liệu từ file: text (.txt), excel (.xls), csv… (cần cài đặt thêm để đọc dữ liệu từ file csv/ xml)
- Thực hiện kiểm thử chậm so với Selenium RC và Webdriver.
4.4 Giới thiệu Selenium RC, Selenium Webdriver và môi trường cài đặt
4.4.1 Giới thiệu về Selenium RC, Selenium WebDriver
Với Selenium IDE, chúng ta có thể tạo được các test case ở mức đơn giản với Record và Playback Bằng cách sử dụng thêm các add-in bên ngoài, chúng ta có thể tiến hơn một bước trong việc sử dụng cấu trúc điều khiển để test case linh động hơn Tuy nhiên các add- in không thực sự mạnh trong điều khiển workflow của test case Để bù đắp việc này, Selenium cung cấp cho chúng ta hai loại thư viện để sử dụng mã nguồn của Selenium là Selenium RC và Selenium
WebDriver.Cả Selenium RC và Selenium WebDriver đều là công cụ phổ biến hỗ trợ kiểm thửtự động ứng dụng web Người dùng có thể phát triển các bài test tự động trong các ngôn ngữ lập trình như C#, Java, Python, Php, Perl và Ruby
[2] Selenium WebDriver có thể coi là phiên bản kế tiếp của Selenium RC, nó mang đến một giao diện lập trình đơn giản hơn và giải quyết một số hạn chế của Selenium RC Bên cạnh đó Selenium WebDriver không phải không có yếu điểm
Hình 12: Kiến trúc của Selenium RC
Selenium RC có cấu trúc gồm 2 thành phần:
- Selenium – RC Server: Nhận lệnh từ chương trình kiểm thử Selenium, thực hiện biên dịch và gửi lại thông báo kết quả của việc chạy các test case Máy chủ Selenium được tích hợp Selenium Core và tự động đưa nó vào trình duyệt Selenium- Core là một chương trình JavaScript, thực tế là một tập các chức năng JavaScript dùng để biên dịch và thực thi các lệnh Selenese.Thực hiện phân tích và chạy các lệnh được gửi đến từ ứng dụng cần kiểm thử.
- Các thư viện máy khách: Cung cấp giao tiếp giữa ngôn ngữ lập trình và máy chủ Selenium RC và cung cấp thư viện cho phép chạy lệnh Selenium từ chương trình của chúng ta Các thư viện máy khách hỗ trợ cho các ngôn ngữ lập trình khác nhau thì khác nhau.
Cách thức làm việc của Selenium RC như sau:
- Trước khi bắt đầu thực hiện kiểm thử chúng ta phải chạy Selenium –RC Server.
- Khi chúng ta bắt đầu thực hiện kiểm thử, Selenium -RC Sever sẽ truyền một chương trình Javascript gọi là Selenium Core vào trong trình duyệt
Selenium Core sẽ nhận chỉ thị được đưa ra bởi Selenium – RC Sever.
- Tiếp theo Selenium Core sẽ thực hiện các chỉ thị này như một lệnh Javascript.
- Lúc này trình duyệt mới nhận được lệnh từ Selenium Core và phản hồi lại Server.
- Cuối cùng Selenium – RC Sever trả về kết quả.
Hình 13: Kiến trúc của Selenium WebDriver
Kiến trúc của Selenium WebDriver cải tiến hơn so với Selenium RC. Chúng sử dụng browser’s native support để làm việc trực tiếp với trình duyệt. Làm thế nào để sử dụng trực tiếp với trình duyệt và các tính năng mà WebDriver hỗ trợ phụ thuộc vào trình duyệt mà bạn sử dụng Với Selenium RC chúng làm việc cùng một cách cho những trình duyệt được hỗ trợ Selenium –RC Server gắn đoạn mã JavaScript vào trong trình duyệt khi trình duyệt đã được nạp, còn WebDriver không sử dụng kỹ thuật này, chúng sẽ yêu cầu đến trình duyệt được thực thi sử dụng các trình duyệt được sử dụng để hỗ trợ cho tự động hóa, đó chính là browser’s native support Selenium WebDriver sẽ sử dụng cách thích hợp nhất để làm việc với mỗi trình duyệt khác nhau Do vậy khi làm việc với các trình duyệt mới nó sẽ không được hỗ trợ ngay lập tức như chúng ta làm việc với Selenium RC.[2]
Một số trường hợp nên kết hợp sử dụng Selenium – RC Sever cùng với Selenium WebDriver đó là khi bạn cần sử dụng Selenium Grid để thực hiện bài test trên nhiều trình duyệt hoặc máy ảo và khi bạn muốn kết nối với một máy tính từ xa có một phiên bản trình duyệt cụ thể nào đó không phải là trên máy tính hiện tại của bạn. Ưu điểm của Selenium WebDriver là tốc độ thực thi và nhận phản hồi từ trình duyệt nhanh hơn Selenium RC vì nó thực hiện mọi hành động trực tiếp với trình duyệt còn Selenium RC thì phải thông qua trạm trung gian, mất thời gian cho việc chuyển đổi nên thời gian để nhận phản hồi từ trình duyệt sẽ dài hơn. Hơn nữa nó được phát triển để hỗ trợ các trang web động( những trang web mà phần tử trong đó có thể thay đổi ngay cả khi trang đó không được tải lại) Mục đích của Selenium WebDriver là hỗ trợ cho các vấn đề kiểm thử web- app hiện nay.
4.4.2 Cài đặt Selenium RC và Selelenium WebDriver với ngôn ngữ Java Để cài đặt Selenium RC cần thực hiện các bước :
- Bước 1: Download Selenium RC từ trang http://docs.seleniumhq.org/download/
- Bước 2: Cài đặt Selenium – RC Sever
Máy chủ Selenium RC là một tập tin jar Java (phiên bản hiện tại là selenium - server- standalone- 2.53.0 jar) đơn giản, nó không cần cài đặt đặc biệt nào Chỉ cần tải về các file zip và giải nén các máy chủ trong thư mục mong muốn.
- Bước 3: Chạy Seleium – RC Server
Khởi động Server: đi đến thư mục chứa máy chủ Selenium RC, chạy file từ bảng điều khiển dòng lệnh (Command-line console): Java jar selenium-server- standalone-2.53.0.jar.
- Bước 4: Sử dụng Java Client Driver
Download Selenium RC từ trang http://docs.seleniumhq.org/download/
Giải nén file selenium-java-client-driver.jar.
Mở Java IDE (Eclipse, NetBeans, IntelliJ, Netweaver, v.v ).
Từ Selenium-IDE xuất ra một kịch bản cho một file Java và đặt nó trong project
Add file selenium-java-client-driver.jar vào project.
Chạy Selenium sever từ bảng điều khiển.
- Bước 1: Cài đặt Chrome Browser Đầu tiên, chúng ta cài đặt Chrome Browser ở trang chủ Một lưu ý cực kì quan trọng là sau bước này, các bạn phải tiến hành kiểm tra phiên bản để tải
ChromeDriver cho đúng, nếu không sẽ phát sinh lỗi khi Run script.
Hình 14: Cài đặt Chrome Brower
- Bước 2: Cài đặt Chrome Driver
Tiếp theo là tải về Chrome Driver, truy cập vào đường link: https://chromedriver.chromium.org/downloads
Hình 15: Cài đặt Chrome Driver
Các bạn phải tải về đúng version 113.x.xxx.xx của Chrome.
Chọn file tải về theo Hệ điều hành máy tính bạn đang sử dụng.
Sau khi tải về, các bạn giải nén ra, sẽ ra một tập tin tên là chromedriver.exe (trên Window).
Nhớ lưu ý đường dẫn của file Ví dụ: ở ổ đĩa C vào trong thư mục tên
WebDriver thì đường dẫn là: C:\WebDriver\chromedriver_win32
- Bước 3: Download Pycharm Community Edition
Truy cập đường link: https://www.jetbrains.com/pycharm/download/#section=windows
Tải Pycharm, sử dụng bản Community
Hình 16: Tải Pycharm Community Edition
Sau khi tải xong Pycharm, vào mục File-> Settings->Python Interpreter
Import chon biểu tượng + để tải xuống thư viện cần thiết các thư viện sau:
Hình 17: Giải nén giao diện import thư viên Pycharm
Sau khi download thư viện cần thiết hãy copy 2 tệp tin LICENSE.chromedriver và chromedriver.exe vào project Pycharm để tạo môi trường test
Hình 18: Gộp chung file chromedriver vào project tạo mới
4.4.3 Ưu và nhược điểm của Selenium WebDriver
ƯU ĐIỂM CỦA SELENIUM WEBDRIVER:
- Cài đặt đơn giản hơn Selenium RC
- Giao tiếp trực tiếp với trình duyệt
- Sự tương tác của trình duyệt thực tế hơn
Ưu va nhược điểm của Selenium IDE
- Dễ dàng cài đặt, sử dụng, tiết kiệm thời gian.
- Không yêu cầu kinh nghiệm lập trình.
- Có thể chuyển đổi qua các ngôn ngữ lập trình khác như: HTML, Java, C#, Python, Ruby.
- Có thể debug, set breakpoint, thêm comment vào script cho dễ đọc.
- Không hỗ trợ biểu thức điều kiện/ vòng lặp (cần cài đặt thêm để chạy được vòng lặp)
- Không hỗ trợ test report (cần cài đặt thêm để hiển thị report)
- Không cho phép đọc dữ liệu từ file: text (.txt), excel (.xls), csv… (cần cài đặt thêm để đọc dữ liệu từ file csv/ xml)
- Thực hiện kiểm thử chậm so với Selenium RC và Webdriver.
Giới thiệu Selenium RC, Selenium Webdriver và môi trường cài đặt
4.4.1 Giới thiệu về Selenium RC, Selenium WebDriver
Với Selenium IDE, chúng ta có thể tạo được các test case ở mức đơn giản với Record và Playback Bằng cách sử dụng thêm các add-in bên ngoài, chúng ta có thể tiến hơn một bước trong việc sử dụng cấu trúc điều khiển để test case linh động hơn Tuy nhiên các add- in không thực sự mạnh trong điều khiển workflow của test case Để bù đắp việc này, Selenium cung cấp cho chúng ta hai loại thư viện để sử dụng mã nguồn của Selenium là Selenium RC và Selenium
WebDriver.Cả Selenium RC và Selenium WebDriver đều là công cụ phổ biến hỗ trợ kiểm thửtự động ứng dụng web Người dùng có thể phát triển các bài test tự động trong các ngôn ngữ lập trình như C#, Java, Python, Php, Perl và Ruby
[2] Selenium WebDriver có thể coi là phiên bản kế tiếp của Selenium RC, nó mang đến một giao diện lập trình đơn giản hơn và giải quyết một số hạn chế của Selenium RC Bên cạnh đó Selenium WebDriver không phải không có yếu điểm
Hình 12: Kiến trúc của Selenium RC
Selenium RC có cấu trúc gồm 2 thành phần:
- Selenium – RC Server: Nhận lệnh từ chương trình kiểm thử Selenium, thực hiện biên dịch và gửi lại thông báo kết quả của việc chạy các test case Máy chủ Selenium được tích hợp Selenium Core và tự động đưa nó vào trình duyệt Selenium- Core là một chương trình JavaScript, thực tế là một tập các chức năng JavaScript dùng để biên dịch và thực thi các lệnh Selenese.Thực hiện phân tích và chạy các lệnh được gửi đến từ ứng dụng cần kiểm thử.
- Các thư viện máy khách: Cung cấp giao tiếp giữa ngôn ngữ lập trình và máy chủ Selenium RC và cung cấp thư viện cho phép chạy lệnh Selenium từ chương trình của chúng ta Các thư viện máy khách hỗ trợ cho các ngôn ngữ lập trình khác nhau thì khác nhau.
Cách thức làm việc của Selenium RC như sau:
- Trước khi bắt đầu thực hiện kiểm thử chúng ta phải chạy Selenium –RC Server.
- Khi chúng ta bắt đầu thực hiện kiểm thử, Selenium -RC Sever sẽ truyền một chương trình Javascript gọi là Selenium Core vào trong trình duyệt
Selenium Core sẽ nhận chỉ thị được đưa ra bởi Selenium – RC Sever.
- Tiếp theo Selenium Core sẽ thực hiện các chỉ thị này như một lệnh Javascript.
- Lúc này trình duyệt mới nhận được lệnh từ Selenium Core và phản hồi lại Server.
- Cuối cùng Selenium – RC Sever trả về kết quả.
Hình 13: Kiến trúc của Selenium WebDriver
Kiến trúc của Selenium WebDriver cải tiến hơn so với Selenium RC. Chúng sử dụng browser’s native support để làm việc trực tiếp với trình duyệt. Làm thế nào để sử dụng trực tiếp với trình duyệt và các tính năng mà WebDriver hỗ trợ phụ thuộc vào trình duyệt mà bạn sử dụng Với Selenium RC chúng làm việc cùng một cách cho những trình duyệt được hỗ trợ Selenium –RC Server gắn đoạn mã JavaScript vào trong trình duyệt khi trình duyệt đã được nạp, còn WebDriver không sử dụng kỹ thuật này, chúng sẽ yêu cầu đến trình duyệt được thực thi sử dụng các trình duyệt được sử dụng để hỗ trợ cho tự động hóa, đó chính là browser’s native support Selenium WebDriver sẽ sử dụng cách thích hợp nhất để làm việc với mỗi trình duyệt khác nhau Do vậy khi làm việc với các trình duyệt mới nó sẽ không được hỗ trợ ngay lập tức như chúng ta làm việc với Selenium RC.[2]
Một số trường hợp nên kết hợp sử dụng Selenium – RC Sever cùng với Selenium WebDriver đó là khi bạn cần sử dụng Selenium Grid để thực hiện bài test trên nhiều trình duyệt hoặc máy ảo và khi bạn muốn kết nối với một máy tính từ xa có một phiên bản trình duyệt cụ thể nào đó không phải là trên máy tính hiện tại của bạn. Ưu điểm của Selenium WebDriver là tốc độ thực thi và nhận phản hồi từ trình duyệt nhanh hơn Selenium RC vì nó thực hiện mọi hành động trực tiếp với trình duyệt còn Selenium RC thì phải thông qua trạm trung gian, mất thời gian cho việc chuyển đổi nên thời gian để nhận phản hồi từ trình duyệt sẽ dài hơn. Hơn nữa nó được phát triển để hỗ trợ các trang web động( những trang web mà phần tử trong đó có thể thay đổi ngay cả khi trang đó không được tải lại) Mục đích của Selenium WebDriver là hỗ trợ cho các vấn đề kiểm thử web- app hiện nay.
4.4.2 Cài đặt Selenium RC và Selelenium WebDriver với ngôn ngữ Java Để cài đặt Selenium RC cần thực hiện các bước :
- Bước 1: Download Selenium RC từ trang http://docs.seleniumhq.org/download/
- Bước 2: Cài đặt Selenium – RC Sever
Máy chủ Selenium RC là một tập tin jar Java (phiên bản hiện tại là selenium - server- standalone- 2.53.0 jar) đơn giản, nó không cần cài đặt đặc biệt nào Chỉ cần tải về các file zip và giải nén các máy chủ trong thư mục mong muốn.
- Bước 3: Chạy Seleium – RC Server
Khởi động Server: đi đến thư mục chứa máy chủ Selenium RC, chạy file từ bảng điều khiển dòng lệnh (Command-line console): Java jar selenium-server- standalone-2.53.0.jar.
- Bước 4: Sử dụng Java Client Driver
Download Selenium RC từ trang http://docs.seleniumhq.org/download/
Giải nén file selenium-java-client-driver.jar.
Mở Java IDE (Eclipse, NetBeans, IntelliJ, Netweaver, v.v ).
Từ Selenium-IDE xuất ra một kịch bản cho một file Java và đặt nó trong project
Add file selenium-java-client-driver.jar vào project.
Chạy Selenium sever từ bảng điều khiển.
- Bước 1: Cài đặt Chrome Browser Đầu tiên, chúng ta cài đặt Chrome Browser ở trang chủ Một lưu ý cực kì quan trọng là sau bước này, các bạn phải tiến hành kiểm tra phiên bản để tải
ChromeDriver cho đúng, nếu không sẽ phát sinh lỗi khi Run script.
Hình 14: Cài đặt Chrome Brower
- Bước 2: Cài đặt Chrome Driver
Tiếp theo là tải về Chrome Driver, truy cập vào đường link: https://chromedriver.chromium.org/downloads
Hình 15: Cài đặt Chrome Driver
Các bạn phải tải về đúng version 113.x.xxx.xx của Chrome.
Chọn file tải về theo Hệ điều hành máy tính bạn đang sử dụng.
Sau khi tải về, các bạn giải nén ra, sẽ ra một tập tin tên là chromedriver.exe (trên Window).
Nhớ lưu ý đường dẫn của file Ví dụ: ở ổ đĩa C vào trong thư mục tên
WebDriver thì đường dẫn là: C:\WebDriver\chromedriver_win32
- Bước 3: Download Pycharm Community Edition
Truy cập đường link: https://www.jetbrains.com/pycharm/download/#section=windows
Tải Pycharm, sử dụng bản Community
Hình 16: Tải Pycharm Community Edition
Sau khi tải xong Pycharm, vào mục File-> Settings->Python Interpreter
Import chon biểu tượng + để tải xuống thư viện cần thiết các thư viện sau:
Hình 17: Giải nén giao diện import thư viên Pycharm
Sau khi download thư viện cần thiết hãy copy 2 tệp tin LICENSE.chromedriver và chromedriver.exe vào project Pycharm để tạo môi trường test
Hình 18: Gộp chung file chromedriver vào project tạo mới
4.4.3 Ưu và nhược điểm của Selenium WebDriver
ƯU ĐIỂM CỦA SELENIUM WEBDRIVER:
- Cài đặt đơn giản hơn Selenium RC
- Giao tiếp trực tiếp với trình duyệt
- Sự tương tác của trình duyệt thực tế hơn
- Thời gian thực hiện nhanh hơn IDE và RC
NHƯỢC ĐIỂM CỦA SELENIUM WEBDRIVER:
- Cài đặt phức tạp hơn IDE
- Yêu cầu phải có kiến thức lập trình
- Không thể sẵn sàng hỗ trợ các trình duyệt mới
- Không có cơ chế tích hợp để ghi lại các thông điệp thời gian chạy và tạo ra các kết quả kiểm tra.
Kết luận
Trong phần của bài tập lớn đã đưa ra khái niệm, quy trình, ưu và nhược điểm, lý do của kiểm thử tự động Giới thiệu công cụ selenium và tìm hiểu đi sâu vào 3 thành phần cơ bản của Selenium là Selenium IDE, Selenium RC vàSelenium WebDriver Phần 5 sẽ ứng dụng trực tiếp Selenium IDE và SeleniumWebDriver để kiểm thử chức năng của website Shopee.
ỨNG DỤNG SELENIUM IDE, SELENIUM RC VA SELENIUM
Giới thiệu website Shopee
Shopee là một trang web thương mại điện tử được thành lập tại Singapore vào năm 2015 Hiện nay, Shopee đã có mặt ở nhiều quốc gia và vùng lãnh thổ trên toàn thế giới, bao gồm Đông Nam Á, Đài Loan, Hàn Quốc, Brazil và Thổ Nhĩ Kỳ.
Shopee cung cấp một nền tảng mua sắm trực tuyến, cho phép người dùng mua và bán hàng trực tuyến Shopee cung cấp một loạt các sản phẩm, từ quần áo, giày dép, đồ điện tử, đồ gia dụng cho đến đồ chơi và các sản phẩm mỹ phẩm. Ngoài ra, Shopee còn cung cấp dịch vụ giao hàng và thanh toán trực tuyến để đảm bảo tính tiện lợi cho khách hàng.
Tổng quan lại, Shopee là một trang web thương mại điện tử đáng tin cậy và phổ biến, cung cấp cho người dùng một trải nghiệm mua sắm trực tuyến thuận tiện và đa dạng.
Hình 19: Giao diện trang chủ website Shopee Đường link dẫn tới Shopee : https://shopee.vn/
Lập kế hoạch kiểm thử
- Kế hoạch 1: Test chức năng đăng ký tài khoản Shopee qua số điện thoại sử dụng Selenium IDE (sinh viên Trịnh Bảo Kiên đảm nhận)
- Kế hoạch 2 : Test chức năng đăng nhập tài khoản Shoppe bằng email, số điện thoại, tên đăng nhập sử dụng Selenium IDE (sinh viên Nguyễn Hữu Đạt đảm nhận)
- Kế hoạch 3 : Test chức năng mua hàng trong giỏ hàng Shopee sử dụng Selenium IDE (sinh viên Nguyễn Tuấn Nam đảm nhận)
- Kế hoạch 4: Test chức năng đăng ký tài khoản Shopee qua số điện thoại sử dụng Selenium Webdriver (sinh viên Nguyễn Quang Minh đảm nhận)
Trịnh Bảo Kiên, test chức năng đăng ký tài khoản Shopee qua số điện thoại sử dụng Selenium IDE
- Trang chủ Shopee: Nút "Đăng ký" ở góc trên bên phải của trang web.
- Trang đăng ký tài khoản Shopee : Đăng ký qua số điện thoại
5.3.1.2 Mô tả giao diện và các điều kiện ràng buộc:
- Trang chủ Shopee: Chứa nút "Đăng ký" để chuyển đến trang đăng ký tài khoản Shopee Nếu không có tài khoản, người dùng cần phải đăng ký tài khoản mới để sử dụng các dịch vụ của Shopee.
- Trang đăng ký tài khoản Shopee: Gồm các trường thông tin cá nhân cần nhập vào để tạo tài khoản qua số điện thoại bắt buộc phải nhập đúng định dạng số điện thoại (ví dụ: 0901234567), không được trùng với số điện thoại đã được sử dụng để đăng ký tài khoản trước đó và chỉ nhận tối đa 10 số
5.3.1.3 Lập bảng danh sách các TC và các điều kiện tìm TC:
Chức năng Nội dung kiểm thử Điều kiện tiền đề Kỹ thuật kiểm thử Kết quả mong
Nhập số điện thoại không đúng định dạng
- Truy cập trang đăng ký thành công
Kiểm thử hộp đen Chỉ cho phép ký tự số có thể có thêm các ký tự như : ’+’ ; ’(‘ ;
TC2 Đăng ký tài khoản
Nhập số điện thoại thiếu ký tự số
- Truy cập trang đăng ký thành công
Kiểm thử hộp đen Chỉ cho phép 10 số nếu chữ số đầu là 0 hoặc 11 số nếu 2 chữ số đầu là 84 /+84/(+84)
TC3 Đăng ký tài khoản
Nhập số điện thoại không thuộc nhà mạng
- Truy cập trang đăng ký thành công
Kiểm thử hộp đen Chỉ cho phép số điện thoại thuộc nhà mạng
Test Case 1: Nhập số điện thoại không đúng định dạng
- Bước 1 : Vào trang web shoppe theo đường link : https://shopee.vn/
- Bước 2 : Click vào nút Đăng kí
Hình 20: Giao diện đăng kí tài khoản Shopee
- Bước 3 : Copy đường link liên kết Mở Selenium IDE qua Tiện ích của Chrome
Hình 21: Giao diện Tiện ích của Chrome
- Bước 4 : Giao diện Selenium IDE chọn Create a new Project
Hình 22: Giao diện Selenium IDE
- Bước 5 : Tạo tên Project mới và nhập đường link đã sao chép
Hình 23: Giao diện tạo tên project
- Bước 6 : Nhập thông số, dữ liệu
Hình 24: Giao diện Selenium IDE
Hình 25: Giao diện chạy test case 1
Test Case 2: Nhập số điện thoại thiếu ký tự số
- Bước 1 : Vào trang web shoppe theo đường link : https://shopee.vn/
- Bước 2 : Click vào nút Đăng kí
Hình 26: Giao diện đăng kí tài khoản Shopee
- Bước 3 : Copy đường link liên kết Mở Selenium IDE qua Tiện ích của
Hình 27: Giao diện Tiện ích của Chrome
- Bước 4 : Giao diện Selenium IDE chọn Create a new Project
Hình 28: Giao diện Selenium IDE
Project mới và nhập đường link đã sao chép
Hình 29: Giao diện tạo tên project
- Bước 6 : Nhập thông số, dữ liệu
Hình 31: Giao diện chạy test case 2
Test Case 3: Nhập số điện thoại không thuộc nhà mạng
- Bước 1 : Vào trang web shoppe theo đường link : https://shopee.vn/
- Bước 2 : Click vào nút Đăng kí
Hình 32: Giao diện đăng kí tài khoản Shopee
- Bước 3 : Copy đường link liên kết Mở Selenium IDE qua Tiện ích của
Hình 33: Giao diện Tiện ích của Chrome
- Bước 4 : Giao diện Selenium IDE chọn Create a new Project
Hình 34: Giao diện Selenium IDE
Project mới và nhập đường link đã sao chép
Hình 35: Giao diện tạo tên project
- Bước 6 : Nhập thông số, dữ liệu
Hình 37: Giao diện chạy test case 3
- Giao diện rõ ràng, dễ hiểu, đơn giản.
- Khi phóng to hay thu nhỏ màn hình thì giao diện không bị vỡ
Nhận xét chức năng : Trong quá trình thực hiện test thực nghiệm cho chức năng đăng ký tài khoản Shopee của khách hàng qua số điện thoại Hệ thống bình thường không gặp lỗi.
Nguyễn Hữu Đạt, test chức năng đăng nhập bằng email, số điện thoại, tên đăng nhập sử dụng
- Trang chủ Shopee: Nút "Đăng nhập" ở góc trên bên phải của trang web, bên cạnh nút "Đăng ký"
5.4.1.2 Mô tả giao diện và các điều kiện ràng buộc:
- Trang chủ Shopee: Chứa nút "Đăng nhập" để chuyển đến trang đăng nhập tài khoản Shopee Nếu không có tài khoản, người dùng cần phải đăng ký tài khoản mới để sử dụng các dịch vụ của Shopee.
- Trang đăng nhập tài khoản Shopee: Gồm các trường thông tin cá nhân cần nhập vào đăng nhập như email hoặc số điện thoại hoặc tên đăng nhập và mật khẩu.
- Đối với tên đăng nhập là email hoặc số điện thoại thì phải nhập đúng thông tin đã đăng ký với đúng định dạng trong mô tả sau:
E-mail Tài khoản gmail phải chứa @
Tài khoản chỉ đã đăng kí trước đó
Tài khoản không được bỏ trống
Số điện thoại Đúng định dạng số điện thoại (VD:
Số điện thoại không được quá 10 số
5.4.1.3 Lập bảng danh sách các TC và các điều kiện tìm TC:
Chức năng Nội dung kiểm thử Điều kiện tiền đề Kỹ thuật kiểm thử Kết quả mong
Bỏ trống ô tài khoản -Có kết nối mạng
- Truy cập trang đăng ký thành công
Kiểm thử hộp đen Không thể kích vào nút đăng nhập
Nhập sai Tài khoản và đúng Mật khẩu hoặc ngược lại
- Truy cập trang đăng ký thành công
Kiểm thử hộp đen Hệ thống hiển thị thông báo ‘Tên tài khoản của bạn hoặc Mật khẩu không đúng, vui lòng thử lại’.
Bỏ trống ô mật khẩu -Có kết nối mạng
- Truy cập trang đăng ký thành công
Kiểm thử hộp đen Không thể kích vào nút đăng nhập
Test case 1 : Bỏ trông ô tài khoản
- Bước 1 : Vào trang web shoppe theo đường link : https://shopee.vn/
- Bước 2 : Click vào nút Đăng nhập
Hình 38: Giao diện đăng nhập của Shopee
- Bước 3 : Copy đường link liên kết Mở Selenium IDE qua Tiện ích của Chrome hoặc Microsoft Edge
Hình 39: Giao diện tiện ích của Microsoft Edge
- Bước 4 : Giao diện Selenium IDE chọn Create a new Project
Hình 40: Giao diện Selenium IDE
Project mới và nhập đường link đã sao chép
Hình 41: Giao diện tạo tên project
- Bước 6 : Nhập thông số, dữ liệu
Hình 42: Giao diện Selenium IDE
Giao diện chạy test case 1
Test case 2 : Nhập sai Tài khoản và đúng Mật khẩu hoặc ngược lại
- Bước 1 : Vào trang web shoppe theo đường link : https://shopee.vn/
- Bước 2 : Kích vào nút Đăng nhập
Hình 44: Giao diện đăng nhập của Shopee
- Bước 3 : Copy đường link liên kết Mở Selenium
IDE qua Tiện ích của
Hình 45 : Giao diện tiện ích của Microsoft Edge
- Bước 4 : Giao diện Selenium IDE chọn Create a new Project
Hình 46 : Giao diện Selenium IDE
- Bước 5 : Tạo tên Project mới và nhập đường link đã sao chép
Hình 47 : Giao diện tạo tên project
- Bước 6 : Nhập thông số, dữ liệu
Hình 48 : Giao diện Selenium IDE
Hình 49 : Giao diện chạy test case 2Hoàn thành test case 2 :100%
Test case 3 : Bỏ trống ô mật khẩu
- Bước 1 : Vào trang web shoppe theo đường link : https://shopee.vn/
- Bước 2 : Kích vào nút Đăng nhập
Hình 50 : Giao diện đăng nhập của Shopee
- Bước 3 : Copy đường link liên kết Mở Selenium IDE qua Tiện ích của Chrome hoặc Microsoft Edge
Hình 51 : Giao diện tiện ích của Microsoft Edge
- Bước 4 : Giao diện Selenium IDE chọn Create a new Project
Hình 52 : Giao diện Selenium IDE
- Bước 5 : Tạo tên Project mới và nhập đường link đã sao chép
Hình 53 : Giao diện tạo tên project
- Bước 6 : Nhập thông số, dữ liệu
Hình 54 : Giao diện Selenium IDE
Hình 55 : Giao diện chạy test case 3 Hoàn thành test case 3 :100%
- Giao diện rõ ràng, dễ hiểu, đơn giản.
- Khi phóng to hay thu nhỏ màn hình thì giao diện không bị vỡ
Nhận xét chức năng : Trong quá trình thực hiện test thực nghiệm cho chức năng đăng nhập tài khoản Shopee của khách hàng qua email, số điện thoại, tên đăng nhập Hệ thống bình thường không gặp lỗi.
Nguyễn Tuấn Nam, test chức năng mua hàng trong giỏ hàng Shopee
- Trang chủ Shopee: Nút ‘Giỏ hàng’ ở góc trên bên phải của trang web, bên dưới tải khoản Nút ‘mua hàng ‘ ở phía dưới danh sách có sẵn trong giỏ hàng
- Trang chủ Shopee: Là hình xe đẩy siêu thị, dung để xem lại cách mặt hang mà bạ đã lựa chọn để chuẩn bị thoan toán.
- Trang đăng nhập tài khoản Shopee: Gồm các trường thông tin thông tin của sản phẩm bạn chọn như số tiền cần thanh toán, nơi cung cấp, số lượng sản phẩm và các ưu đãi.
5.5.1.3 Lập bảng danh sách các TC và các điều kiện tìm TC:
Chức năng Nội dung kiểm thử Điều kiện tiền đề Kỹ thuật kiểm thử Kết quả mong
1 Mua hàng Chưa đăng nhập tài khoản -Có kết nối mạng
- Truy cập trang đăng ký thành công
Kiểm thử hộp đen Phải đăng nhập tài khoản
TC2 Mua hàng Đã đăng nhập tài khoản, chưa có gì trong giỏ hàng, chọn một sản phẩm bất kỳ
- Truy cập trang đăng ký thành công
Kiểm thử hộp đen Có sản phẩm để nút thanh toán hiện ra
TC3 Mua hàng Đã đăng nhập tài khoản, có gì trong giỏ hàng
- Truy cập trang đăng ký thành công
Kiểm thử hộp đen Mua thêm rồi thanh toán hoặc vào thanh toán
Test case 1 : Chưa đăng nhập tài khoản
- Bước 1 : Vào trang web shoppe theo đường link: https://shopee.vn/
- Bước 2: Copy đường link liên kết Mở Selenium IDE qua Tiện ích của
Hình 50: Giao diện tiện ích của Microsoft Edge
- Bước 4: Giao diện Selenium IDE chọn Create a new Project
- Hình 56: Giao diện Selenium IDE
- Bước 5: Tạo tên Project mới và nhập đường link đã sao chép
Hình 57: Giao diện tạo tên project
- Bước 6: Nhập thông số, dữ liệu
Hình 58: Giao diện Selenium IDE
Giao diện chạy test case 1
Test case 2: Đã đăng nhập tài khoản, chưa có gì trong giỏ hang, chọn một sản phẩm bất kỳ
- Bước 1: Vào trang web shoppe theo đường link: https://shopee.vn/
- Bước 2: Copy đường link liên kết Mở Selenium IDE qua Tiện ích của Chrome hoặc Microsoft Edge
Hình 60 :Giao diện tiện ích của Microsoft Edge
- Bước 3: Giao diện Selenium IDE chọn Create a new Project
Hình 61 : Giao diện Selenium IDE
- Bước 4: Tạo tên Project mới và nhập đường link đã sao chép
Hình 62: Giao diện tạo tên project
- Bước 5: Nhập thông số, dữ liệu
Hình 63 : Giao diện Selenium IDE
Hình 64 : Giao diện chạy test case 2
Test case 3: Đã đăng nhập tài khoản, có gì trong giỏ hàng
- Bước 1: Vào trang web shoppe theo đường link: https://shopee.vn/
- Bước 2 :Thêm sản phẩm vào giỏ hàng
Hình 65: Thêm sản phẩm vào giỏ hàng
- Bước 3: Copy đường link liên kết Mở Selenium IDE qua Tiện ích của Chrome hoặc Microsoft Edge
Hình 66 : Giao diện tiện ích của Microsoft Edge
- Bước 4: Giao diện Selenium IDE chọn Create a new Project
Project mới và nhập đường link đã sao chép
Hình 68 : Giao diện tạo tên project
- Bước 6: Nhập thông số, dữ liệu :
TH1 : Thêm sản phẩm khác sau đó thanh toán đơn hàng
Hình 69 : Giao diện Selenium IDE
Hình 70 : Giao diện chạy test case 3.1
TH2 : Thanh toán đơn hàng có sẵn trong giỏ hàng
Hình 71 : Giao diện Selenium IDE
Hình 66: Giao diện chạy test case 3.2
Giao diện rõ ràng, dễ hiểu, đơn giản.
Khi phóng to hay thu nhỏ màn hình thì giao diện không bị vỡ
Nhận xét chức năng: Trong quá trình thực hiện test thực nghiệm cho chức năng mua hàng của Shopee Hệ thống hoạt động bình thường.
Nguyễn Quang Minh, test chức năng đăng ký tài khoản qua số điện thoại sử dụng Selenium Webdriver
- Trang chủ Shopee: Nút "Đăng ký" ở góc trên bên phải của trang web.
- Trang đăng ký tài khoản Shopee : Đăng ký qua số điện thoại
5.6.1.2 Mô tả giao diện và các điều kiện ràng buộc:
- Trang chủ Shopee: Chứa nút "Đăng ký" để chuyển đến trang đăng ký tài khoản Shopee Nếu không có tài khoản, người dùng cần phải đăng ký tài khoản mới để sử dụng các dịch vụ của Shopee.
- Trang đăng ký tài khoản Shopee: Gồm các trường thông tin cá nhân cần nhập vào để tạo tài khoản qua số điện thoại bắt buộc phải nhập đúng định dạng số điện thoại (ví dụ: 0901234567), không được trùng với số điện thoại đã được sử dụng để đăng ký tài khoản trước đó và chỉ nhận tối đa 10 số
5.6.1.3 Lập bảng danh sách các TC và các điều kiện tìm TC:
Chức năng Nội dung kiểm thử Điều kiện tiền đề Kỹ thuật kiểm thử Kết quả mong muốn
TC1 Đăng ký tài khoản
Nhập số điện thoại không đúng định dạng
- Truy cập trang đăng ký thành công
Kiểm thử hộp đen Chỉ cho phép ký tự số có thể có thêm các ký tự như : ’+’ ; ’(‘ ;
TC2 Đăng ký tài khoản
Nhập số điện thoại thiếu ký tự số
- Truy cập trang đăng ký thành công
Kiểm thử hộp đen Chỉ cho phép 10 số nếu chữ số đầu là 0 hoặc 11 số nếu 2 chữ số đầu là 84 /+84/(+84)
TC3 Đăng ký tài khoản
Nhập số điện thoại không thuộc nhà mạng
- Truy cập trang đăng ký thành công
Kiểm thử hộp đen Chỉ cho phép số điện thoại thuộc nhà mạng
Test Case 1: Nhập số điện thoại không đúng định dạng
- Bước 1 : Vào trang web shoppe theo đường link : https://shopee.vn/
- Bước 2 : Click vào nút Đăng kí
Hình 72 :Giao diện đăng kí tài khoản Shopee
- Bước 3 : Mở Pycharm Community Edition
Hình 73 : Giao diện Pycharm Community Edition
- Bước 4 : Tạo 1 Project mới tên webdriver, có sẵn môi trường chromedriver.exe
Hình 74 : Giao diện tạo Project mới
- Bước 5 : Tạo 1 file Python mới
Hình 75 : Tạo file Python mới
- Bước 6 : Kiểm tra thư viên Selenium và thư viện Webdriver_manger đã được thêm vào file bằng cách nhấn tổ hợp phím Ctrl+Alt+S, vào Project đã tạo , chọn Python Interpreter
Hình 76 :Giao diện thêm thư viện
- Bước 7 : Viết code from selenium import webdriver from webdriver_manager.chrome import ChromeDriverManager from selenium.webdriver.chrome.service import Service import time
# Khởi tạo đối tượng Service chrome_service = Service(executable_path=ChromeDriverManager().install())
# Khởi tạo trình duyệt Chrome với đối tượng Service mới driver = webdriver.Chrome(executable_path='venv/chromedriver') from webdriver_manager.chrome import ChromeDriverManager
# Khởi tạo trình duyệt Chrome driver = webdriver.Chrome(ChromeDriverManager().install())
# Mở trang đăng nhập của Shopee driver.get('https://shopee.vn/buyer/signup?next=https%3A%2F%2Fshopee.vn
# Nhập số điện thoại phone_input = driver.find_element(by='name', value='phone') phone_input.send_keys('eee') time.sleep(2)
# Nhấp vào nút "Đăng kí" login_button = driver.find_element(by='xpath', value='//*[@id="main"]/div/div[2]/div/div/div/form/div/div[2]/button') login_button.click()
# Kiểm tra xem trang hiện tại có thông báo lỗi không try: error_message = driver.find_element(by='xpath', value='//*[@id="main"]/div/div[2]/div/div/div/form/div/div[2]/div[2]/ div[2]') if (error_message is not None): print('Thông báo lỗi nhập ký tự:', error_message.text) else: print('Không có thông báo lỗi ',error_message.text) except: pass
# Đóng trình duyệt driver.quit()
- Bước 8 : Sử dụng tổ hợp phím Shift+F10 để chạy chương trình
Test Case 2: Nhập số điện thoại không thiếu ký tự số
- Bước 1 : Vào trang web shoppe theo đường link : https://shopee.vn/
- Bước 2 : Click vào nút Đăng kí
Hình 78 :Giao diện đăng kí tài khoản Shopee
- Bước 3 : Mở Pycharm Community Edition
Hình 79 : Giao diện Pycharm Community Edition
- Bước 4 : Tạo 1 Project mới tên webdriver, có sẵn môi trường chromedriver.exe
Hình 80 : Giao diện tạo Project mới
- Bước 5 : Tạo 1 file Python mới
Hình 81 : Tạo file Python mới
- Bước 6 : Kiểm tra thư viên Selenium và thư viện Webdriver_manger đã được thêm vào file bằng cách nhấn tổ hợp phím Ctrl+Alt+S, vào Project đã tạo , chọn Python Interpreter
Hình 82 :Giao diện thêm thư viện
- Bước 7 : Viết code from selenium import webdriver from webdriver_manager.chrome import ChromeDriverManager from selenium.webdriver.chrome.service import Service import time
# Khởi tạo đối tượng Service chrome_service = Service(executable_path=ChromeDriverManager().install())
# Khởi tạo trình duyệt Chrome với đối tượng Service mới driver = webdriver.Chrome(executable_path='venv/chromedriver') from webdriver_manager.chrome import ChromeDriverManager
# Khởi tạo trình duyệt Chrome driver = webdriver.Chrome(ChromeDriverManager().install())
# Mở trang đăng nhập của Shopee driver.get('https://shopee.vn/buyer/signup?next=https%3A%2F%2Fshopee.vn
# Nhập số điện thoại phone_input = driver.find_element(by='name', value='phone') phone_input.send_keys('09654') time.sleep(2)
# Nhấp vào nút "Đăng kí" login_button = driver.find_element(by='xpath', value='//*[@id="main"]/div/div[2]/div/div/div/form/div/div[2]/button') login_button.click()
# Kiểm tra xem trang hiện tại có thông báo lỗi không try: error_message = driver.find_element(by='xpath', value='//*[@id="main"]/div/div[2]/div/div/div/form/div/div[2]/div[2]/ div[2]') if (error_message is not None): print('Thông báo lỗi nhập ký tự:', error_message.text) else: print('Không có thông báo lỗi ',error_message.text) except: pass
# Đóng trình duyệt driver.quit()
- Bước 8 : Sử dụng tổ hợp phím Shift+F10 để chạy chương trình
Test Case 3: Nhập số điện thoại không thuộc nhà mạng
- Bước 1 : Vào trang web shoppe theo đường link : https://shopee.vn/
- Bước 2 : Click vào nút Đăng kí
Hình 84 :Giao diện đăng kí tài khoản Shopee
- Bước 3 : Mở Pycharm Community Edition
Hình 85 : Giao diện Pycharm Community Edition
- Bước 4 : Tạo 1 Project mới tên webdriver trong thư mục , có sẵn môi trường chromedriver.exe
Hình 86 : Giao diện tạo Project mới
- Bước 5 : Tạo 1 file Python mới
Hình 87 : Tạo file Python mới
- Bước 6 : Kiểm tra thư viên Selenium và thư viện Webdriver_manger đã được thêm vào file bằng cách nhấn tổ hợp phím Ctrl+Alt+S, vào Project đã tạo , chọn Python Interpreter
Hình 88 :Giao diện thêm thư viện
- Bước 7 : Viết code from selenium import webdriver from webdriver_manager.chrome import ChromeDriverManager from selenium.webdriver.chrome.service import Service import time
# Khởi tạo đối tượng Service chrome_service = Service(executable_path=ChromeDriverManager().install())
# Khởi tạo trình duyệt Chrome với đối tượng Service mới driver = webdriver.Chrome(executable_path='venv/chromedriver') from webdriver_manager.chrome import ChromeDriverManager
# Khởi tạo trình duyệt Chrome driver = webdriver.Chrome(ChromeDriverManager().install())
# Mở trang đăng nhập của Shopee driver.get('https://shopee.vn/buyer/signup?next=https%3A%2F%2Fshopee.vn
# Nhập số điện thoại phone_input = driver.find_element(by='name', value='phone') phone_input.send_keys('4545454545') time.sleep(2)
# Nhấp vào nút "Đăng kí" login_button = driver.find_element(by='xpath', value='//*[@id="main"]/div/div[2]/div/div/div/form/div/div[2]/button') login_button.click()
# Kiểm tra xem trang hiện tại có thông báo lỗi không try: error_message = driver.find_element(by='xpath', value='//*[@id="main"]/div/div[2]/div/div/div/form/div/div[2]/div[2]/ div[2]') if (error_message is not None): print('Thông báo lỗi nhập ký tự:', error_message.text) else: print('Không có thông báo lỗi ',error_message.text) except: pass
# Đóng trình duyệt driver.quit()
- Bước 8 : Sử dụng tổ hợp phím Shift+F10 để chạy chương trình
- Giao diện rõ ràng, dễ hiểu, đơn giản.
- Khi phóng to hay thu nhỏ màn hình thì giao diện không bị vỡ
Nhận xét chức năng : Trong quá trình thực hiện test thực nghiệm cho chức năng đăng nhập tài khoản Shopee của khách hàng qua email, số điện thoại, tên đăng nhập Hệ thống bình thường không gặp lỗi
So sánh với Selenium IDE :
- Thời gian thực thi nhanh
- Cần có kiến thức về ngôn ngữ lập trình
- Không có cơ chế tích hợp để ghi lại các thông điệp thời gian chạy và tạo ra các kết quả kiểm tra.
- Luôn cập nhật môi trường kiểm thử khi có phiên bản trình duyệt mới
KIẾN THỨC LĨNH HỘI VÀ BÀI HỌC KINH NGHIỆM
Kết quả đạt được
- Trình bày được các vấn đề về kiểm thử phần mềm, quy trình và phương pháp kiểm thử phần mềm.
- Giới thiệu về kiểm thử tự động với công cụ kiểm thử tự động Selenium.
- Tìm hiểu 3 phần mềm kiểm thử là :Selenium IDE, Selenium RC, Selenium WebDriver.
- Từ những kiến thức đã tìm hiểu được, ứng dụng công cụ Selenium IDE và Selenium WebDriver vào kiểm thử tự động website Shoppe
- Khóa luận trình bày súc tích tổng hợp được các vấn đề chính của kiểm thử phần mềm, giới thiệu được một công cụ phổ biến trong số các công cụ kiểm thử tự động đồng thời có thể được coi là một tài liệu hướng dẫn sử dụngSelenium bằng tiếng Việt để tham khảo.
Hạn chế
- Mặc dù đã cố gắng rất nhiều trong thời gian thực hiện, tuy nhiên bản báo cáo không thể tránh khỏi những hạn chế và thiếu sót.
- Bài tập lớn dừng ở việc tìm hiểu 3 công cụ của bộ công cụ Selenium là : Selenium IDE, Selenium RC, Selenium WebDriver
- Ứng dụng 2 công cụtrong tổng số 4 công cụ của bộ Selenium, đó là :
Selenium IDE và Selenium WebDriver.
- Nhóm đã ứng dụng kiểm thử tự động trên 3 chức năng cơ bản của website là : Đăng nhập tài khoản, đăng ký tài khoản và mua hàng
Định hướng phát triển
Trong thời gian sau này, các thành viên trong nhóm 11 sẽ tiếp tich kiểm thử chức năng của website “Shopee” và tìm hiểu chuyên sâu về kiểm thử phần mềm, tìm hiểu hết được các bộ công cụ của Selenium Và tìm hiểu thêm nhiều bộ công cụ kiểm thử tự động khác nữa Ứng dụng công cụ kiểm thử tự động trên các hệ thống lớn hơn Nhằm nâng cao kỹ năng và kinh nghiệm kiểm thử, phục vụ cho công việc, định hướng nghề nghiệp trong tương lai
PHẦN 7 PHỤ LỤC VÀ TÀI LIỆU THAM KHẢO
PHẦN 2 KIẾN THỨC NỀN TẢNG 3
2.1 Quy trình kiểm thử phần mềm 3
2.1.2 Test Planning (Lập kế hoạch kiểm thử) 4
2.1.3 Test Case Development (Phát triển kịch bản kiểm thử) 4
2.1.4 Environment Setup (Thiết lập môi trường kiểm thử) 5
2.1.5 Test Execution (Thực hiện kiểm thử) 5
2.1.6 Test Cycle Closure (Kết thúc chu kỳ kiểm thử) 6
2.2.1 Kiểm thử đường cơ bản – đồ thị dòng 7
2.2.2 Kiểm thử dựa trên luồng điều khiển 8
3.1 Giới thiệu chung về Selenium 10
PHẦN 4 GIỚI THIỆU VỀ SELENIUM IDE VA MÔI TRƯỜNG CÀI DẶT 12
4.1 Giới thiệu về Selenium IDE 12
4.2 MOI trường cài đặt Selenium IDE trên trình duyệt Chrome 12
4.3 Ưu va nhược điểm của Selenium IDE 14
4.4 Giới thiệu Selenium RC, Selenium Webdriver và môi trường cài đặt 14
4.4.1 Giới thiệu về Selenium RC, Selenium WebDriver 14
4.4.2 Cài đặt Selenium RC và Selelenium WebDriver với ngôn ngữ Java 17
4.4.3 Ưu và nhược điểm của Selenium WebDriver 20
PHẦN 5 ỨNG DỤNG SELENIUM IDE, SELENIUM RC VA SELENIUM
WEBDRIVER VAO KIỂM THỬ WEBSITE 21
5.2 Lập kế hoạch kiểm thử 22
5.3 Trịnh Bảo Kiên, test chức năng đăng ký tài khoản Shopee qua số điện thoại sử dụng Selenium IDE 22
5.4 Nguyễn Hữu Đạt, test chức năng đăng nhập bằng email, số điện thoại, tên đăng nhập sử dụng
5.5 Nguyễn Tuấn Nam, test chức năng mua hàng trong giỏ hàng Shopee 42
5.6 Nguyễn Quang Minh, test chức năng đăng ký tài khoản qua số điện thoại sử dụng Selenium Webdriver 52
PHẦN 6 KIẾN THỨC LĨNH HỘI VÀ BÀI HỌC KINH NGHIỆM 65
PHẦN 7 PHỤ LỤC VÀ TÀI LIỆU THAM KHẢO 66
7.2 Phụ lục hình ảnh Hình 1: Quy trình kiểm thử phần mềm 3
Hình 2 : Phân tích yêu cầu 4
Hình 3 : Biểu mẫu Test Case cơ bản với 5 thành phần chính 5
Hình 4: Các loại nút trong đồ thị dòng điều khiển 7
Hình 5: Các kiểu cấu trúc của đồ thị dòng 8
Hình 6: Đồ thị dòng điều khiển nhị phân 8
Hình 7: Thành phần của Selenium 11
Hình 8: Truy cập trang Download tiện ích Selenium IDE 13
Hình 9: Thêm tiện ích Selenium IDE vào Chrome 13
Hình 10: Xác nhận cài đặt tiện ích Selenium IDE vào trình duyệt 14
Hình 11: Giao diện khởi chạy của tiện ích Selenium IDE 14
Hình 12: Kiến trúc của Selenium RC 15
Hình 13: Kiến trúc của Selenium WebDriver 16
Hình 14: Cài đặt Chrome Brower 18
Hình 15: Cài đặt Chrome Driver 18
Hình 16: Tải Pycharm Community Edition 19
Hình 17: Giải nén giao diện import thư viên Pycharm 19
Hình 18: Gộp chung file chromedriver vào project tạo mới 20
Hình 19: Giao diện trang chủ website Shopee 21
Hình 20: Giao diện đăng kí tài khoản Shopee 23
Hình 21: Giao diện Tiện ích của Chrome 23
Hình 22: Giao diện Selenium IDE 24
Hình 23: Giao diện tạo tên project 24
Hình 24: Giao diện Selenium IDE 25
Hình 25: Giao diện chạy test case 1 25
Hình 26: Giao diện đăng kí tài khoản Shopee 26
Hình 27: Giao diện Tiện ích của Chrome 26
Hình 28: Giao diện Selenium IDE 27
Hình 29: Giao diện tạo tên project 27
Hình 31: Giao diện chạy test case 2 28
Hình 32: Giao diện đăng kí tài khoản Shopee 29
Hình 33: Giao diện Tiện ích của Chrome 29
Hình 34: Giao diện Selenium IDE 30
Hình 35: Giao diện tạo tên project 30
Hình 37: Giao diện chạy test case 3 31
Hình 38: Giao diện đăng nhập của Shopee 34
Hình 39: Giao diện tiện ích của Microsoft Edge 34
Hình 40: Giao diện Selenium IDE 34
Hình 41: Giao diện tạo tên project 35
Hình 42: Giao diện Selenium IDE 35
Hình 43: Giao diện chạy test case 1 36
Hình 44: Giao diện đăng nhập của Shopee 36
Hình 45: Giao diện tiện ích của Microsoft Edge 37
Hình 46: Giao diện Selenium IDE 37
Hình 47: Giao diện tạo tên project 38
Hình 48: Giao diện Selenium IDE 38
Hình 49: Giao diện chạy test case 2 39
Hình 50: Giao diện đăng nhập của Shopee 39
Hình 51: Giao diện tiện ích của Microsoft Edge 40
Hình 52: Giao diện Selenium IDE 40
Hình 53: Giao diện tạo tên project 41
Hình 54: Giao diện Selenium IDE 41
Hình 55: Giao diện chạy test case 3 42
Hình 56: Giao diện Selenium IDE 44
Hình 57: Giao diện tạo tên project 44
Hình 58: Giao diện Selenium IDE 45
Hình 59: Giao diện chạy test case 1 45
Hình 60 :Giao diện tiện ích của Microsoft Edge 46
Hình 61 : Giao diện Selenium IDE 46
Hình 62: Giao diện tạo tên project 47
Hình 63 : Giao diện Selenium IDE 47
Hình 64 : Giao diện chạy test case 2 48
Hình 65: Thêm sản phẩm vào giỏ hàng 48
Hình 66 : Giao diện tiện ích của Microsoft Edge 49
Hình 67 : Giao diện Selenium IDE 49
Hình 68 :Giao diện tạo tên project 50
Hình 69 : Giao diện Selenium IDE 50
Hình 70 : Giao diện chạy test case 3.1 51
Hình 71: Giao diện Selenium IDE 51
Hình 72 :Giao diện đăng kí tài khoản Shopee 53
Hình 73 : Giao diện Pycharm Community Edition 54
Hình 74 : Giao diện tạo Project mới 54
Hình 75 : Tạo file Python mới 55
Hình 76 :Giao diện thêm thư viện 55
Hình 78 :Giao diện đăng kí tài khoản Shopee 57
Hình 79 : Giao diện Pycharm Community Edition 57
Hình 80 : Giao diện tạo Project mới 58
Hình 81 : Tạo file Python mới 58
Hình 82 :Giao diện thêm thư viện 59
Hình 84 :Giao diện đăng kí tài khoản Shopee 61
Hình 85 : Giao diện Pycharm Community Edition 61
Hình 86 : Giao diện tạo Project mới 62
Hình 87 : Tạo file Python mới 62
Hình 88 :Giao diện thêm thư viện 63