Nghiên Cứu Công Cụ Selenium và Áp Dụng Kiểm Thử Ứng Dụng Web

Chuyên khảo phân tích Nguyên cứu công cụ seleninum và áp dụng kiểm thử ứng dụng web, đánh giá các khía cạnh quan trọng, đề xuất hướng nghiên cứu tiếp theo.

Chuyên ngành

Công Nghệ Thông Tin

Người đăng

Ẩn danh

Thể loại

Đồ Án Tốt Nghiệp

2022

114
4
0

Phí lưu trữ

35 Point

Mục lục chi tiết

LỜI CẢM ƠN

1. CHƯƠNG 1: TỔNG QUAN VỀ KIỂM THỬ PHẦN MỀM VÀ SELENIUM

1.1. Khái niệm phần mềm

1.2. Quy trình phát triển phần mềm

1.3. Lỗi phần mềm

1.4. Yêu cầu khách hàng

1.5. Đặc tả yêu cầu phần mềm

2. CHƯƠNG 2: PHÂN TÍCH VÀ XÂY DỰNG KỊCH BẢN KIỂM THỬ WEBSITE CHUANG

2.1. PHÂN TÍCH YÊU CẦU CỦA HỆ THỐNG

2.1.1. Chức năng đăng ký

2.1.2. Chức năng đăng nhập

2.1.3. Chức năng xem trang chủ

2.1.4. Chức năng đăng xuất

2.1.5. Chức năng đổi mật khẩu

2.1.6. Chức năng quên mật khẩu

2.1.7. Chức năng chỉnh sửa thông tin

2.1.8. Chức năng tìm kiếm

2.1.9. Chức năng xem chi tiết sách

2.1.10. Chức năng xem danh mục

2.1.11. Chức năng lọc sản phẩm

2.1.12. Chức năng quản lý giỏ hàng

2.1.13. Chức năng xem đơn hàng

2.1.14. Chức năng thanh toán

2.1.15. Chức năng quản lý User

2.1.16. Chức năng quản lý danh mục

2.1.17. Chức năng quản lý sách

2.1.18. Chức năng quản lý đơn đơn hàng

2.2. XÂY DỰNG KỊCH BẢN KIỂM THỬ VÀ MÔ HÌNH HÓA YÊU CẦU

2.2.1. Use case tổng quát

2.2.2. Xây dựng kịch bản kiểm thử

2.3. LƯỢC ĐỒ CƠ SỞ DỮ LIỆU

2.3.1. Mô tả sơ đồ thiết kế dữ liệu

3. CHƯƠNG 3: ỨNG DỤNG SELENIUM WEBDRIVER TRONG KIỂM THỬ WEBSITE BÁN SÁCH CHUANG

3.1. THIẾT KẾ TEST CASE CHO CÁC CHỨC NĂNG CHÍNH

3.1.1. Chức năng đăng ký

3.1.2. Chức năng thêm sản phẩm vào giỏ hàng

3.1.3. Chức năng chỉnh sửa giỏ hàng

3.1.4. Chức năng đặt hàng

3.2. HƯỚNG GIẢI QUYẾT BÀI TOÁN VÀ THỰC THI KIỂM THỬ TỰ ĐỘNG

3.2.1. Các yêu cầu công nghệ

3.2.2. Hướng thực thi kiểm thử

3.2.3. Kiểm thử trên đa trình duyệt

3.2.4. Lưu lại kết quả đầu ra

3.2.5. Báo cáo và phân tích lỗi

4. CHƯƠNG 4: THỰC NGHIỆM VÀ ĐÁNH GIÁ KẾT QUẢ

4.1. GIỚI THIỆU WEBSITE CHUANG BOOKSTORE

4.2. KIỂM THỬ TỰ ĐỘNG WEBDITE VỚI SELENIUM WEBDRIBER VÀ TESTNG

4.2.1. Chức năng đăng ký tài khoản

4.2.2. Chức năng thêm sản phẩm vào giỏ hàng

4.2.3. Chức năng chỉnh sửa giỏ hàng

4.2.4. Chức năng đặt hàng

