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

Báo Cáo Thực Tập Nghề Nghiệp - Chuyên Ngành - Quản Trị Hệ Thống Thông Tin - Đề Tài - Kiểm Thử Tự Động Trên Website Product Store Tại Công Ty Tma Solution Bình Định.docx

55 7 0

Đ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

Thông tin cơ bản

Tiêu đề Kiểm Thử Tự Động Trên Website Product Store Tại Công Ty Tma Solution Bình Định
Trường học Trường Đại Học Kinh Tế Khoa Thống Kê – Tin Học
Chuyên ngành Quản Trị Hệ Thống Thông Tin
Thể loại Báo Cáo Thực Tập Nghề Nghiệp
Năm xuất bản Năm 2023
Thành phố Bình Định
Định dạng
Số trang 55
Dung lượng 3,27 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

TRƯỜNG ĐẠI HỌC KINH TẾ KHOA THỐNG KÊ – TIN HỌC BÁO CÁO THỰC TẬP NGHỀ NGHIỆP NGÀNH HỆ THỐNG THÔNG TIN QUẢN LÝ CHUYÊN NGÀNH QUẢN TRỊ HỆ THỐNG THÔNG TIN ĐỀ TÀI KIỂM THỬ TỰ ĐỘNG TRÊN WEBSITE PRODUCT STORE[.]

Trang 1

TRƯỜNG ĐẠI HỌC KINH TẾ

KHOA THỐNG KÊ – TIN HỌC

Trang 2

LỜI CAM ĐOAN IV

1.1 GIỚI THIỆU TỔNNG QUÁT VỀ DOANH NGHIỆP THỰC TẬP 2

CHƯƠNG 2 CƠ SỞ LÝ THUYẾT VỀ KIỂM THỬ PHẦN MỀM (TESTER)

5

2.1.2 Kiểm thử phần mềm tự động là gì ? 5 2.1.3 Các kỹ năng cần khi kiểm thử phần mềm 6 2.1.4 Tầm quan trọng của kiểm thử phần mềm 6

2.2 CÁC KỸ THUẬT KIỂM THỬ PHẦN MỀM 6

2.2.1 Kiểm thử hộp trắng (White Box Testing) 6 2.2.2 Kiểm thử hộp đen (Black Box Testing) 7 2.2.3 Kiểm thử hộp xám (Gray Box Testing) 7

2.3.2 Kiểm thử tích hợp (Integration Testing) 8 2.3.3 Kiểm thử hệ thống (System Testing) 9 2.3.4 Kiểm thử chấp nhận (Acceptance Testing) 9

CHƯƠNG 3 KIỂM THỬ TỰ ĐỘNG HÓA TRÊN WEB PRODUCT STORE

11

Trang 3

3.5 THỰC HIỆN KIỂM THỬ WEBSITE PRODUCT STORE 24

Trang 4

3.6.2 Kiểm thử chức năng Login/Logout 32 3.6.3 Kiểm thử kiểm thử chức năng Add to Cart 35 3.6.4 Kiểm thử kiểm thử chức năng Contact 37 3.6.5 Kiểm thử chức năng Place Order 39

KẾT QUẢ KIỂM THỬ CHỨC NĂNG SIGN UP I KẾT QUẢ KIỂM THỬ CHỨC NĂNG LOGIN/LOGOUT II KẾT QUẢ KIỂM THỬ CHỨC NĂNG ADD TO CART IV KẾT QUẢ KIỂM THỬ CHỨC NĂNG CONTACT V KẾT QUẢ KIỂM THỬ CHỨC NĂNG PLACE ORDER V

Trang 5

Hình 3.10 Màn hình thêm sản phẩm vào giỏ hàng 20

Hình 3.11 Màn hình sản phẩm đã được thêm vào và xóa sản phẩm ra khỏi giỏ

Trang 6

Bảng 3.1 Bảng chi tiết use case Sign up 17Bảng 3.2 Bảng chi tiết use case Login 18Bảng 3.3 Bảng chi tiết use case Logout 19Bảng 3.4 Bảng chi tiết use case Add to Cart 21Bảng 3.5 Bảng chi tiết use case Contact 22Bảng 3.6 Bảng chi tiết use case Place Order 23Bảng 3.7 Test case của chức năng Sign up 25Bảng 3.8 Test case của chức năng Login/Logout 27Bảng 3.9 Test case của chức năng Add to Cart 27Bảng 3.10 Test case của chức năng Contact 28Bảng 3.11 Test case của chức năng Place Order 29

Trang 7

LỜI MỞ ĐẦU

1 Lý do chọn đề tài

Cùng với sự phát triển của công nghệ, lỗi phần mềm và chất lượng phầnmềm luôn là thách thức đối với các doanh nghiệp Ngày nay tự động hóa được ứngdụng trong nhiều lĩnh vực và kiểm thử phần mềm cũng không ngoại lệ Khi màkiểm thử phần mềm vẫn tiêu tốn một lượng lớn thời gian, kinh phí và nhân lực.Các công cụ hỗ trợ kiểm thử có khá nhiều ưu điểm như có thể kiểm thử trên nhiềutrình duyệt, hỗ trợ nhiều ngôn ngữ lập trình Đây là những công cụ tốt nhất chokiểm tra web application đó Đó là lí do chọn đề tài Kiểm thử tự động trên websiteProduct Store

