Khóa Luận Tốt Nghiệp Của Thái Thị Hồng Hạnh Về Kiểm Thử Phần Mềm

Chuyên khảo phân tích 2018 59 httt thai thi hong hanh, đánh giá các khía cạnh quan trọng, đề xuất hướng nghiên cứu tiếp theo., phục vụ nghiên cứu và ứng dụng thực tiễn

Chuyên ngành

Công nghệ thông tin

Người đăng

Ẩn danh

Thể loại

khóa luận tốt nghiệp

2018

72
2
0

Phí lưu trữ

30 Point

Tóm tắt

I. Tổng Quan Về Khóa Luận Tốt Nghiệp Kiểm Thử Phần Mềm

Khóa luận tốt nghiệp về kiểm thử phần mềm với Selenium là một chủ đề quan trọng trong lĩnh vực công nghệ thông tin. Đề tài này không chỉ giúp sinh viên nắm vững lý thuyết mà còn thực hành các kỹ năng cần thiết trong kiểm thử phần mềm. Việc áp dụng Selenium trong kiểm thử tự động hóa mang lại nhiều lợi ích, từ việc tiết kiệm thời gian đến nâng cao chất lượng sản phẩm.

1.1. Mục Tiêu Của Khóa Luận Tốt Nghiệp

Mục tiêu chính của khóa luận là nắm vững lý thuyết về kiểm thử phần mềm và ứng dụng Selenium trong kiểm thử tự động. Sinh viên sẽ tìm hiểu cách thiết lập môi trường kiểm thử và thực hiện các bài kiểm tra trên ứng dụng web.

1.2. Giới Hạn Và Phạm Vi Của Đề Tài

Đề tài tập trung vào lý thuyết và thực hành kiểm thử tự động với Selenium. Phạm vi nghiên cứu bao gồm các công cụ như Selenium IDE, Selenium WebDriver, và Selenium Grid.

II. Vấn Đề Và Thách Thức Trong Kiểm Thử Phần Mềm

Trong quá trình thực hiện kiểm thử phần mềm, nhiều thách thức có thể phát sinh. Các vấn đề như độ phức tạp của ứng dụng, sự thay đổi yêu cầu từ khách hàng, và thiếu tài liệu hướng dẫn có thể gây khó khăn cho quá trình kiểm thử. Việc sử dụng Selenium giúp giảm thiểu một số thách thức này nhưng vẫn cần có sự chuẩn bị kỹ lưỡng.

2.1. Độ Phức Tạp Của Ứng Dụng

Ứng dụng ngày càng trở nên phức tạp với nhiều tính năng và giao diện người dùng khác nhau. Điều này đòi hỏi các kỹ thuật viên kiểm thử phải có kiến thức sâu rộng và kỹ năng sử dụng Selenium để thực hiện kiểm thử hiệu quả.

2.2. Sự Thay Đổi Yêu Cầu Từ Khách Hàng

Yêu cầu từ khách hàng có thể thay đổi trong suốt quá trình phát triển phần mềm. Điều này có thể ảnh hưởng đến kế hoạch kiểm thử và yêu cầu điều chỉnh các kịch bản kiểm thử đã được thiết lập.

III. Phương Pháp Kiểm Thử Phần Mềm Với Selenium

Sử dụng Selenium trong kiểm thử phần mềm mang lại nhiều phương pháp hiệu quả. Các phương pháp này bao gồm kiểm thử tự động hóa, kiểm thử chức năng, và kiểm thử hồi quy. Mỗi phương pháp đều có những ưu điểm riêng, giúp nâng cao chất lượng sản phẩm.

3.1. Kiểm Thử Tự Động Hóa Với Selenium

Kiểm thử tự động hóa giúp tiết kiệm thời gian và công sức. Selenium cho phép thực hiện các kịch bản kiểm thử tự động trên nhiều trình duyệt khác nhau, đảm bảo tính nhất quán trong quá trình kiểm thử.

3.2. Kiểm Thử Chức Năng Ứng Dụng Web

Kiểm thử chức năng là một phần quan trọng trong quy trình kiểm thử. Selenium giúp xác minh rằng các chức năng của ứng dụng hoạt động đúng như mong đợi, từ đó đảm bảo chất lượng sản phẩm.