4.3. ĐÁNH GIÁ KẾT QUẢ KIỂM THỬ

4.3.1. Kiểm thử chức năng

4.3.2. Kiểm thử phi hức năng

5. CHƯƠNG 5: KẾT QUẢ ĐẠT ĐƯỢC VÀ HƯỚNG PHÁT TRIỂN

5.1. KẾT QUẢ ĐẠT ĐƯỢC

5.2. HƯỚNG PHÁT TRIỂN

TÀI LIỆU THAM KHẢO

Tóm tắt

I. Tổng quan về Nghiên cứu Công cụ Selenium và Kiểm thử Ứng dụng Web

Nghiên cứu về Seleniumkiểm thử ứng dụng web đang trở thành một chủ đề nóng trong lĩnh vực công nghệ thông tin. Selenium là một công cụ mạnh mẽ giúp tự động hóa kiểm thử cho các ứng dụng web. Việc áp dụng công cụ này không chỉ giúp tiết kiệm thời gian mà còn nâng cao độ chính xác trong quá trình kiểm thử. Bài viết này sẽ cung cấp cái nhìn tổng quan về Selenium, vai trò của nó trong kiểm thử ứng dụng web và những lợi ích mà nó mang lại.

1.1. Khái niệm về Selenium và Kiểm thử Ứng dụng Web

Selenium là một bộ công cụ mã nguồn mở cho phép tự động hóa kiểm thử các ứng dụng web. Nó hỗ trợ nhiều ngôn ngữ lập trình và có thể chạy trên nhiều trình duyệt khác nhau. Kiểm thử ứng dụng web là quá trình xác minh và đánh giá chất lượng của ứng dụng trước khi đưa vào sử dụng.

1.2. Lợi ích của việc sử dụng Selenium trong kiểm thử

Việc sử dụng Selenium giúp giảm thiểu thời gian kiểm thử, tăng cường độ chính xác và khả năng tái sử dụng mã kiểm thử. Điều này không chỉ tiết kiệm chi phí mà còn nâng cao hiệu quả trong quy trình phát triển phần mềm.

II. Những Thách thức trong Kiểm thử Ứng dụng Web với Selenium

Mặc dù Selenium mang lại nhiều lợi ích, nhưng việc áp dụng nó trong kiểm thử ứng dụng web cũng gặp phải một số thách thức. Các vấn đề như tính tương thích giữa các trình duyệt, sự phức tạp trong việc viết kịch bản kiểm thử và việc duy trì mã kiểm thử là những khó khăn mà các kỹ sư kiểm thử thường phải đối mặt.

2.1. Tính tương thích giữa các trình duyệt

Một trong những thách thức lớn nhất khi sử dụng Selenium là đảm bảo rằng các kịch bản kiểm thử hoạt động trên tất cả các trình duyệt. Mỗi trình duyệt có cách xử lý khác nhau, điều này có thể dẫn đến sự khác biệt trong kết quả kiểm thử.

2.2. Phức tạp trong việc viết kịch bản kiểm thử

Việc viết kịch bản kiểm thử cho các ứng dụng web phức tạp có thể trở nên khó khăn. Các yếu tố như thời gian tải trang, tương tác người dùng và các yếu tố động khác cần được xem xét kỹ lưỡng.

III. Phương pháp Kiểm thử Ứng dụng Web với Selenium WebDriver

Để thực hiện kiểm thử ứng dụng web hiệu quả, việc áp dụng Selenium WebDriver là rất cần thiết. WebDriver cho phép tương tác trực tiếp với trình duyệt, giúp mô phỏng hành vi người dùng một cách chính xác. Bài viết này sẽ trình bày các phương pháp và kỹ thuật sử dụng WebDriver trong kiểm thử.

3.1. Cài đặt và cấu hình Selenium WebDriver

Để bắt đầu với Selenium WebDriver, cần cài đặt các thư viện cần thiết và cấu hình môi trường phát triển. Việc này bao gồm việc tải xuống trình điều khiển cho từng trình duyệt mà dự án sẽ kiểm thử.

3.2. Viết kịch bản kiểm thử với Selenium WebDriver