2 Mục tiêu của đề tài

Đề tài này nghiên cứu về “Kiểm tra tự động hóa trên website ProductStore” nhằm mục đích ứng dụng công cụ và kiến thức để viết kịch bản kiểm thửtrên một ứng dụng, website cụ thể

3 Đối tượng và phạm vi nghiên cứu

Địa điểm: Công ty TMA Solution Bình Định

Thời gian thực hiện: 19/6/2023 đến ngày 25/8/2023

Đối tượng kiểm thử: website Product Store

4 Kết cấu của đề tài

Đề tài được tổ chức gồm phần mở đầu, 3 chương nội dung và phần kếtluận

- Mở đầu

- Chương 1: Tổng quan về công ty TMA

- Chương 2: Cơ sở lý thuyết Tester

- Chương 3: Kiểm thử tự động trên website Product Store

- Chương 4: Kết quả thực hiện

- Kết luận và hướng phát triển

Trang 8

CHƯƠNG 1 TỔNG QUAN VỀ CÔNG TY TMA

1.1 Giới thi u tổng quát về doanh nghi p thực t p ệu tổng quát về doanh nghiệp thực tập ệu tổng quát về doanh nghiệp thực tập ập

Tháng 6 năm 2018, TMA đã mở chi nhánh tại Bình Định Sau 4 năm, TMABình Định đã phát triển nhanh chóng với hơn 400 kỹ sư, trong đó có nhiều kỹ sưđang làm việc tại TP.HCM đã trở về làm việc tại quê hương

Hình 1.1 Logo Công ty TMA Bình Định

Tháng 8 năm 2018, TMA đã khởi công xây dựng Công viên Sáng tạo TMABình Định (TMA Innovation Park – TIP) trên 10 hecta tại Thung lũng Sáng tạoQuy Nhơn (Quy Nhon Innovation Park – QNIVY) với vốn đầu tư hàng trăm tỷđồng

1.1.2 Tầm nhìn và sứ mệnh

Là trung tâm phần mềm đầu tiên tại Thung lũng Sáng tạo Quy Nhơn, Côngviên Sáng tạo TMA mang sứ mệnh trở thành trung tâm phát triển phần mềm vàcông nghệ cao hàng đầu tại miền Trung, góp phần quan trọng đưa Thung lũngsáng tạo Quy Nhơn trở thành một điểm đến của công nghệ 4.0 tại Việt Nam Côngviên Sáng tạo TMA bao gồm Trung tâm Phát triển Phần Mềm, Xưởng Phần mềm,Trung tâm R&D, Trung tâm Khoa học Dữ liệu, Học viện Công Nghệ

1.1.3 Lĩnh vực hoạt động

- Trí tuệ nhân tạo / máy học:

● Phân tích ngôn ngữ tự nhiên (NLP)

Trang 9

● Nhận dạng hình ảnh và video (Object Detection)

● Nhận dạng tài liệu (Document Parser)

● Nhận dạng quảng cáo (Brand Detection)

● Phân tích năng lực và hành vi học sinh (Student Analytics)

● Tối ưu hoạt động máy móc (Machine Optimization)

- Dữ liệu lớn / phân tích dữ liệu:

● Thiết kế hệ thống dữ liệu doanh nghiệp

● Thu thập và phân tích dữ liệu trong thời gian thực

Trang 10

1.2 Tổng quan về vị trí Kiểm thử phần mềm

1.2.1 Vị trí thực tập

Kiểm thử phần mềm còn được gọi là Tester, là người chịu trách nhiệmkiểm tra và đảm bảo chất lượng của phần mềm hoặc ứng dụng trước khi chúngđược phát hành Kiểm thử yêu cầu kiến thức về các quy trình và phương phápkiểm thử

Công việc của Tester bao gồm tạo ra các kịch bản kiểm thử, thực hiện các

ca kiểm thử, tìm kiếm và ghi nhận các lỗi, sự cố hoặc không thỏa mãn yêu cầu, vàtạo báo cáo chi tiết về kết quả kiểm thử Có khả năng chỉ ra các lỗi và sự cố trongphần mềm, hiểu rõ yêu cầu của khách hàng và tích hợp kiến thức về thiết kế vàphát triển phần mềm để đảm bảo sự hoạt động chính xác và nhất quán của sảnphẩm

1.2.2 Cơ hội nghề nghiệp

Có cơ hội phát triển lớn, có thể làm việc ở môi trường làm việc trong nước

và có cơ hội đi làm tại các nước phát triển như Nhật, Mỹ, Canada

Mức lương: Tùy vào khả năng mà mức lương khởi điểm từ 5 triệu - 20 triệu

Trang 11

CHƯƠNG 2 CƠ SỞ LÝ THUYẾT VỀ KIỂM THỬ PHẦN MỀM (TESTER)

2.1 Tổng quan về kiểm thử phần mềm

và đánh giá các khía cạnh khác nhau của sản phẩm Có 2 phương pháp kiểm tra:

- Manual Testing (kiểm thử Thủ công)