IV. Ứng Dụng Thực Tiễn Của Selenium Trong Kiểm Thử

Việc áp dụng Selenium trong kiểm thử phần mềm đã mang lại nhiều kết quả tích cực. Các công ty công nghệ lớn đã sử dụng Selenium để tự động hóa quy trình kiểm thử, từ đó giảm thiểu thời gian phát triển và nâng cao chất lượng sản phẩm.

4.1. Kết Quả Nghiên Cứu Về Selenium

Nghiên cứu cho thấy rằng việc sử dụng Selenium trong kiểm thử tự động giúp phát hiện lỗi sớm hơn, từ đó giảm thiểu chi phí sửa chữa và nâng cao độ tin cậy của phần mềm.

4.2. Các Tình Huống Kiểm Thử Thực Tế

Nhiều tình huống kiểm thử thực tế đã được thực hiện với Selenium, từ kiểm thử chức năng đến kiểm thử hiệu năng. Những kết quả này đã chứng minh tính hiệu quả của Selenium trong việc đảm bảo chất lượng phần mềm.

V. Kết Luận Và Tương Lai Của Kiểm Thử Phần Mềm

Khóa luận tốt nghiệp về kiểm thử phần mềm với Selenium không chỉ giúp sinh viên nắm vững lý thuyết mà còn thực hành các kỹ năng cần thiết. Tương lai của kiểm thử phần mềm sẽ tiếp tục phát triển với sự hỗ trợ của các công cụ tự động hóa như Selenium, giúp nâng cao chất lượng sản phẩm và giảm thiểu thời gian phát triển.

5.1. Tương Lai Của Kiểm Thử Tự Động Hóa

Tương lai của kiểm thử tự động hóa sẽ ngày càng phát triển với sự xuất hiện của nhiều công cụ mới. Selenium sẽ tiếp tục là một trong những công cụ hàng đầu trong lĩnh vực này.

5.2. Những Thách Thức Cần Đối Mặt

Mặc dù có nhiều lợi ích, nhưng việc áp dụng Selenium cũng gặp phải một số thách thức như việc duy trì kịch bản kiểm thử và đảm bảo tính chính xác của các bài kiểm tra.

17/07/2025
2018 59 httt thai thi hong hanh

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

CHƯƠNG 1. TỔNG QUAN VỀ ĐỀ TÀI 1. Mục tiêu của đề tài - Nắm được lý thuyết kiểm thử phần mềm, kiểm thử tự động phần mềm. - Nắm được lý thuyết về công cụ kiểm thử tự động Selenium.

- Ứng dụng được công cụ Selenim IDE, Selenium RC. - Selenium Grid, Selenium Webdriver vào kiểm thử một số trang web. Giới hạn và phạm vicủa đề tài - Tập trung vào lý thuyết kiểm thử, kiểm thử tự động, công cụ Selenium. - Ứng dụng được công cụ Selenim IDE, Selenium Grid, Selenium RCSelenium Webdriver vào kiểm thử Website.

Nội dung thực hiện - Trình bày được lý thuyết kiểm thử tự động phần mềm, kiểm thử ứng dụngWebsite. - Trình bày được lý thuyết về công cụ kiểm thử tự động Selenium. - Ứng dụng được bộ công cụ kiểm thử tự động Selenium vào kiểm thử Website.Phương pháp tiếp cận - Khảo sát: Nghiên cứu các tài liệu, tìm hiểu các mô hình hệ thống bán hàng - Kế thừa: Kế thừa kết quả nghiên cứu của các giải pháp trước. - Phương pháp chuyên gia: tìm hiểu và xin ý kiến của các chuyên gia trong lĩnh vực công nghệ thông tin, các Tester có kinh nghiệm lâu năm và giảng viên có kinh nghiệm.Phần mềm là gì? Khái niệm Phần mềm là những ứng dụng chạy bên trong máy tính nhằm cung cấp các chức năng, đáp ứng các yêu cầu, công việc của người sử dụng thông qua phần cứng máy tính.

