1. Trang chủ
  2. » Giáo Dục - Đào Tạo

Kiểm thử phần mềm quản lý web bán thức ăn the pizza company

16 56 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

Định dạng
Số trang 16
Dung lượng 868,08 KB

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

Nội dung

Với mong muốn có được cái nhìn xác thực, rõ ràng hơn về kiểm thử phần mềm và tiếp cận được với công cụ kiểm thử tự động Selenium để làm tiền đề cho định hướng tương lai cũng như hiểu rõ

Trang 1

Ch ươ ng 1: Gi i thi u ớ ệ

- Cùng với sự tiên tiến của khoa học và nhu cầu mua sắm, ăn uống của khách hàng ngày nay Các ứng dụng web phải ngày càng mạnh mẽ đáp ứng tối đa nhu cầu của khách hàng, trở thành nền tảng kết nối thông tin, đóng vai trò quyết định của thương mại điện tử Để đạt được điều này, các ứng dụng Web cần phải có hiệu năng cao và đáng tin cậy, Vì vậy, việc đưa ra một ứng dụng Web hoàn hảo cho những người đang và sẽ sử dụng ứng dụng đã trở thành một thách thức chính trong đảm bảo chất lượng phần mềm Điều này dẫn tới việc kiểm thử ứng dụng Web trở nên thiết yếu đối với các dự án phần mềm và cần phải có những phương pháp đặc biệt khác với phần mềm truyền thống Nhóm chúng em đã chọn đề tài “ Kiểm thử phần mềm quản lý web bán thức ăn The pizza

Company” Với mong muốn có được cái nhìn xác thực, rõ ràng hơn về kiểm thử phần mềm và tiếp cận được với công cụ kiểm thử tự động Selenium để làm tiền

đề cho định hướng tương lai cũng như hiểu rõ hơn các chức năng của web bán thức ăn “The pizza Company”

1.1 M c tiêu đ án ụ ồ

- Trong đồ án kiểm thử phần mềm quản lý web bán thức ăn “The pizza

Company” Với mục tiêu là tìm hiểu những kiến thức tổng quan nhất về kiểm thử, đặc biệt là với các công cụ kiểm thử tự động Đồ án tập trung nghiên cứu vai trò, phương pháp cũng như ứng dụng của Selenium WebDriver trong việc kiểm thử ứng dụng web Từ đó phân tích và xây dựng các test case cho các chức năng của website Việc thực hiện kiểm thử đồ án này, giúp các bạn trong nhóm

có thể tìm hiểu sâu hơn về lĩnh vực kiểm thử, vận dụng được các kiến thức đã học để áp dụng vào những bài toán thực tế

1.2 Các ch c năng / module th c hi n ki m th ứ ự ệ ể ử

1.3 Môi tr ườ ng, công c và các gi đ nh ụ ả ị

*Kiểm thử tự động là gì? Quy trình kiểm thử tự động

- Kiểm thử tự động là quá trình xử lý một cách tự động các bước thực hiện các test case Kiểm thử tự động bằng một công cụ nhằm rút ngắn thời gian kiểm thử

- Quy trình kiểm thử tự động gồm 4 bước:

+ Bước 1: Viết kịch bản kiểm thử, dùng công cụ kiểm thử để ghi lại các thao tác lên phần mềm cần kiểm tra và tự động sinh ra test script

Trang 2

+ Bước 2: Chỉnh sửa để kịch bản kiểm thử thực hiện kiểm tra theo đúng yêu cầu đặt ra, làm theo trường hợp kiểm thử cần thực hiện

+ Bước 3: Chạy kịch bản kiểm thử, giám sát hoạt động kiểm tra phần mềm của kịch bản kiểm thử

+ Bước 4: Kiểm tra kết quả thông bao sau khi thực hiện kiểm thử tự động Sau đó bổ sung, chỉnh sửa những sai sót

*Ưu điểm và nhược điểm của kiểm thử tự động

- Các ưu điểm có thể kể đến của kiểm thử tự động là:

+ Kiểm thử chính xác và có thể bao quát thông tin

+ Theo dõi được chính xác kết quả từng giai đoạn và các báo cáo tổng hợp

