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

tên đề tài tìm hiểu về công cụ kiểm thử selenium

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

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

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

THÔNG TIN TÀI LIỆU

Nội dung

Kiểm thử là gì?Kiểm thử phần mềm là một quá trình xác minh và xác thực rằng phần mềm đáp ứng các yêu cầu được đặt ra và đảm bảo rằng không có lỗi hay khiếm khuyết.Các hoạt động chính của

Trang 1

ĐẠI HỌC DUY TÂN KHOA CÔNG NGHỆ THÔNG TIN

Công Cụ & Phương Pháp Thiết Kế - Quản Lý (Phần Mềm) – CS 434 E

Trang 2

Giới thiệu công cụ kiểm thử Selenium

I)Nêu các nội dung cơ bản của kiểm thử 4

Kiểm thử là gì? 4

Tầm quan trọng của kiểm thử: 4

Một số phương pháp, kỹ thuật kiểm thử phổ biến: 4

II) Giới thiệu công cụ Selenium 5

Giới thiệu công cụ: 5

Hướng dẫn sử dụng công cụ Selenium: 6

III) Chạy thực nghiệm với các ví dụ minh họa 24

Chạy thử với testcase 1 : Thông tin đăng nhập không hợp lệ 25

Chạy thử với testcase 2 : Bao gồm @ trong địa chỉ email 26

Chạy thử với testcase 3 : Các ký tự sau @ không hợp lệ 27

Chạy thử với testcase 4 : Mật khẩu không được bỏ trống 28

Chạy thử với testcase 5 : Tài khoản không được bỏ trống 29

Chạy thử với testcase 6 : Đăng nhập thành công 30

Tổng kết 31

Trang 3

Bảng phân công công việc

Bảng phân công công việc

Nguyễn Hoàng Lâm Tấn ( nhóm

Trang 4

I) Nêu các nội dung cơ bản của kiểm thử. Kiểm thử là gì?

Kiểm thử phần mềm là một quá trình xác minh và xác thực rằng phần mềm đáp ứng các yêu cầu được đặt ra và đảm bảo rằng không có lỗi hay khiếm khuyết.

Các hoạt động chính của kiểm thử phần mềm bao gồm:

 Kiểm tra: Thực thi phần mềm với các đầu vào và điều kiện khác nhau để xác minh rằng phần mềm hoạt động như mong đợi.

 Phân tích: Xác định các lỗi, khiếm khuyết hoặc các yêu cầu còn thiếu so với yêu cầu thực tế.

 Quan sát: Ghi lại hành vi của phần mềm khi chạy.

 Đánh giá: Xác định mức độ nghiêm trọng của các lỗi và khiếm khuyết.

Người kiểm thử phần mềm (Tester) sử dụng kết hợp các công cụ thủ công và tự động để thực hiện các hoạt động kiểm thử.

Tầm quan trọng của kiểm thử:

 Phát hiện và sửa chữa các lỗi phần mềm, đảm bảo phần mềm hoạt động đúng như mong đợi.

 Đảm bảo chất lượng phần mềm, ngăn ngừa các rủi ro liên quan đến phần mềm, chẳng hạn như mất dữ liệu, gián đoạn dịch vụ, thiệt hại tài chính,

 Cải thiện trải nghiệm người dùng, mang lại sự hài lòng cho khách hàng Một số lý do cụ thể khiến việc kiểm thử ngày càng trở nên quan trọng:

 Phần mềm ngày càng trở nên phức tạp và khó phát triển hơn  Người dùng ngày càng đòi hỏi cao hơn về chất lượng phần mềm  Các mối đe dọa bảo mật ngày càng gia tăng.

 Thị trường cạnh tranh ngày càng gay gắt.

Một số phương pháp, kỹ thuật kiểm thử phổ biến:

1 Kiểm thử đơn vị (Unit Testing): Đây là quá trình kiểm thử từng phần code (đơn vị code) riêng lẻ để đảm bảo tính đúng đắn của chúng Các thư viện như JUnit, NUnit, và pytest thường được sử dụng cho kiểm thử đơn vị.

2 Kiểm thử tích hợp (Integration Testing): Quá trình kiểm tra cách các đơn vị code tương tác với nhau khi kết hợp lại để xem liệu chúng hoạt động cùng nhau đúng cách hay không Các kỹ thuật kiểm thử tích hợp bao gồm kiểm thử từ trên xuống (top-down) và kiểm thử từ dưới lên (bottom-up).