Một phần mềm thường gồm 3 phần: - Chương trình máy tính: mã nguồn, mã máy. - Cấu trúc dữ liệu: cấu trúc làm việc(bộ nhớ trong), cấu trúc lưu trữ (bộ nhớ ngoài). - Các tài liệu liên quan: tài liệu hướng dẫn sử dụng, tài liệu phát triển, tài liệu tham khảo kỹ thuật… Phân loại phần mềm Dựa vào môi trường thực thi, phần mềm được chia thành các loại như sau: - Phần mềm ứng dụng giao diện hệ điều hành: Windows Form, Windows Service. - Phần mềm ứng dụng Web: Website, Web Service, Web API… - Phần mềm ứng dụng Mobile App: Android App, IOS App, Winphone App… - Phần mềm nhúng: Tivi, tủ lạnh, điều hòa… Vòng đời phát triển của phần mềm(Software Devolopment Life Cycle) Vòng đời phát triển phần mềm là thời kỳ tính từ khi phần mềm được sinh ra cho đến khi chết đi (từ lúc hình thành đáp ứng yêu cầu, vận hành, bảo dưỡng cho đến khi loại bỏ không dùng nữa).

Vòng đời của phần mềm được chia thành các phachính: phân tích, thiết kệ, chiết tạo, kiểm thử, bảo trì. Được biểu diễn ở mô hình: Phaxác định yêu cầu hệ thống: Mọi phần mềm được xây dựng, phát triển trên tài liệu đặc tả (Software Reqiment Specification). Dựa vào các đặc tả này của người dùng (khách hàng), bộ phận xây dựng phần mềm sẽ xác định yêu cầu 2 hệ thống của hệ thông phần mềm sẽ xây dựng. Xác định phần mềm thuộc loại nào: Windows Form, Web Form hay Mobile App.

Pha xác định yêu cầu phần mềm: Sau khi xác định được loại của hệ thống sẽ xây dựng, các kĩ sư phầm mềm tiếp tục khảo sát các yêu cầu sử dụng của phần mềm mà khách hàng đang mong muốn xây dựng, đây chính là pha xác định xem phần mềm sẽ có chức năng gì tương tác như thế nào? Phathiết kế căn bản: Hay còn gọi là thiết kế sơ đồ hệ thống, ở giai đoạn này kiến trúc khung của phần mềm sẽ được thiết kế (sử dụng nền tảng nào, ngôn ngữ lập trình nào, áp dụng những công nghệ gì…) Phalập trình: Đây chính là pha hiện thực hóa phần mềm dựa vào các bản thiết kế ở các pha trên. Người lập trình cần phải sử dụng những công nghệ, ngôn ngữ lập trình cũng như những nền tảng đã được xác định để tiến hành lập trình thực hiện các nghiệp vụ đã được thiết kế. Pha kiểm thử: Sau khi phần mềm đã được lập trình xong sẽ được chuyển sang pha kiểm thử nhằm đảm bảo chương tình có đầy đủ các chức năng, nghiệp vụ mà khách hàng yêu cầu cũng như tất cả các hoạt động tốt theo đúng mong muốn. Pha vận hành bảo trì: Đây là pha có thời gian dài nhất trong vòng đời của phần mềm.

Sau khi phần mềm được thiết kế, lập trình và kiểm thử xong sẽ bàn giao cho khách hàng mang vào hoạt động thực tế.Phanày sẽ kéo dài cho tới khi phần mềm không còn phù hợp nữa thì kết thúc. SUY NGHĨ MỚI VỀ VÒNG ĐỜI CỦA MỘT PHẦN MỀM - Pha xác định yêu cầu và thiết kế có vai trò quan trọng, quyết định đến chất lượng của phần mềm, chiếm phần lớn công sức so với lập trình, kiểm thử và chuyển giao phần mềm. - Pha cụ thể hóa cấu trúc phần mềm phụ thuộc nhiều vào suy nghĩ Top- down (trên xuống) và trừu tượng hóa cũng như chi tiết của người thiết kế. - Pha thiết kế, chế tạo theo chiều từ trên xuống (top-down) còn pha kiểm thử thì theo chiều từ dưới lênbottom-up).