Việc viết kịch bản kiểm thử với Selenium WebDriver bao gồm việc xác định các bước cần thực hiện, từ việc mở trình duyệt, nhập dữ liệu, cho đến việc xác minh kết quả. Kịch bản này cần được thiết kế rõ ràng và dễ bảo trì.

IV. Ứng dụng Thực tiễn của Selenium trong Kiểm thử Ứng dụng Web

Selenium đã được áp dụng rộng rãi trong nhiều dự án kiểm thử ứng dụng web. Các công ty công nghệ lớn đã sử dụng Selenium để đảm bảo chất lượng sản phẩm của họ. Bài viết này sẽ trình bày một số ứng dụng thực tiễn của Selenium trong kiểm thử.

4.1. Kiểm thử chức năng với Selenium

Selenium cho phép kiểm thử chức năng của ứng dụng web một cách tự động. Các kịch bản kiểm thử có thể được thiết lập để kiểm tra các chức năng chính của ứng dụng, từ đó đảm bảo rằng mọi thứ hoạt động như mong đợi.

4.2. Kiểm thử hiệu suất với Selenium

Ngoài kiểm thử chức năng, Selenium cũng có thể được sử dụng để kiểm thử hiệu suất của ứng dụng web. Việc này giúp xác định khả năng chịu tải của ứng dụng và phát hiện các vấn đề về hiệu suất trước khi đưa vào sử dụng.

V. Kết luận và Tương lai của Nghiên cứu về Selenium

Nghiên cứu về Selenium và kiểm thử ứng dụng web đang ngày càng trở nên quan trọng trong bối cảnh công nghệ phát triển nhanh chóng. Tương lai của kiểm thử tự động sẽ tiếp tục được cải thiện với sự phát triển của các công cụ và kỹ thuật mới. Việc áp dụng Selenium sẽ giúp các kỹ sư kiểm thử nâng cao hiệu quả công việc và đảm bảo chất lượng sản phẩm.

5.1. Xu hướng phát triển của Selenium

Selenium đang không ngừng phát triển với các phiên bản mới và tính năng cải tiến. Điều này giúp nó duy trì vị thế là một trong những công cụ kiểm thử tự động hàng đầu.

5.2. Tương lai của kiểm thử tự động

Tương lai của kiểm thử tự động sẽ chứng kiến sự gia tăng trong việc áp dụng trí tuệ nhân tạo và học máy để tối ưu hóa quy trình kiểm thử. Điều này sẽ mở ra nhiều cơ hội mới cho các kỹ sư kiểm thử.

Tóm tắt và mô tả trên trang này được tạo với sự hỗ trợ của AI từ nội dung tài liệu gốc; tài liệu do người dùng đóng góp và được kiểm duyệt trước khi xuất bản. Báo lỗi nội dung.

13/07/2025
Nguyên cứu công cụ seleninum và áp dụng kiểm thử ứng dụng web

Trích đoạn nội dung tài liệu

CHƯƠNG 1: TỔNG QUAN VỀ KIỂM THỬ PHẦN MỀM VÀ SELENIUM 1. Khái niệm phần mềm Phần mềm máy tính (Computer Software) hay gọi tắt là Phần mềm (Software) là một tập hợp những câu lệnh hoặc chỉ thị (Instruction) được viết bằng một hoặc nhiều ngôn ngữ lập trình theo một trật tự xác định, và các dữ liệu hay tài liệu liên quan nhằm tự động thực hiện một số nhiệm vụ hay chức năng hoặc giải quyết một vấn đề cụ thể nào đó. Phần mềm thực hiện các chức năng của nó bằng cách gửi các chỉ thị trực tiếp đến phần cứng (hay phần cứng máy tính, Computer Hardware) hoặc bằng cách cung cấp dữ liệu để phục vụ các chương trình hay phần mềm khác. Quy trình phát triển phần mềm Quy trình phát triển phần mềm là một cấu trúc bao gồm tập hợp các thao tác và các kết quả tương quan sử dụng trong việc phát triển để sản xuất ra một sản phẩm phần mềm.