3 Kiểm thử hộp đen (Black Box Testing): Trong phương pháp này, kiểm thử được thực hiện mà không cần biết cách thức hoạt động nội bộ của phần mềm Tester chỉ quan tâm đến đầu vào và đầu ra.

Trang 5

4 Kiểm thử hộp trắng (White Box Testing): Tester kiểm tra phần mềm dựa trên kiến thức về cấu trúc nội bộ của nó Điều này thường đòi hỏi kiến thức về mã nguồn và cách hoạt động của mã.

5 Kiểm thử chức năng (Functional Testing): Kiểm tra các chức năng cụ thể của phần mềm để đảm bảo rằng chúng hoạt động theo yêu cầu Đây là loại kiểm thử phổ biến nhất và bao gồm kiểm thử hợp đồng (contract testing), kiểm thử giao diện (UI testing), và nhiều loại khác.

6 Kiểm thử hiệu suất (Performance Testing): Kiểm tra hiệu suất của phần mềm dưới các tải công việc khác nhau để đảm bảo rằng nó đáp ứng được yêu cầu về tốc độ và khả năng mở rộng.

7 Kiểm thử bảo mật (Security Testing): Đây là quá trình kiểm tra các lỗ hổng bảo mật trong phần mềm để đảm bảo rằng nó an toàn trước các cuộc tấn công.

8 Kiểm thử tự động (Automated Testing): Sử dụng công cụ và kịch bản kiểm thử tự động để thực hiện các kiểm thử một cách tự động Điều này giúp tiết kiệm thời gian và tăng tính nhất quán của kiểm thử.

9 Kiểm thử xám nhạt (Exploratory Testing): Kiểm thử người dùng thực hiện mà không có kịch bản kiểm thử cụ thể Tester sử dụng trí tưởng tượng để khám phá các khả năng của phần mềm.

10 Kiểm thử liên quan đến dữ liệu (Data-Driven Testing): Sử dụng dữ liệu đầu vào từ các nguồn khác nhau để kiểm tra phản ứng của phần mềm.

11 Kiểm thử phi chức năng (Non-Functional Testing): Kiểm tra các yếu tố phi chức năng của phần mềm như khả năng mở rộng, khả năng phục hồi sau lỗi (recovery testing), và khả năng tương thích (compatibility testing).

Trong đó công cụ Selenium thuộc nhóm kiểm thử tự động (Automated Testing).

II) Giới thiệu công cụ Selenium Giới thiệu công cụ:

Selenium là một công cụ tự động hóa việc kiểm thử ứng dụng web Nó cho phép người dùng tạo và thực thi các kịch bản kiểm thử trong nhiều ngôn ngữ lập trình khác nhau như Java, C#, Python, Ruby, JavaScript, v.v.

Được sử dụng rộng rãi để kiểm thử chức năng của các ứng dụng web trong quá trình phát triển phần mềm Nó tự động thao tác trên trình duyệt web như người dung thực tế , chẳng hạn như điều hướng đến 1 trang web cụ thể, nhập liệu vào các trường đầu vào, nhấn nút, kiểm tra nội

Trang 6

Công cụ này được hỗ trợ các trình duyệt phổ biến như Chrome, Firefox, Safari và Internet Explorer Nó cung cấp các API phong phú để điều khiển các hoạt động của trình duyệt và truy cập vào các thành phần HTML của trang web như các phần tử form, các liên kết, các bảng, v.v Được đánh giá cao về tính linh hoạt và dễ sử dụng Nó giúp tăng cường hiệu suất và độ chính xác của quy trình kiểm thử tự động, giúp nhóm phát triển phần mềm tiết kiệm thời gian và công sức.

Sử dụng trong quy trình kiểm thử liên tục (continuous integration) để tự động kiểm tra các chức năng quan trọng của ứng dụng web trong quá trình triển khai và đảm bảo rằng những thay đổi mới không gây ra vấn đề hoặc hư hỏng cho ứng dụng

Hướng dẫn sử dụng công cụ Selenium:

Tính năng của Selenium IDE

#1 Menu bar