- Automation Testing (kiểm thử Tự động)

2.1.2 Kiểm thử phần mềm tự động là gì ?

Kiểm thử phần mềm tự động còn được gọi với các tên khác là AutomationTesting Kiểm thử phần mềm tự động có thể hiểu rất đơn giản là thay vì kiểm thửbằng tay thì ta dùng các công cụ để hỗ trợ thực hiện kiểm thử mà Tester phải làm(khởi động hệ thống, nhập dữ liệu đầu vào, kiểm tra so sánh với dữ liệu đầu ra vàghi kết quả)

Automation Testing đóng một vai trò quan trọng góp phần nâng cao hiệuquả kiểm thử, giảm thiểu lỗi cũng như sự nhàm chán với việc kiểm thử bằng taytrong một thời gian dài và việc lặp đi lặp lại Kiểm thử tự động là một quá trình xử

lý tự động các bước thực hiện một test case và được thực hiện bởi phần mềm là

Trang 12

Automation Testing Tool.

2.1.3 Các kỹ năng cần khi kiểm thử phần mềm

Để kiểm tra trên source code của các lập trình viên, các Tester cần phảihiểu một ít kiến thức về lập trình Cần phải có được những kỹ năng thiết kế, lậptrình, phân tích và hiểu biết về các ứng dụng khác nhau của các phần mềm

Người làm công việc kiểm thử cũng cần có trình độ tiếng Anh để đọc, hiểu,viết được tài liệu chuyên ngành Tester phải có tính cẩn thận, tỉ mỉ, nhạy bén, cầnphải phải học nhiều để có tầm nhìn rộng, biết được xu hướng thị trường để tư vấn

và đưa ra quan điểm của mình về sản phẩm

2.1.4 Tầm quan trọng của kiểm thử phần mềm

Tester là nghề vô cùng quan trọng, nó là một phần không thể thiếu và quantrọng trong kiểm thử phần mềm Hai chữ "kiểm thử" nghe có vẻ đơn giản, nhàn rỗiđây là một giai đoạn giúp cho sản phẩm được hoàn thiện nhằm đáp ứng yêu cầuđặt ra của khách hàng Sản phẩm hoàn thiện đưa đến tay người dùng tăng thêmniềm tin và sự uy tín của công ty đối với khách hàng Nếu không có kiểm thử phầnmềm thì phần mềm sẽ xảy ra lỗi Chính vì vậy, Tester là vị trí không thể thiếu vàcông việc này quyết định khá nhiều vào sự thành công chung của dự án

2.2 Các kỹ thuật kiểm thử phần mềm

2.2.1 Kiểm thử hộp trắng (White Box Testing)

Kiểm thử hộp trắng là kiểm tra mà các Tester tìm kiếm lỗi bên trong code,cấu trúc của mã, biết được hoạt động bên trong mã để tìm đoạn mã phù hợp Mụcđích là kiểm thử bao phủ nhiều nhất các câu lệnh và các rẽ nhánh trong mã nguồnnếu có thể

Ưu và nhược điểm là dễ dàng tìm ra loại dữ liệu nào kiểm tra ứng dụnghiệu quả và tối ưu mã hóa Song kiểm thử hộp trắng có nhược điểm không xemđược mọi ngóc ngách để tìm lỗi tiềm ẩn vì nhiều đường dẫn không được kiểm tra

và khó thực hiện vì yêu cầu các công cụ chuyên dụng như bộ phân tích mã vàcông cụ sửa lỗi

2.2.2 Kiểm thử hộp đen (Black Box Testing)

Kiểm thử hộp đen là kiểu kiểm tra mà Tester thực hiện kiểm tra không chú

ý gì đến code, nói một cách dễ hiểu là không có bất kỳ kiến thức về hoạt động bêntrong của ứng dụng Việc kiểm tra xảy ra dựa trên các đặc tả bên ngoài như giao

Trang 13

diện, cũng có thể hiểu như kiểm tra hành vi, chỉ hành vi bên ngoài của ứng dụng

là được đánh giá và phân tích Mục đích là kiếm các trường hợp và chương trìnhkhông thực hiện theo các đặc tả của nó

Ưu và nhược điểm là phù hợp và hiệu quả với các đoạn mã lớn và truy cập

mã không cần thiết Phân biệt ra người dùng với nhà phát Bên cạnh đó kiểm thửhộp đen có nhược điểm là phạm vi hạn chế do thiếu kiến thức và người kiểm trakhông nhắm mục tiêu cụ thể hoặc khu vực xảy ra lỗi

2.2.3 Kiểm thử hộp xám (Gray Box Testing)

Kiểm thử hộp xám là sự kết hợp giữa kiểm thử hộp đen và kiểm thử hộptrắng Trong đó ta quan tâm đến dữ liệu đầu vào và đầu ra trong kiểm thử hộp đen

và có sự hiểu biết về cấu trúc của hệ thống cũng như quyền truy cập về cơ sở dữliệu Mục đích là tìm kiếm và xác định các lỗi do cấu trúc không đúng hoặc được

sử dụng không đúng cách