+ Cần ít nhân lực trong quá trình kiểm thử

+ Chu kỳ kiểm thử diễn ra trong thời gian ngắn

+ Hiệu năng của kiểm thử các lớp vượt xa tầm với của kiểm thử thủ công

- Tuy nhiên không thể không kể đến các nhược điểm sau của kiểm thử tự động:

+ Chi phí cao cho việc chuyển giao công nghệ và đào tạo nhân viên + Tốn chi phí đầu tư lớn cho việc phát triển công cụ kiểm thử tự động + Tốn chi phí và thời gian cho việc tạo các kịch bản kiểm thử và bảo trì các kịch bản kiểm thử

+ Giai đoạn chuẩn bị kiểm thử yêu cầu nhiều nhân lực

+ Khu vực kiểm thử tự động có thể không bao quát đầy đủ, không áp dụng được trong việc tìm lỗi mới của sản phẩm

*So sánh giữa kiểm thử tự động và kiểm thử thủ công

- Ưu điểm:

+ Độ tin cậy cao: Nhờ sự ổn định vượt trội của công cụ kiểm thử tự động so với con người, đặc biệt trong trường hợp có quá nhiều test case cần được thực thi, nên độ tin cậy của kiểm thử tự động thường cao hơn so với kiểm thử thủ công

+ Khả năng lặp: công cụ kiểm thử tự động ra đời là để giúp cho các tester không phải lặp đi lặp lại các thao tác như: nhập dữ liệu, click, check kết quả, một cách nhàm chán với độ tin cậy và ổn định cao + Khả năng tái sử dụng dụng: với một bộ kiểm thử tự động, người ta có thể sử dụng cho nhiều phiên bản ứng dụng khác nhau, đây được gọi lf tính tái sử dụng

+ Tốc độ cao: do thực thi bởi máy nên tốc độ của kiểm thử tự động nhanh hơn nhiều so với tốc độ con người Nếu cần 5 phút để thực thi một test case một cách thủ công thì có thể người ta chỉ cần khoảng 30 giây để thực thi một cách tự động

Trang 3

+ Chi phí thấp: nếu áp dụng kiểm thử tự động đúng cách, người ta có thể tiết kiệm được nhiều chi phí, thời gian và nhân lực, do kiểm thử tự động nhanh hơn nhiều so với kiểm thử thủ công, đồng thời nhân lực cần để thực thi và bảo trì scripts không nhiều

- Nhược điểm:

+ Khó mở rộng, khó bảo trì: trong cùng một dự án, để mở rộng phạm vi cho kiểm thử tự động khó hơn nhiều so với kiểm thử thủ công Để cập nhật một test case thủ công, người ta chỉ cần mở ra và gõ, rất đơn giản Nhưng kiểm thử tự động lại không đơn giản như vậy, cập nhật hay chỉnh sửa yêu cầu rất nhiều công việc như debug, thay đổi dữ liệu đầu vào, và cập nhật code mới

+ Khả năng bao phủ thấp: do ứng dụng, khó mở rộng và đòi hỏi nhiều

kỹ năng lập trình nên độ bao phủ của kiểm thử tự động khá thấp + Vấn đề công cụ và nhân lực: hiện nay cũng có nhiều công cụ hỗ trợ kiểm thử tự động khá tốt nhưng chúng vẫn còn nhiều hạn chế Ngoài

ra nguồn nhân lực có thể sử dụng thành thạo các công cụ này cũng không nhiều

*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, sau đó được tiếp tục phát triển bởi nhóm ThoughtWorks vào năm 2004

- Selenium là một bộ các công cụ hỗ trợ kiểm thử tự động các tính năng của ứng dụng web, bao gồm 4 phần: Selenium IDE, Selenium Remote Control (RC), Selenium Core và Selenium Grid

- Selenium hỗ trợ kiểm thử trên hầu các trình duyệt web phổ biến hiện nay như Firefox, Internet Explorer, Google Chrome và hỗ trợ trên rất nhiều ngôn ngữ lập trình phổ biến như C#, Java, Python, PHP Không những vậy, Selenium còn có thể kết hợp với một số công cụ kiểm thử khác như Junit, Bromine, Nunit

1.4 Nhân sự thực hiện