Nhìn chung, một quy trình phát triển phần mềm bao gồm các giai đoạn [7] như sau: - Giải pháp, yêu cầu: Thực hiện khảo sát chi tiết yêu cầu của khách hàng để từ đó tổng hợp vào tài liệu giải pháp. Tài liệu này phải mô tả đầy đủ các yêu cầu về chức năng, phi chức năng và giao diện. Kết quả đầu ra là Tài liệu đặc tả yêu cầu. - Thiết kế: Thực hiện thiết kế và tổng hợp vào tài liệu thiết kế.

Kết quả là tài liệu thiết kế tổng thể, thiết kế module, thiết kế cơ sở dữ liệu. - Lập trình: Lập trình viên thực hiện lập trình dựa trên tài liệu Giải pháp và Thiết kế đã được phê duyệt. Kết quả đầu ra là Source code. - Kiểm thử: Tester tạo kịch bản kiểm thử (test case) theo tài liệu đặc tả yêu cầu, thực hiện kiểm thử và cập nhật kết quả vào kịch bản kiểm thử, log lỗi trên các tool quản lý lỗi.

Kết quả đầu ra là Test case, lỗi trên hệ thống quản lý lỗi. - Triển khai: Triển khai sản phẩm cho khách hàng. Kết quả đẩu ra là biên bản triển khai với khách hàng. Lỗi phần mềm Lỗi phần mềm là một lỗi, lỗ hổng, thất bại, hoặc có lỗi trong một chương trình máy tính hoặc hệ thống đó là nguyên nhân nó tạo ra kết quả không chính xác hoặc không mong muốn, hoặc vận hành theo cách không được định hướng trước.

Lỗi phần mềm thường xuất hiện ở các hình thức sau đây: Bug: Lỗi trong một module hoặc hệ thống mà nó không thực hiện đúng chức năng theo yêu cầu. Defect: Lỗi trong quá trình phát triển hoặc lỗi logic làm cho chương trình hoạt động sai yêu cầu đề ra. Sai (Fault): Khi phần mềm gặp lỗi sẽ đưa đến những sai sót. Tuy nhiên, không dễ để phát hiện ra sai sót trong quá trình phát triển phần mềm.

Sai lầm có thể xuất hiện ở ngay đầu quy trình phát triển phần mềm khi người phân tích, thiết kế bỏ sót thông tin dẫn tới thiếu chức năng mà lẽ ra cần phải có. Thất bại (Failure): Thất bại dễ nhận thấy nhất khi một lỗi được thực thi. Chúng thường xuất hiện dưới 2 dạng: thất bại có thể chạy được (ví dụ như mã nguồn) và thất bại chỉ liên kết với các lỗi về nhiệm vụ. Ngoài ra, có thể kể đến các thất bại liên quan tới các lỗi do bỏ quên.

Chúng ta có thể hạn chế thất bại ngay tại bước đầu tiên của quy trình phát triển phần mềm nếu việc khảo sát được thực hiện tốt. Sự cố (Incident): Sự cố thường được liên kết với một thất bại. Tuy nhiên nó khác với thất bại ở chỗ sự cố luôn hiển thị cho người dùng hoặc kiểm thử viên biết về sự tồn tại của nó. Thừa: một số chức năng không có trong bản đặc tả yêu cầu phần mềm nhưng lại xuất hiện trong phần mềm được xây dựng.

Ngoài ra, còn xuất hiện một số lỗi phi chức năng như phần mềm khó sử dụng, tốc độ không đáp ứng yêu cầu (vấn đề hiệu năng) hay giao diện khó nhìn cũng dễ khiến cho người sử dụng nghĩ rằng phần mềm đang hoạt động không đúng. Yêu cầu khách hàng Mục tiêu quan trọng nhất đối với chất lượng phần mềm là phần mềm phải thỏa mãn được các yêu cầu và mong muốn của khách hàng. Chính vì lẽ đó, các chức năng của phần mềm được xây dựng dựa trên việc thu thập, phân tích, khảo sát nhu cầu của khách hàng thông qua những yêu cầu cụ thể. Đối với phần mềm, yêu cầu thường được tổng hợp từ nhiều người, nhiều tổ chức có mức độ chuyên môn và mức độ tham gia cũng như tương tác với phần mềm khác nhau trong môi trường hoạt động của nó.