Ưu và nhược điểm của kiểm thử hộp xám là cung cấp các lợi ích của kiểmthử hộp đen và kiểm thử hộp xám Kiểm tra được thực hiện từ quan điểm củangười dung hơn là quan điểm của nhà thiết kế Song nhược điểm là có thể mấtnhiều thời gian để kiểm tra từng đường dẫn

2.3 Các cấp độ kiểm thử phần mềm

Hình 2.3 Các cấp độ kiểm thử phần mềm

2.3.1 Kiểm thử đơn vị (Unit Testing)

Kiểm tra đơn vị là kiểm tra từng đơn vị hoặc một thành phần riêng lẻ Nó làphần nhỏ nhất của một ứng dụng như hàm, lớp, thủ tục, giao diện Kiểm thử đơn

vị thường có kích thước nhỏ, chức năng hoạt động đơn giản, không gây nhiều khó

Trang 14

khăn trong việc kiểm thử, ghi nhận và phân tích kết quả do đó nếu phát hiện lỗiviệc tìm kiếm nguyên nhân và sửa lỗi cũng đơn giản và tốn ít chi phí hơn Khi màlập trình viên hoàn thành xong một chức năng hay màn hình nhỏ nào đó thì sẽkiểm tra lại

Mục đích nhằm xác nhận rằng mỗi đơn vị của phần mềm hoạt động cóđúng chức năng, có chính xác không

Người thực hiện: Nó đòi hỏi kiến thức về lập trình cũng như về thiết kế nênkiểm thử đơn vị được thực hiện bởi lập trình viên

2.3.2 Kiểm thử tích hợp (Integration Testing)

Kiểm tra tích hợp là các đơn vị/mô-đun được tích hợp lại một cách hợp lí

và được kiểm thử theo nhóm Trong quá trình kiểm thử phần mềm thì các mô đunđược kiểm thử độc lập, riêng rẻ thông qua kiểm thử đơn vị, sau đó sẽ được tíchhợp lại thành một hệ thống hoàn chỉnh

Mục đích: Là tìm ra sự khiếm khuyết trong sự tương tác giữa các mô đunđược tích hợp lại với nhau, đảm bảo các thành phần hoạt động đúng và tương tácvới nhau một cách chính xác.Phát hiện lỗi giao tiếp xảy ra giữa các đơn vị

● Hybrid/ Sandwich: Là phương pháp kết hợp song song giữa Topdown và Bottom up kiểm tra tích hợp ở nhiều mức độ khác nhau, các mô-đun ởđầu được kiểm tra với các mô-đun thấp hơn đồng thời các mô-đun thấp hơnđược tích hợp với các mô-đun ở đầu hay còn được gọi là kiểm tra xen kẽ nhau

2.3.3 Kiểm thử hệ thống (System Testing)

Kiểm thử hệ thống là quá trình kiểm thử toàn bộ hệ thống để kiểm tra khảnăng tương thích và tất cả các chức năng của hệ thống thường là thử nghiệm cuối

Trang 15

cùng để xác minh rằng hệ thống được phân phối đáp ứng đặc điểm kỹ thuật vàmục đích của nó Mục đích là đảm bảo các thành phần phần hoạt động tương tốttrước khi đưa ra sản phẩm triển khai

Có 2 loại kiểm thử: Kiểm thử chức năng (functional testing) và Kiểm thửphi chức năng (Non-functional testing)

2.3.4 Kiểm thử chấp nhận (Acceptance Testing)

Kiểm thử chấp nhận được thực hiện bởi người dùng hoặc khách hàng, đảmbảo hệ thống hoặc ứng dụng phù hợp với yêu cầu và mong đợi của người dùngcuối Được thực hiện bởi Quality Assurance, đánh giá xem liệu ứng dụng có đápứng được thông số kỹ thuật và yêu cầu của khách hàng, tập hợp kịch bản trước vàcác test case đó sẽ được sử dụng để kiểm tra thử ứng dụng

Có 2 phương pháp kiểm tra chấp nhận:

● Alpha testing: Là giai đoạn thử nghiệm đầu được thực hiện tại trangweb của nhà phát triển, được thực hiện bởi nhà phát triển và QualityAssurance Mục đích: nhằm tìm ra lỗi và cải tiến ứng dụng, trước khi ứng dụngchuyển giao cho khách hàng

● Beta testing: được thực hiện ở môi trường doanh nghiệp, được kiểmtra bởi khách hàng, người dùng cuối Nó được thực hiện trước khi ra mắt sảnphẩm Mục đích: là thu thập những phản hồi và trải nghiệm của của ngườidùng tìm ra những vấn đề, cải thiện ứng dụng trước khi ra mắt sản phẩm

Trang 16

CHƯƠNG 3 KIỂM THỬ TỰ ĐỘNG HÓA TRÊN WEB PRODUCT STORE

3.1 Các kỹ thuật kiểm thử phần mềm

3.1.1 Selenium là gì ?

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, là một công cụ phổ biến trong tự động hóakiểm thử phần mềm (Automation testing)

Selenium là một công cụ mạnh mẽ cho việc kiểm thử ứng dụng web vì nó

hỗ trợ nhiều trình duyệt phổ biến như Chrome, Firefox, Internet Explorer, vàEdge, cũng như các hệ điều hành chủ yếu như Windows , Linux , Mac ,