Trang 4

3 Giỏ hàng Selenium

4 Thay đổi thông tin khách hàng Selenium

ide

code

code

8 Lịch sử mua hàng, tra cứu đơn

code

code

1.5 K ho ch th c hi n ế ạ ự ệ

20/12/2021-27/12/2021 - Thảo luận chọn đề tài kiểm thử

- Xác định các chức năng kiểm thử 27/12/2021-02/01/2022 - Xác định công cụ, môi trường kiểm thử

- Lập các giả định 02/01/2022 - 05/01/2022 - Tiến hành kiểm thử

- Nghiệm thu kết quả 05/01/2022-10/01/2022 - Kiểm duyệt lại và hoàn thành báo cáo

Trang 5

12/01/2022 - Báo cáo đồ án

1.6 Thông tin nhóm

Ch ươ ng 2: Chi n l ế ượ c ki m th ể ử

Ch ươ ng 3: Th c hi n ki m th ự ệ ể ử

1 Selenium WebDriver:

*Tiền thân của Selenium WebDriver

Trước khi Selenium WebDriver ra đời và phát triển thì Selenium RC là công

cụ chính trong suốt một thời gian dài

Hiện nay, Selenium RC không được sử dụng nhiều như Selenium WebDriver nữa, tuy nhiên người dùng vẫn có thể tiếp tục phát triển các kịch bản kiểm thử với Selenium RC

Selenium RC là công cụ phục vụ cho các công việc kiểm thử đòi hỏi nhiều hơn việc thao tác với các website trên giao diện Nó cho phép viết các kịch bản kiểm thử tự động ứng dụng Web với sự hỗ trợ của các ngôn ngữ lập trình như Java, C#, Python, Pert, PHP để tạo ra các trường hợp kiểm thử phức tạp hơn như đọc và viết các tệp tin, truy vấn cơ sở dữ liệu, gửi mail kết quả kiểm thử

*Đặc trưng của Selenium WebDriver

Selenium WebDriver kế thừa và phát triển từ Selenium IDE, Selenium RC, Selenium Grid Selenium WebDriver tương tác trực tiếp với trình duyệt mà không cần thông qua bất kỳ trung gian, không giống như Selenium RC phụ thuộc vào máy chủ

Tính năng chính trong Selenium WebDriver là việc tchs hợp Webdriver API Ngoài việc giải quyết một số hạn chế trong Selenium RC API, Selenium

WebDriver còn được thiết kế để mang đến một giao diện lập trình đơn giản hơn

Nó cho phép sử dụng một trong số các ngôn ngữ lập trình như HTML, Java, Net,

… để tạo kịch bản kiểm thử kết hợp với sử dụng các điều kiện, vòng lặp… khiến cho test script trở nên chính xác hơn

Selenium WebDriver còn được phát triển tốt hơn để hỗ trợ cho các trang Web động do các phần tử trong một trang Web động có thể thay đổi bất cứ lúc nào, ngay cả khi trang đó không được tải lại vì vậy, Selenium WebDriver được phát triển để hỗ trợ quá trình kiểm thử mà không cần phải thực hiện lại có khi có thay

Trang 6

đổi xảy ra.

*Ưu nhược điểm của Selenium WebDriver

- Ưu điểm:

+ Selenium WebDriver hỗ trợ rất đắc lực với các loại ngôn ngữ lập trình khác nhau

+ Selenium WebDriver hỗ trợ người dùng sử dụng một cách miễn phí + Selenium WebDriver rất dễ hiểu và rất dễ để sử dụng

+ Selenium WebDriver hỗ trợ nhiều trình duyệt khác nhau

- Nhược điểm

+ Nếu như Selenium WebDriver muốn chạy ổn định thì cần phải có các handie timeout (phụ thuộc vào tốc độ của mạng)

+ Nếu như người dùng không kiểm soát tốt đối với Selenium WebDriver thì sẽ gây ra tình trạng hết ram hoặc là chế đứng

STT Chức

năng

Mô tả sơ lược

Các giả định

Các dữ liệu kiểm

Các bước thực hiện Kết quả

Đề nghị

Pas

s Failed

1 Đăng nhập Chức năng cho