Menu bar được đặt ở trên đầu cửa sổ Selenium IDE và thường gồm 5 module sau:

 File Menu

Trang 7

 New Test Case: Tạo test case, mở các test case tạo trước đó, lưu thông tin các test case hiện tại.

 Export Test Case As and Export Test Suite As: là tính năng hỗ trợ xuất ra các test case, bộ test case với các ngôn ngữ lập trình tương thích với Selenium RC và WebDriver Nó cũng cho phép người dùng tự do lựa chọn giữa các Framework test unit như jUnit, TestNG Do đó test case IDE có thể được export cho sự kết hợp của ngôn ngữ lập trình, framework test và tool trong gói Selenium.

 Lựa chọn Export Test Case As sẽ chỉ xuất và chuyển đổi các test case Selenium IDE hiện đang mở.

 Lựa chọn Export Test Suite As sẽ xuất và chuyển đổi tất cả test case liên quan đế bộ test hiện đang mở.

 Đóng test case.

Trang 8

Test case Selenium IDE có thể lưu với các định dạng sau:

Test case Selenium IDE có thể xuất với các định dạng/ngôn ngữ lập trình sau:

 Java (IDE xuất bằng Java).

 rb (IDE xuất bằng Ruby).

 py (IDE xuất bằng Python).

 cs (IDE xuất bằng C#).

Trang 9

Lưu ý: các phiên bản mới sắp tới của Selenium IDE có thể sẽ hỗ trợ nhiều định dạng hơn.

1.2 Edit Menu

Menu Edit cung cấp các lựa chọn: Undo (Hoàn tác), Redo (Làm lại), Cut, Copy, Paste, Delete, và Select All, tất cả đều giống như những menu Edit khác Trong đó, đáng chú ý:

 Insert New Command - Cho phép người dùng thêm các câu lệnh mới/ các bước test mới ở bất cứ chỗ nào trong test case hiện tại.

 Insert New Comment - Cho phép người dùng thêm các comment ở bất cứ chỗ nào trong test case hiện tại để mô tả các bước thực hiện tiếp theo.

Insert New Command

Câu lệnh mới sẽ được thêm vào bên trên dòng lệnh/bước được chọn.

Trang 10

Người dùng có thể thêm action (hành động), taget (đích) và value (giá trị)

Insert New Comment

Cách thức thêm comment tương tự như thêm command Dòng text màu tím chính là nội dung comment.

1.3 Actions Menu

Trang 11

Menu Actions bao gồm các tác vụ sau:

 Record - Tùy chọn Record là để đưa Selenium IDE vào chế độ ghi Do đó, bất cứ hành động nào của user trên trình duyệt Firefox đều được ghi lại trong IDE.

 Play entire test suite - Tùy chọn để chạy lại tất cả các testcase Selenium IDE có liên quan đến bộ kiểm thử hiện tại.

 Play current test case - Tùy chọn chạy lại testcase Selenium IDe hiện tại đã được ghi lại/ tạo ra bởi người dùng.

 Pause/ Resume - User có thể dừng/ khôi phục testcase ở bất kỳ thời điểm nào trong khi đang thực hiện.

 Toggle Breakpoint - User có thể đặt 1 hoặc nhiều breakpoint để dừng thực thi ở bất cứ bước kiểm tra nào trong quá trình thực hiện.

 Set/ Clear Start Point - User có thể đặt điểm bắt đầu thực thi ở bất cứ bước kiểm tra nào Nó cho phép người dùng thực hiện testcase từ điểm bắt đầu cho các lần chạy tiếp theo.

 Để xử lý việc tải trang/ phần tử, người dùng cần đặt tốc độ thực thi từ nhanh nhất đến thấp nhất cho phù hợp với sự phản hồi của ứng dụng đang test.

1.4) Option Menu

Trang 12

Menu Options cho phép người dùng thiết đặt và thực hiện các cài đặt khác nhau của Selenium IDe Menu Options được gợi ý như một menu quan trọng nhất và hữu ích nhất

Trang 13

#2 Base URL Bar

Thanh Base URL về cơ bản giống với thanh địa chỉ Nó ghi nhớ các trang web đã từng truy cập trước đây vì thế việc điều hướng trở nên dễ dàng hơn.

Trang 14