Selenium hỗ trợ nhiều ngôn ngữ lập trình như Java, Python, C#, Ruby, vànhiều ngôn ngữ khác Nó cho phép các nhà phát triển và kiểm thử viết các kịchbản kiểm thử sử dụng mã và sau đó chạy những kịch bản này trên trình duyệt webthực tế để kiểm tra tính năng và tương tác của ứng dụng

3.1.2 Các thành phần của Selenium

Hình 3.1 Thành phần của Selenium

Selenium bao gồm một bộ các công cụ hỗ trợ kiểm tra tự động tính năngcủa ứng dụng web bao gồm: Selenium WebDriver, Selenium IDE, SeleniumRemote Control (RC) và Selenium Grid

● Selenium IDE: Đây là một công cụ ghi và chạy các thao tác trên

Trang 17

trình duyệt web, cho phép người dùng tạo các kịch bản kiểm thử bằng cách ghilại các hành động của mình trên trình duyệt và sau đó chạy chúng để kiểm tratính năng của ứng dụng web

● Selenium Remote Control (RC): Cung cấp một máy chủ (server) đểthực thi các lệnh tự động hóa, và máy chủ này sẽ giao tiếp với trình duyệtthông qua JavaScript nhúng (JavaScript injection) để thực hiện các hành độngtrên trình duyệt.cung cấp một máy chủ (server) để thực thi các lệnh tự độnghóa, và máy chủ này sẽ giao tiếp với trình duyệt thông qua JavaScript

● Selenium WebDriver: Thực hiện kiểm tra của bạn trên các trìnhduyệt khác nhau (Firefox, Chrome, IE, Edge, Opera, Safari,/…) Giao tiếp trựctiếp với trình duyệt Thời gian thực thi nhanh hơn Selenium RC và IDE

● Selenium Grid: Được sử dụng để chạy các kịch bản kiểm thử đồngthời trên nhiều trình duyệt và nhiều hệ thống khác nhau Chạy song song nhiềuthử nghiệm trên các máy khác nhau, các trình duyệt và môi trường khác nhaucùng một lúc Tiết kiệm thời gian và sử dụng khái niệm trung tâm và nút, hubhoạt động như một nguồn trung tâm của các lệnh Selenium cho mỗi nút đượckết nối với nó

3.1.3 Selenium Webdriver

Hình 3.2 Selenium Webdriver

Selenium WebDriver (gọi tắt là WebDriver) là một automation frameworkdành cho web, với WebDriver bạn có thể thực hiện các phiên kiểm thử của mìnhtrên các trình duyệt khác nhau mà không cần giới hạn trên Firefox hay Chrome.Tương tác với các thành phần trang theo cách thực tế hơn Cung cấp các phươngthức và API cho việc tương tác với các yếu tố trên trang web, chẳng hạn như điều

Trang 18

hướng qua các trang, nhập liệu vào các ô nhập liệu, click vào các nút, thu thậpthông tin và kiểm tra các yếu tố

WebDriver sẽ cung cấp công cụ hỗ trợ bạn tốt hơn trong việc coding để tạotest scripts Bạn có thể sử dụng ngay các phương thức điều kiện như if-then-other,switch case, hoặc vòng lặp như do-while WebDriver hỗ trợ nhiều ngôn ngữ lậptrình khác nhau như Python, Java, Net, PHP, Python, Perl, Ruby Không nhấtthiết bạn phải am hiểu tất cả các ngôn ngữ trên nhưng để sử dụng WebDriver mộtcách hiệu quả hơn, bạn nên biết ít nhất một trong số những ngôn ngữ trên

3.1.4 Python

Python là một ngôn ngữ lập trình được sử dụng rộng rãi trong các ứng dụngweb, phát triển phần mềm, khoa học dữ liệu và máy học Các nhà phát triển sửdụng Python vì nó hiệu quả, dễ học và có thể chạy trên nhiều nền tảng khác nhau.Phần mềm Python được tải xuống miễn phí, tích hợp tốt với tất cả các loại hệthống và tăng tốc độ phát triển

3.2 Giới thiệu bài toán

Thông qua kiểm thử tự động, kịch bản kiểm thử được viết theo yêu cầu của kháchhàng, tìm ra lỗi để hệ thống hoạt động tốt trước khi đưa đến tay khách hàng Bên cạnh đókiểm thử tự động sử dụng Selenium và Python để thực hiện các thao tác và kiểm tra cácyếu tố trên trang web

Các kịch bản kiểm thử tự động này giúp đảm bảo tính chính xác và hiệu quả củatrang web, từ đó giúp tăng cường trải nghiệm của người dùng và đảm bảo hoạt động ổnđịnh của ứng dụng và giúp nâng cao độ tin cậy và tính ổn định của ứng dụng web ProductStore Cung cấp kết quả kiểm thử rõ ràng và dễ đọc, giúp nhà phát triển nắm bắt tìnhtrạng của ứng dụng một cách chính xác và nhanh chóng đưa ra các cải tiến cần thiết

Giả sử trang web có chức năng sau:

● Thêm sản phẩm vào giỏ hàng: Người dùng có thể thêm sản phẩmvào giỏ hàng bằng cách bấm nút "Thêm vào giỏ hàng" trên trang chi tiết sảnphẩm

● Xem giỏ hàng: Người dùng có thể xem giỏ hàng và kiểm tra các sảnphẩm đã thêm vào

Trang 19

3.3 Giới thiệu về ứng dụng kiểm thử

Trong đề tài này, chúng em đã tiến hành thực hiện kiểm thử tự động cho một trangweb cụ thể đó là Product Store dựa trên các testcase Các test case được xây dựng trênmôi trường Python thông qua Selenium Webdriver trên Visual studio code

Link website: https://www.demoblaze.com/

Trang web Product Store nhằm đáp ứng nhu cầu mua sắm trực tuyến các sản phẩmcông nghệ cho người tiêu dung

Hình 3.3 Trang web Product Store

3.4 Đặc tả yêu cầu

3.4.1 Yêu cầu phi chức năng

- Yêu cầu vận hành: Ứng dụng hoạt động trên nền tảng website

- Yêu cầu bảo mật: Vấn đề bảo mật sẽ được ưu tiên, đảm bảo bảo mật thôngtin khách hàng tuyệt đối

- Yêu cầu hiệu suất: Login/Logout

● Hệ thống hoạt động liên tục 24/24

● Tốc độ thời gian phản hồi hệ thống 0.2 giây

3.4.2 Yêu cầu chức năng

Trước khi sử dụng hệ thống người dùng phải Login Nếu không Loginhoặc Login không hợp lệ thì người dùng không thực hiện các hoạt động trong ứngdụng

Trang 20

3.4.2.1 Mô tả chung

a Sign up

Người dùng chưa có tài khoản, mới sử dụng ứng dụng web Product Storelần đầu tiên sẽ lập tài khoản, nhập username và password, chọn vào sign up Tàikhoản đã được tạo thành công

b Login/Logout

● Login vào ứng dụng

Người dùng nhập tên đăng nhập và mật khẩu Ứng dụng tiến hành kiểm trathông tin đăng nhập Nếu thông tin đăng nhập đúng thì có thể bắt đầu mua sắmtrong ứng dụng Nếu thông tin đăng nhập sai thì tiến hành đăng nhập lại Đăngnhập thành công hiển thị màn hình chức năng

● Logout khỏi ứng dụng

Người dùng muốn đăng xuất khỏi ứng dụng Product Store, chọn vào buttonLogout ở màn hình Product Store Sau khi click chọn thì người dung đăng xuấtkhỏi ứng dụng web và hiển thị đến màn hình chính

c Add to Cart

Người dùng đăng nhập thành công vào ứng dụng sẽ hiện lên màn hình muasắm Thêm sản phẩm muốn mua vào giỏ hàng, sau đó chọn button Cart khi truycập vào sẽ hiển thị những sản phẩm được thêm vào giỏ hàng Nếu muốn xóa sảnphẩm thì chọn button Delete để xóa sản phẩm, sau khi xong kiểm tra lại xem sảnphẩm đã được xóa ra khỏi giỏ hàng của bạn

d Contact

Người dùng đăng nhập thành công vào ứng dụng sẽ hiện lên màn hình muasắm Tiếp đến, chọn button Contact, màn hình sẽ xuất hiện những thông tin cầnbạn điền đầy đủ như địa chỉ email, tên và lời nhắn mà bạn muốn gửi đến ngườinhận Sau khi nhập đầy đủ thông tin thì chọn vào button Send message Nhữngphản hồi đã được gửi đến người nhận

e Place Order

Người dùng đăng nhập thành công vào ứng dụng sẽ hiện lên màn hình muasắm Chọn được những sản phẩm ưng ý rồi sẽ đến bước đặt hàng, trong đặt hàngcần nhập đầy đủ thông tin về tên, đất nước, thành phố, số tài khoản ngân hàng,

Trang 21

tháng và năm sinh Thông tin nhập đầy đủ và hợp lệ rồi thì chọn button Purchase,bạn đã đặt hàng thành công.

3.4.2.2 Mô tả Usecase

Use case tổng quát của quán tạp hóa

Hình 3.4 Use case tổng quát

a Use case Sign up

Hình 3.5 Use case Sign up

● Màn hình Sign up

Hình 3.6 Màn hình Sign up

Trang 22

Use case name: Sign up Actor: User

Brief Description: Use case này được thực hiện khi User tạo tài khoản

Triggers: Tạo tài khoản để vào ứng dụng Product Store

Relationships: User thực hiện chức năng sign up bằng cách nhập tên đăng nhập,

mật khẩu

Main flow – Operation:

- Bước 1: Click vào “Sign up” ở màn hình “Product Store”

- Bước 2: Nhập Username/ Password

- Bước 3: Click vào “Sign up” ở màn hình “Product Store”

- Bước 4: Sign up thành công hiển thị màn hình chức năng

Alternative flows:

- Hệ thống xác thực thông tin không thành công và hiển thị thông báo

Bảng 3.1 Bảng chi tiết use case Sign up

b Use case Login/Logout

Hình 3.7 Use case Login/Logout