phép người dùng đăng nhập vào tài khoản

đã đăng ký trước đó trên website để lưu trữ các thông tin của mình.

- SĐT, mật khẩu.

- Bỏ trống thông tin bắt buộc nhập

-Sđt đăng nhập:

0866925043 -Mật khẩu:

thepizza -Sđt đăng nhập sai:

086692504 -Sđt đăng nhập sai:

abcd -Mật khẩu sai: pizza

-Viết test case.

-Sử dụng selenium webdriver

để kiểm tra.

- Nhập thông tin (hợp lệ và không hợp lệ).

- Ghi nhận kết quả

Trang 7

2 Đổi mật

khẩu

Nhằm trường hợp bị người khác nhìn thấy mật khẩu, để tránh làm phiền việc bị gọi hỏi đơn đặt hàng không cần thiết thì nên đổi mật khẩu mới.

- Mật khẩu

cũ, mật khẩu mới, xác nhận mật khẩu mới.

- Bỏ trống thông tin bắt buộc nhập

-Mật khẩu

cũ đúng:

thepizza -Mật khẩu mới đúng:

thepizzacom pany -Mật khẩu cập nhật đúng:

thepizzacom pany -Mật khẩu mới sai:

Thepizza

-Viết test case.

-Sử dụng selenium webdriver

để kiểm tra.

- Nhập thông tin (hợp lệ và không hợp lệ).

- Ghi nhận kết quả.

3 Tìm

kiếm

món ăn

Chức năng cho phép người dùng tìm kiếm món ăn có ở nhà hàng một cách dễ dàng hơn nhiều thông qua những từ khóa mà khách hàng

có nhu cầu hoặc là tên đầy đủ cho những chiếc bánh

- Gõ từ khóa có dấu và đầy đủ

ký tự -Gõ từ khóa không dấu

- Gõ từ khóa dưới 3

ký tự -Để trống vào

ô tìm kiếm

Từ khóa món ăn

-Viết test case

-Sử dụng selenium webdriver

để kiểm tra (Nhập tên món

ăn cần tìm bằng những từ khóa) -Ghi nhận các kết quả

-thực hiện đánh giá PASS or FAILED trong testcase

phải mở rộng

về từ khóa tìm kiếm hơn như là các từ khóa không

có dấu hoặc

ít ký tự

4 Lịch sử

mua hàng,

tra cứu đơn

hàng

Chức năng cho phép khách hàng có thể xem lại những

- Chọn lịch sử mua hàng

để xem

- Số điện thoại đăng ký:0937140 226

Viết test case.

-Sử dụng selenium

Trang 8

hóa đơn mình

đã đặt và trạng

thái của những

đơn hàng Tra

cứu lại những

đơn hàng thông

qua mã đơn

hoặc số điện

thoại

danh sách

tất cả đơn

- Tra cứu

bằng mã

đơn hàng

- Tra cứu

bằng số

điện thoại

đăng ký

-Tra cứu

bằng số

điện thoại

không

đăng ký

- Nhập sai

mã đơn

hàng

-Số điện thoại không đăng ký:0937438 253

- Mã đơn hàng:

503576,50 3060,4961 15

- Mã đơn hàng sai:12345

webdriver

để kiểm tra.

- Nhập thông tin (hợp lệ và không hợp lệ).

- Ghi nhận kết quả.

Trang 9

5 Tin tức và

sự kiện

Chức năng này cho phép chúng

ta xem những

sự kiện mới nhất chẳng hạn (tích điểm, đổi quà, ) hay là những thông báo mới về thời gian hoạt động tại nhà hàng.

Chọn tin tức & sự kiện để xem

-Viết test case -Sử dụng Selenium webdriver

để kiểm tra.

-Ghi nhận kết quả

6 Liên hệ

với cửa

hàng

Chức năng này cho phép người dùng gửi các ý kiến của mình hoặc là các khiếu nại đến cửa hàng cũng như là phản hồi về món ăn

Nhập đủ thông tin

và nhập đúng Không nhập thông tin nào cả nhập phần họ tên là số

- còn lại nhập đủ

vả đúng nhập vào phần họ

Họ tên, số điện thoại, email, tiêu