Hiện nay, bất cứ khi nào người dùng sử dụng lệnh "open" của Selenium IDE mà không có giá trị mục tiêu, URL cơ sở sẽ được chạy trên trình duyệt.

#3 Toolbar

Toolbarr cung cấp các tùy chọn thích hợp để ghi và thực thi test case.

 Playback Speed - Lựa chọn này cho phép người dùng quản lý tốc độ thực thi test case từ nhanh đến chậm.

Trang 15

 Play test suite - Lựa chọn này cho phép người dùng thực hiện tất cả testcase thuộc bộ kiểm thử hiện tại.

 Play test case - Lựa chọn này cho phép người dùng thực hiện các testcase hiện được chọn.

 Pause - Lựa chọn này cho phép người dùng tạm dừng thực thi đang chạy.

 Step - Lựa chọn này cho phép người dùng bước vào bước kiểm tra.

 Rollup - Lựa chọn cho phép người dùng kết hợp nhiều bước kiểm thử để hoạt động giống như một câu lệnh duy nhất.

 Record - Lựa chọn cho phép người dùng bắt đầu hoặc dừng thao tác ghi hành động của người dùng Nếu biểu tượng có màu hồng nhưng rỗng màu ở giữa: bắt đầu ghi, biểu tưởng được phủ kín màu đỏ: dừng ghi Selenium IDE mở ra luôn ở chế độ mặc định là record.

#4 Editor

Editor là một phần nơi mà IDE ghi testcase Từng hành động của người dùng được ghi vào editor theo đúng thứ tự như khi họ thực hiện.

Editor có 2 cách để xem như sau: 4.1 Table View

Trang 17

Test case pane bao gồm tất cả test case được ghi lại bởi IDE Công cụ có khả năng mở nhiều hơn một test case vào cùng 1 thời điểm ở Test case pane và người dùng có thể dễ dàng trộn giữa các test case Các bước kiểm thử của Test cases được tổ chức trong phần biên tập - Editor.

Selenium IDE có thực hiện mã hóa màu sắc để phục vụ việc báo cáo Sau khi thực thi, test case được đánh dấu màu đỏ hoặc màu xanh.

 Màu đỏ tượng trưng cho việc chạy không thành công, ví dụ: lỗi test case

 Màu xanh tượng trưng cho việc chạy test case thành công Để mở hộp Selenium IDE Options, thực hiện theo các bước:

1 Click vào menu Options 2 Click vào Options

Hộp chọn Selenium IDE Options xuất hiện.

Trang 18

Selenium IDE Options giúp người dùng thực hiện với các cài đặt chung, định dạng, plug-in, loại định vị sẵn có Cùng tập trung vào một số các tab quan trọng.

Genenal Settings

Trang 19

 Default Timeout Value - Thể hiện bằng thời gian (tính theo mili giây) mà selenium sẽ đợi để thực hiện 1 bước kiểm tra trước khi nón tạo ra lỗi Thời gian timeout chuẩn là 30000 mili giây (30 giây) Người dùng có thể sử dụng tính năng này bằng cách thay đổi thời gian mặc định trong trường hợp các phần tử của web mất nhiều hơn/ ít hơn thời gian để load.

 Extensions - Selenium IDE hỗ trợ một loại các mở rộng để nâng cao khả năng của tool core bằng cách gia tăng tiềm lực của nó Những phần mở rộng này đơn giản là các file JavaScript Chúng có thể thiết lập bằng cách nhập các đường dẫn tuyệt đối vào trường đó.

 Remember base URL - Lựa chọn option này cho phép Selenium IDE ghi nhớ đường dẫn mỗi khi thực hiện chạy Do đó, khuyến khích user tích chọn Không lựa chọn các option này sẽ để trường URL rỗng và nó sẽ chỉ được điền khi chúng ta chạy một URL khác trên trình duyệt.

 Record assertTitle automatically - Lựa chọn này sẽ tự động thêm câu lệnh assertTitle với giá trị mục tiêu cho từng trang web đã truy cập.

Trang 20

 Enable experimental features - Lựa chọn trường này cho lần import đầu tiên các định dạng có sẵn vào SElenium IDE.

Tab Formats hiển thị tất cả các định đạng sẵn có của Selenium IDE Người dùng bị tính thuế với việc kích hoạt hoặc vô hiệu hóa bất kỳ định dạng nào.