3 - Trước khi chuyển sang phathiết kế tiếp phải đảm bảo pha hiện tại đã hoàn thành và được kiểm thử không còn lỗi. - Cần có cơ chế kiểm tra chất lượng, xét duyệt giữa các pha nhằm đảm bảo không gây lỗi cho các pha sau nó. - Tư liệu cho mỗi pha không chỉ dùng cho pha sau mà chính là đối tượng quan trọng cho kiểm tra, đảm bảo chất lượng cho từng quy trình và của chính phần mềm. - Cần chuẩn hóa các mẫu biểu, cách ghi chép tạo tư liệu cho từng pha nhằm đảm bảo chất lượng của phần mềm.

- Thao tác bảo trì phần mềm là việc quay vòng trở lại các pha trong vòng đời phần mềm nhằm biến đổi, sửa chữa và nâng cấp phần mềm. Kiểm thử phần mềm a. Khái niệm kiểm thử phần mềm Kiểm thử phần mềm là một quy trình nhằm đảm bảo độ tin cậy và chất lượng của phần mềm. Mục đích của kiểm thử phần mềm là chỉ ra phần mềm thực hiện đúng các chức năng mà khác hàng muốn.

Mục tiêu của kiểm thử phần mềm - Phát hiện ra càng nhiều lỗi càng tốt trong thời gian kiểm thử xác định trước. - Chứng minh rằng sản phẩm phần mềm phù hợp với các đặc tả yêu cầu của nó. - Tạo ra các Testcase chất lượng nhằm tìm ra lỗi(nếu có) với chi phí thấp. Ai là người Test (kiểm thử) Trong hầu hết các trường hợp, người kiểm thử (Tester) có thể là: - Software Tester- Nhân viên kiểm thử phần mềm.

- Software Develop- Nhân viên phát triển phần mềm. - Leader hoặc manager của dự án. - Product Owner- Người sỡ hữu sản phẩm (Acceptance Testing). - User- Người dùng cuối.

Phân loại Có 02 kiểm thử phần mềm - Kiểm thử phần mềm thủ công (Manual Testing). - Kiểm thử tự động (Automation Testing). Các role trong kiểm thử phần mềm - Test Manager: Là người đứng đầu bộ phận kiểm thử, quản lý về các vấn đề liên quan quy trình làm viện, nhân sự… - Test Leader: Là người trực tiếp tham gia vào quá trình kiểm thử dự án cùng với Tester,Test Leader đảm nhiệm vai trò quản lý công việc của Tester, thực hiện Verify các sản phẩm mà Tester tạo ra cũng như báo cáo Test Manager khi có yêu cầu. - Tester/QC: Là người trực tiếp thực hiện quá trình kiểm thử, đảm bảo chất lượng của sản phẩm theo những nhiệm vụ được phân công.

Tổng quan về kiểm thử a. Các mức kiểm thử Unit Test (kiểm thử ở mức đơn vị lập trình): Là mức kiểm thử tập trung vào việc xác minh trên các đơn vị nhỏ nhất của thiết kế phần mềm. Sử dụng cả mô tả thiết kế thủ tục để phát hiện lỗi trong phạm vi Module/Functions. Module/Functions (Kiểm thử mức chức năng): Là mức kiểm thử tập trung kiểm tra, xác minh xem một chức năng trong chương trình có hoạt động đúng như nó được thiết kế không? Integration Test (kiểm thử ở mức tích hợp): Là mức kiểm thử tập trung kiểm tra, xác minh các thành phần có trong phần mềm có được tương tác với nhau hay không, có hoạt động phối hợp cùng nhau hay không? System Test (kiểm thử ở mức hệ thống): Là mức kiểm thử nhằm đưa hệ thống vào vận hành thử nghiệm các môi trường khác nhau nhằm tìm ra lỗi về hệ thống tính tương thích… Accceptance Test (kiểm thử chấp nhận): Là mức kiểm thử được thực hiện ở phía người sử dụng, đây được xem là kiểm thử chấp nhận sản phẩm.