đề, nội dung

-Viết test case

-Sử dụng selenium webdriver

để kiểm tra Nhập vào các thông tin theo nhiều trường hợp để kiểm thử

-Ghi nhận các kết quả

-thực hiện đánh giá PASS or

thêm tính năng phát hiện các thông tin không đúng định dạng hoặc không

có tính xác thực rõ ràng

Trang 10

tên là ký

tự lạ -

còn lại

nhập đủ

vả đúng

không

nhập họ

và tên -

còn lại

nhập đủ

vả đúng

nhập

phần

thông tin

số điện

thoại

bằng chữ

cái

nhập

phần

thông tin

số điện

thoại

bằng ký

tự lạ -

còn lại

nhập đủ

vả đúng

không

nhập số

diện

thoại -

còn lại

nhập đủ

vả đúng

FAILED trong testcase

Trang 11

nhập Email không đúng định dạng - còn lại nhập đủ

vả đúng không nhập Email - còn lại nhập đủ

vả đúng không nhập tiêu

đề - còn lại nhập

đủ vả đúng không nhập nội dung mô

tả - còn lại nhập

đủ vả đúng

2 Selenium ide:

stt chức

năng mô tả sơ lược các giả định Các dữ liệu các bước Kết quả Đề nghị

Trang 12

kiểm thực

1 Giỏ

hàng Chức năng cho phép người dùng

có thể chọn,

thêm, sửa, xóa

món ăn tạo điều

kiện thuận lợi

cho việc mua

sản phẩm Tính

năng này cho

phép khách hàng

thanh toán trực

tuyến và cung

cấp thông tin

cho cửa hàng,

bộ xử lý thanh

toán.

- Đăng nhập tài khoản (SĐT là ký tự)

- Thêm món

- Xóa món

- Tăng số lượng món

- Giảm số lượng món ( Với điều kiện số lượng > 1)

- Giảm số lượng món ( Với điều kiện số lượng = 1)

- Tăng, giảm món (giá tiền được cập nhật lại theo số lượng món thay đổi)

-Viết test case -Sử dụng selenium IDE để kiểm tra

Nhập thông tin (bao gồm hợp lệ và không hợp lệ)

-Ghi nhận các kết quả.

tiền ngay sau có thay đổi trong giỏ hàng để tránh khách hàng nhầm lẫn giá khi mua hàng

2 Thay

đổi

thông

tin

Chức năng cho

phép người dùng

có thể thay đổi

tên hoặc địa chỉ

email cá nhân,

nhằm cập nhật

tài khoản chính

xác và bảo mật

tài khoản để đặt

hàng tại website

của cửa hàng.

- Thay đổi thông tin ( Tên bằng

ký tự số) - Thay đổi thông tin ( Email sai)

- Thay đổi thông tin

Thay đổi thông tin ( Email để trống) - Thay đổi thông tin ( Tên để trống)

Tên, số điện thoại, email.

-Viết test case -Sử dụng selenium IDE để kiểm tra

Nhập thông tin (bao gồm hợp lệ và không hợp lệ)

-Ghi nhận các kết quả.

thay đổi số điện thoại cá nhân, nhằm cập nhật số điện thoại chính xác và mới nhất từ khách hàng.

Trang 13

3 Hộp đen:

stt chức

năng

mô tả sơ

lược

các giả định các dữ liệu

kiểm

các bước thực hiện Kết quả

Đề nghị pass faile d

1 Thanh

toán

trực

tuyến

cho phép

khách

hàng

được

thanh

toán hóa

đơn mua

hàng

thông

qua ví

momo

hoặc

chuyển

khoản

qua

sacomba

nk

-Số điện thoại có đăng ký momo -Có tài khoản

- Số tiền trong tài khoản ít hơn tổng hóa đơn

-Số điện thoại không đăng ký momo

- Không có tài khoản ngân hàng

Số điện thoại,

số tài khoản ngân hàng

-chọn kỹ thuật kiểm thử hộp đen -Viết testcase

Ch ươ ng 4: K t qu đ t đ ế ả ạ ượ c

4.1 K t qu ki m th ế ả ể ử

Ngày Test

Ngày đăng: 13/04/2022, 11:44

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