● Màn hình Login

Hình 3.8 Màn hình Login

Trang 23

● Bảng chi tiết use case Login

Brief Description: Use case này được thực hiện khi User muốn Login vào ứng

dụng Product Store bằng cách nhập tên đăng nhập và mật khẩu

Triggers: User bắt đầu mua sắm với ứng dụng Product Store

Relationships: User thực hiện chức năng Login bằng cách nhập tên đăng nhập, mật

khẩu

Main flow – Operation:

- Bước 1: Click vào “Login” ở màn hình “Product Store”

- Bước 2: Nhập Username/ Password

- Bước 3: Click vào “Login” ở màn hình “Product Store”

- Bước 4: Login thành công hiển thị màn hình chức năng

Bảng 3.2 Bảng chi tiết use case Login

● Bảng chi tiết use case Logout

Brief Description: Use case này được thực hiện khi User muốn Logout khỏi ứng

dụng Product Store

Triggers: User muốn Logout khỏi ứng dụng Product Store

Relationships:

- User thực hiện chức năng Logout

- Logout là chức năng mở rộng của Login

Main flow – Operation:

- Bước 1: Click vào “Logout” ở màn hình “Product Store”

- Bước 2: User logout khỏi hệ thống và hiển thị đến màn hình chính

Bảng 3.3 Bảng chi tiết use case Logout

c Use case Add to Cart

Trang 24

Hình 3.9 Use case Add to Cart

● Màn hình Add to Cart

Hình 3.10 Màn hình thêm sản phẩm vào giỏ hàng

Hình 3.11 Màn hình sản phẩm đã được thêm vào và xóa sản phẩm ra khỏi giỏ hàng

Use case name: Thêm sản phẩm vào giỏ

hàng

Actor: User Brief Description: User thực hiện thêm sản phẩm vào giỏ hàng

Triggers: User muốn thêm sản phẩm vào giỏ hàng

Trang 25

- User thực hiện chức năng thêm sản phẩm vào giỏ hàng

- Chỉ được thêm mới khi Login thành công vào ứng dụng

- Xóa sản phẩm chức năng mở rộng của thêm sản phẩm

Main flow – Operation:

- Bước 1: User login thành công vào ứng dụng, muốn thêm mới vào giỏ

hàng

- Bước 2: Click vào button “Cart” tại màn hình Product Store

- Bước 3: Click vào sản phẩm muốn thêm vào giỏ hàng

- Bước 4: Mở giỏ hàng để xem sản phẩm đã được thêm vào chưa, sản phẩmchưa thêm vào thì quay lại bước 2

- Bước 5: Nếu không thích sản phẩm được thêm vào có thể xóa ra khỏi giỏ hàng

Bảng 3.4 Bảng chi tiết use case Add to Cart

d Use case Contact

Hình 3.12 Use case Contact

● Màn hình Contact

Trang 26

Hình 3.13 Màn hình Contact

Use case name: Liên hệ Actor: User

Brief Description: Liên hệ giữa User và chủ cửa hàng

Triggers: User muốn phản hồi với chủ cửa hàng

Relationships:

- User thực hiện chức năng liên hệ với chủ cửa hàng

- Chỉ được liên hệ khi Login thành công vào ứng dụng

Main flow – Operation:

- Bước 1: User login thành công vào ứng dụng, muốn liên hệ hoặc phản hồi

- Bước 2: Click vào button “Contact” tại màn hình Product Store

- Bước 3: Nhập đầy đủ thông tin vào “Contact Email, Contact Name,

Message”

- Bước 4: Nhập xong click vào “ Send message”

Bảng 3.5 Bảng chi tiết use case Contact

e Use case Place Order

Trang 27

Hình 3.14 Use case Place Order

● Màn hình Place Order

Hình 3.15 Màn hình Place order

Use case name: Đặt hàng Actor: User

Brief Description: User muốn đặt hàng trên ứng dụng

Triggers: User muốn đặt hàng trên ứng dụng Product Store

Relationships:

- User thực hiện chức năng đặt hàng

- Chỉ được liên hệ khi Login thành công vào ứng dụng

Ngày đăng: 01/09/2023, 09:19

HÌNH ẢNH LIÊN QUAN