Có thể phân loại yêu cầu của khách hàng cho sản phẩm phần mềm thành một số loại như sau:  Phân loại theo sản phẩm và tiến trình - Yêu cầu sản phẩm: là những đòi hỏi hay ràng buộc mà phần mềm phải thực hiện.[13] - Yêu cầu tiến trình: là những ràng buộc liên quan đến việc phát triển phần mềm (kĩ thuật sử dụng, mô hình phát triển, v. [13]  Phân loại theo chức năng - Yêu cầu chức năng: đặc tả các chức năng mà phần mềm cần phải thực hiện. - Yêu cầu phi chức năng: là các ràng buộc về giải pháp và chất lượng (hiệu năng, việc bảo trì, mức độ an toàn, bảo mật, v. - Yêu cầu đặc tả các thuộc tính nổi bật: là đặc tả cho các thuộc tính phụ thuộc vào sự vận hành, đặc biệt là kiến trúc hệ thống.

Các thuộc tính này không thể xác định được cho từng thành phần đơn lẻ.  Phân loại theo tính kiểm định - Những yêu cầu mang tính mơ hồ, không thể kiểm định - Những yêu cầu đã rõ ràng và có thể kiểm định được.  Phân loại theo phạm vi đặc tả - Yêu cầu hệ thống: đặc tả các cấu hình, cơ sở hạ tầng, phần cứng, phần mềm, con người, kỹ thuật, v. của toàn bộ hệ thống.

- Yêu cầu phần mềm: đặc tả các chức năng, giao diện, v. của các cấu phần phần mềm. Đặc tả yêu cầu phần mềm Đặc tả yêu cầu phần mềm tạo cơ sở cho việc thỏa thuận giữa khách hàng và nhà thầu hoặc các nhà cung cấp về những gì sản phẩm phần mềm có làm việc đúng như mong muốn không. Nó cho phép một đánh giá nghiêm ngặt các yêu cầu trước khi có thể bắt đầu vào việc thiết kế và làm giảm việc thiết kế lại.

Tài liệu đặc tả yêu cầu phần mềm cũng cần cung cấp một cơ sở thực tế để ước tính giá thành sản phẩm, rủi ro, và lịch trình cho quá trình phát triển sản phẩm. Từ yêu cầu của khách hàng và những yêu cầu bắt buộc khác, đặc tả yêu cầu phần mềm được viết ra để mô tả một cách chính xác các yêu cầu cần đáp ứng của sản phẩm phần mềm. Các tổ chức cũng có thể sử dụng một tài đặc tả yêu cầu phần mềm làm cơ sở để phát triển kế hoạch kiểm tra và xác minh. Đặc tả yêu cầu phần mềm cung cấp một cơ sở thông báo cho chuyển một sản phẩm phần mềm cho người dùng mới hoặc các nền tảng phần mềm.

Cuối cùng, nó có thể cung cấp một cơ sở để nâng cao phần mềm. Đặc tả yêu cầu phần mềm được viết ra phục vụ rất nhiều đối tượng từ người dùng hệ thống, khách hàng đến các nhà phát triển và bảo trì phần mềm. Do đó, tài liệu đặc tả nên được viết bằng ngôn ngữ tự nhiên, sử dụng biểu đồ, bảng biểu để đảm bảo tính dễ hiểu, dễ sử dụng cho tất cả các đối tượng trên. Chất lượng và độ tin cậy của phần mềm Chất lượng của phần mềm trước hết là sự đáp ứng các yêu cầu đề ra trong bản đặc tả yêu cầu phần mềm.

Có thể kể đến các yếu tố đại diện cho chất lượng phần mềm như: tính đúng đắn, tính hiệu quả, độ tin cậy, tính khả kiểm thử, dễ học, dễ sử dụng, dễ bảo trì… Ta có thể thấy độ tin cậy chỉ là một trong những yếu tố đánh giá chất lượng phần mềm. Tuy nhiên người kiểm thử lại hay nhầm lẫn giữa khái niệm chất lượng và độ tin cậy của phần mềm. Sau quá trình kiểm thử đảm bảo phần mềm có thể chạy ổn định, kiểm thử viên thường sẽ cho rằng phần mềm lúc này đã đạt chất lượng tốt. Độ tin cậy của phần mềm là xác suất để phần mềm chạy không có thất bại trong một khoảng thời gian nhất định.

Ngoài ra, có thể dựa vào thời gian khắc phục sự cố để đánh giá độ tin cậy của phần mềm. KIỂM THỬ PHẨM MỀM 1. Khái niệm về kiểm thử phần mềm Kiểm thử phần mềm là 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 đảm bảo 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 của 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 [4]. 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. Mục tiêu của kiểm thử phần mềm:  Các mục tiêu trực tiếp: - Xác định và phát hiện nhiều lỗi nhất có thể trong phần mềm kiểm thử. - Sau khi sửa chữa các lỗi đã xác định và kiểm tra lại, làm cho phần mềm đã được kiểm thử đến một mức độ chấp nhận được về chất lượng.

- Thực hiện các yêu cầu kiểm thử cần thiết một cách hiệu quả và có hiệu quả, trong phạm vi ngân sách và thời gian cho phép.  Các mục tiêu gián tiếp: - Để biên dịch một tài liệu về các lỗi phần mềm thường gặp nhằm mục đích ngăn ngừa và sửa chữa lỗi. Vai trò của kiểm thử phần mềm Thứ nhất, trách nhiệm hiệu quả về chi phí. Kiểm thử phần mềm giúp nhanh chóng phát hiện các lỗi của phần mềm, giúp giảm chi phí sửa chữa.

Thứ hai, trách nhiệm bảo mật. Sản phẩm được phát hiện và sửa lỗi giúp loại bỏ các rủi ro và các vấn đề sớm, làm tăng độ tin cậy cho sản phẩm. Đối với ngành công nghệ phần mềm, vấn đề bảo mật là yếu tố cực kỳ nhạy cảm, nó liên quan trực tiếp đến việc sở hữu, sử dụng của người dùng. Vì vậy, việc kiểm thử phần mềm giúp hoàn thiện nhất sản phẩm phần mềm, tránh những lỗ hổng bảo mật đáng tiếc, tăng độ tin tưởng cho người sử dụng.

18 Thứ ba, trách nhiệm về chất lượng sản phẩm.

Nội dung được bảo vệ bản quyền — Tải xuống đầy đủ

Tài liệu "Nghiên Cứu Công Cụ Selenium và Kiểm Thử Ứng Dụng Web" cung cấp cái nhìn sâu sắc về công cụ Selenium, một trong những công cụ phổ biến nhất trong kiểm thử tự động ứng dụng web. Tài liệu này không chỉ giải thích cách thức hoạt động của Selenium mà còn nêu rõ những lợi ích mà nó mang lại cho quy trình kiểm thử, như tiết kiệm thời gian và tăng độ chính xác trong việc phát hiện lỗi. Đặc biệt, tài liệu còn hướng dẫn người đọc cách áp dụng Selenium vào thực tế, giúp họ nâng cao kỹ năng và hiệu quả công việc.

Nếu bạn muốn mở rộng kiến thức về kiểm thử phần mềm, hãy tham khảo thêm tài liệu Luận văn nghiên cứu và xây dựng công cụ kiểm thử ứng dụng web, nơi bạn sẽ tìm thấy những phương pháp và công cụ hiện đại trong lĩnh vực này. Ngoài ra, tài liệu Nghiên cứu kiểm thử tự động với công cụ selenium ứng dụng kiểm thử hệ thống website trường đại học kiến trúc hà nội sẽ giúp bạn hiểu rõ hơn về ứng dụng thực tiễn của Selenium trong môi trường học thuật. Cuối cùng, tài liệu Đề tài kiểm thử phân vùng tương đương website bán quần áo sử dụng selenium ide sẽ cung cấp cho bạn một cái nhìn cụ thể về cách kiểm thử một loại hình website cụ thể, từ đó giúp bạn áp dụng kiến thức vào các dự án thực tế.