Các phương pháp kiểm thử Có 03 phương pháp kiểm thử phổ biến: Kiểm thử hộp đen (Black box): Hay còn gọi là kiểm thử hướng dữ liệu. Là phương pháp kiểm thử không quan tâm đến cấu trúc bên trong của phần mềm (Cấu trúc dữ liệu, thuật toán, xử lý…) mà chỉ kiểm tra dữ liệu đầu vào, dữ liệu đầu ra ứng với các trường hợp trong đặc tả (TestCase). Kiểm thử hộp trằng (White box): Là phương pháp kiểm thử dựa vào thuật giải cụ thể, cấu trúc dữ liệu bên trong của đơn vị phần mềm cần kiểm thử để xác định đơn vị phần mềm đó có thực hiện đúng hay không? Để thực hiện kiểm thử hộp trắng thì người kiểm thử phải có kỹ năng, kiến thức nhất định về ngôn ngữ lập trình được dùng, về giải thuật được dùng trong thành phần phần mềm để có thể thông hiểu được chi tiết về các đoạn code cần kiểm thử. Kiểm thử hộp xám (Gray box): Là phương pháp kết hợp giữa phương pháp kiểm thử hộp đen và phương pháp kiểm thử hộp trắng.

Phương pháp kiểm thử hộp đen dùng để xác định nguồn gây ra lỗi còn phương pháp kiểm thử hộp trắng xác định xem lỗi đang gặp là lỗi gì? c. Các loại kiểm thử Kiểm thử cài đặt (Installation Testing): Sau khi chương trình được lập trình xong, để đảm bảo tính toàn vẹn trong việc phân phối tới người sử dụng, chương trình cần được đóng gói thành các file cài đặt. Kiểm thử cài đặt là loại kiểm tra xem quá trình cài đặt ứng dụng từ file đóng gói (package) có làm việc được trên cấu hình phần cứng của khách hay không? Kiểm thử Smoke (Smoke Testing): Đây là loại kiểm thử sơ lược hệ thống ngay sau khi cài đặt xem có xảy ra vấn đề gì nghiêm trọng hay không? Loại kiểm thử này là kiểm thử sơ lược hệ thống, không đi sâu vào chi tiết chức năng. Kiểm thử chức năng (Function Testing): Là hoạt động kiểm thử nhằm xác minh xem các chức năng, hoạt động của chương trình có hoạt động đúng như đặc tả hay không? Phần lớn công việc của người Tester thuộc loại kiểm thử này.

6 Kiểm thử hồi quy (Regression Testing): Là loại kiểm thử tập trung vào tìm kiếm lỗi sau khi có một sự thay đổi lớn đã xảy ra nhằm khám phá hồi quy phần mềmxem các lỗi cũ có xuất hiện hay không?

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

Khóa luận tốt nghiệp về kiểm thử phần mềm với Selenium cung cấp cái nhìn sâu sắc về quy trình và phương pháp kiểm thử tự động, đặc biệt là ứng dụng của Selenium trong việc nâng cao chất lượng phần mềm. Tài liệu này không chỉ giải thích các khái niệm cơ bản mà còn đi sâu vào các kỹ thuật kiểm thử, giúp người đọc hiểu rõ hơn về cách thức hoạt động của Selenium và lợi ích mà nó mang lại cho quy trình phát triển phần mềm.

Để mở rộng kiến thức của bạn về lĩnh vực này, bạn có thể tham khảo thêm tài liệu Đồ án kiểm thử phần mềm áp dụng seleniumide vào kiểm thử phần mềm asp net mvc, nơi bạn sẽ tìm thấy ứng dụng cụ thể của Selenium trong môi trường ASP.NET MVC. Ngoài ra, tài liệu Nghiên cứu công cụ selenium và áp dụng kiểm thử ứng dụng web sẽ giúp bạn hiểu rõ hơn về các công cụ kiểm thử và cách chúng có thể được áp dụng trong kiểm thử ứng dụng web. Cuối cùng, tài liệu Nghiên cứu và ứng dụng công cụ kiểm thử selenium trong kiểm thử website sẽ cung cấp thêm thông tin về việc sử dụng Selenium trong kiểm thử website, mở rộng thêm kiến thức của bạn về lĩnh vực này.

Những tài liệu này không chỉ giúp bạn nắm vững lý thuyết mà còn cung cấp các ví dụ thực tiễn, từ đó nâng cao khả năng áp dụng kiến thức vào thực tế.