Hình 1.1 Logo Công ty TMA Bình Định - Báo Cáo Thực Tập Nghề Nghiệp -  Chuyên Ngành - Quản Trị Hệ Thống Thông Tin - Đề Tài -   Kiểm Thử Tự Động Trên Website Product Store Tại Công Ty Tma Solution Bình Định.docx
Hình 1.1 Logo Công ty TMA Bình Định (Trang 8)
Hình 2.1 Hình Software Testing - Báo Cáo Thực Tập Nghề Nghiệp -  Chuyên Ngành - Quản Trị Hệ Thống Thông Tin - Đề Tài -   Kiểm Thử Tự Động Trên Website Product Store Tại Công Ty Tma Solution Bình Định.docx
Hình 2.1 Hình Software Testing (Trang 11)
Hình 2.3 Các cấp độ kiểm thử phần mềm - Báo Cáo Thực Tập Nghề Nghiệp -  Chuyên Ngành - Quản Trị Hệ Thống Thông Tin - Đề Tài -   Kiểm Thử Tự Động Trên Website Product Store Tại Công Ty Tma Solution Bình Định.docx
Hình 2.3 Các cấp độ kiểm thử phần mềm (Trang 13)
Hình 3.1 Thành phần của Selenium - Báo Cáo Thực Tập Nghề Nghiệp -  Chuyên Ngành - Quản Trị Hệ Thống Thông Tin - Đề Tài -   Kiểm Thử Tự Động Trên Website Product Store Tại Công Ty Tma Solution Bình Định.docx
Hình 3.1 Thành phần của Selenium (Trang 16)
Hình 3.3 Trang web Product Store - Báo Cáo Thực Tập Nghề Nghiệp -  Chuyên Ngành - Quản Trị Hệ Thống Thông Tin - Đề Tài -   Kiểm Thử Tự Động Trên Website Product Store Tại Công Ty Tma Solution Bình Định.docx
Hình 3.3 Trang web Product Store (Trang 19)
Hình 3.4 Use case tổng quát - Báo Cáo Thực Tập Nghề Nghiệp -  Chuyên Ngành - Quản Trị Hệ Thống Thông Tin - Đề Tài -   Kiểm Thử Tự Động Trên Website Product Store Tại Công Ty Tma Solution Bình Định.docx
Hình 3.4 Use case tổng quát (Trang 21)
Hình 3.11 Màn hình sản phẩm đã được thêm vào và xóa sản phẩm ra khỏi giỏ hàng - Báo Cáo Thực Tập Nghề Nghiệp -  Chuyên Ngành - Quản Trị Hệ Thống Thông Tin - Đề Tài -   Kiểm Thử Tự Động Trên Website Product Store Tại Công Ty Tma Solution Bình Định.docx
Hình 3.11 Màn hình sản phẩm đã được thêm vào và xóa sản phẩm ra khỏi giỏ hàng (Trang 24)
Hình 3.13 Màn hình Contact - Báo Cáo Thực Tập Nghề Nghiệp -  Chuyên Ngành - Quản Trị Hệ Thống Thông Tin - Đề Tài -   Kiểm Thử Tự Động Trên Website Product Store Tại Công Ty Tma Solution Bình Định.docx
Hình 3.13 Màn hình Contact (Trang 26)
Bảng 3.6 Bảng chi tiết use case Place Order - Báo Cáo Thực Tập Nghề Nghiệp -  Chuyên Ngành - Quản Trị Hệ Thống Thông Tin - Đề Tài -   Kiểm Thử Tự Động Trên Website Product Store Tại Công Ty Tma Solution Bình Định.docx
Bảng 3.6 Bảng chi tiết use case Place Order (Trang 28)
Bảng 3.7 Test case của chức năng Sign up - Báo Cáo Thực Tập Nghề Nghiệp -  Chuyên Ngành - Quản Trị Hệ Thống Thông Tin - Đề Tài -   Kiểm Thử Tự Động Trên Website Product Store Tại Công Ty Tma Solution Bình Định.docx
Bảng 3.7 Test case của chức năng Sign up (Trang 29)
Bảng 3.9 Test case của chức năng Cart - Báo Cáo Thực Tập Nghề Nghiệp -  Chuyên Ngành - Quản Trị Hệ Thống Thông Tin - Đề Tài -   Kiểm Thử Tự Động Trên Website Product Store Tại Công Ty Tma Solution Bình Định.docx
Bảng 3.9 Test case của chức năng Cart (Trang 31)
Bảng 3.8 Test case của chức năng Login/Logout - Báo Cáo Thực Tập Nghề Nghiệp -  Chuyên Ngành - Quản Trị Hệ Thống Thông Tin - Đề Tài -   Kiểm Thử Tự Động Trên Website Product Store Tại Công Ty Tma Solution Bình Định.docx
Bảng 3.8 Test case của chức năng Login/Logout (Trang 31)
Bảng 3.10 Test case của chức năng Contact - Báo Cáo Thực Tập Nghề Nghiệp -  Chuyên Ngành - Quản Trị Hệ Thống Thông Tin - Đề Tài -   Kiểm Thử Tự Động Trên Website Product Store Tại Công Ty Tma Solution Bình Định.docx
Bảng 3.10 Test case của chức năng Contact (Trang 32)
Bảng 3.11 Test case của chức năng Place Order - Báo Cáo Thực Tập Nghề Nghiệp -  Chuyên Ngành - Quản Trị Hệ Thống Thông Tin - Đề Tài -   Kiểm Thử Tự Động Trên Website Product Store Tại Công Ty Tma Solution Bình Định.docx
Bảng 3.11 Test case của chức năng Place Order (Trang 33)
Hình 3.16 Hình các công cụ đã cài đặt - Báo Cáo Thực Tập Nghề Nghiệp -  Chuyên Ngành - Quản Trị Hệ Thống Thông Tin - Đề Tài -   Kiểm Thử Tự Động Trên Website Product Store Tại Công Ty Tma Solution Bình Định.docx
Hình 3.16 Hình các công cụ đã cài đặt (Trang 34)

TỪ KHÓA LIÊN QUAN

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

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w