Selenium IDE Plugins

Trang 21

Tab Plug-ins hiển thị các plug-ins hỗ trợ cho Firefox mà đã được cài đặt theo yêu cầu của Selenium IDE Một số các plug-ins có sẵn để trợ giúp các nhu cầu khác nhau, do đó chúng ta có thể cài đặt các add-ons giống như chúng ta đã làm với các plug-ins khác Một trong các plugin được giới thiệu gần đây laf "File Logging"

Selenium IDE sẽ được chia thành các nhóm plug-ins sau:

 Selenium IDE: Các định dạng của Ruby

 Selenium IDE: Các định dạng của Python

 Selenium IDE: Các định dạng của Java

 Selenium IDE: Các định dạng C#

Các format này phục vụ cho việc chuyển đổi test case HTML thành các định dạng lập trình mong muốn.

Trang 22

Locator Builders cho phép chúng ta ưu tiên thứ tự các loại locator mà được sinh ra trong khi record hành động của người dùng Các locator là một bộ các tiêu chuẩn bằng cách đó chúng ta xác định được một phần tử trên trang web.

III) Chạy thực nghiệm với các ví dụ minh họa.

Chạy thực nghiệm công cụ kiểm thử Selenium IDE với chức năng đăng nhập tại trang web https://nxbkimdong.com.vn/

Các kịch bản kiểm thử chức năng đăng nhập

Kết Quả

Trang 23

1 Nguyenson16@gmail.com 123 Thông tin đăng nhập không hợp lệ 2 Nguyenson16gmail.com 29092003 Vui lòng bao gồm @ trong địa chỉ

email

4 Nguyenson16@gmail.com Mật khẩu không được bỏ trống

6 Nguyenson16@gmail.com 29092003 Đăng nhập thành công

Chạy thử với testcase 1 : Thông tin đăng nhập không hợp lệ

- Nhập vào phần id=CustomerEmail trên cộng cụ Selenium IDE với giá trị Nguyenson16@gmail.com

- Nhập vào phần id=CustomerPassword trên cộng cụ Selenium IDE với giá trị 123

*) Kết quả dưới hình minh họa :

Trang 24

Chạy thử với testcase 2 : Bao gồm @ trong địa chỉ email

- Nhập vào phần id=CustomerEmail trên cộng cụ Selenium IDE với giá trị Nguyenson16gmail.com

- Nhập vào phần id=CustomerPassword trên cộng cụ Selenium IDE với giá trị 29092003

Trang 25

*) Kết quả dưới hình minh họa :

Trang 26

Chạy thử với testcase 3 : Các ký tự sau @ không hợp lệ

- Nhập vào phần id=CustomerEmail trên cộng cụ Selenium IDE với giá trị *&@# - Nhập vào phần id=CustomerPassword trên cộng cụ Selenium IDE với giá trị 29092003

*) Kết quả dưới hình minh họa :

Trang 27

Chạy thử với testcase 4 : Mật khẩu không được bỏ trống

- Nhập vào phần id=CustomerEmail trên cộng cụ Selenium IDE với giá trị Nguyenson16@gmail.com

- Để trống phần id=CustomerPassword trên cộng cụ Selenium IDE

*) Kết quả dưới hình minh họa :

Trang 28

Chạy thử với testcase 5 : Tài khoản không được bỏ trống

- Bỏ trống phần id=CustomerEmail trên cộng cụ Selenium IDE

Trang 29

- Nhập vào phần id=CustomerPassword trên cộng cụ Selenium IDE với giá trị 29092003

*) Kết quả dưới hình minh họa :

Trang 30

Chạy thử với testcase 6 : Đăng nhập thành công

- Nhập vào phần id=CustomerEmail trên cộng cụ Selenium IDE với giá trị Nguyenson16@gmail.com

- Nhập vào phần id=CustomerPassword trên cộng cụ Selenium IDE với giá trị 29092003 *) Kết quả dưới hình minh họa :

Ngày đăng: 24/04/2024, 16:24

HÌNH ẢNH LIÊN QUAN

Bảng phân công công việc - tên đề tài tìm hiểu về công cụ kiểm thử selenium
Bảng ph ân công công việc (Trang 3)

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

TÀI LIỆU LIÊN QUAN

w