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

Bài tập lớn kiểm thử tự Động cho ứng dụng website black rouge vietnam

94 0 0
Tài liệu được quét OCR, nội dung có thể không chính xác
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

Thông tin cơ bản

Định dạng
Số trang 94
Dung lượng 9,78 MB

Nội dung

Tuy nhiên phần mềm càng lớn thì càng tốn nhiều công sức, nhân lực và thời gian nếu làm thử công, chưa kể tới việc chất lượng sản phâm không cao và không chính xác, không phù hợp với yêu

Trang 1

TRUONG DAI HQC SU PHAM KY THUAT HUNG YEN

BAI TAP LON

KIEM THU TU DONG CHO UNG DUNG WEBSITE BLACK

HUNG YEN - 2024

Trang 2

Nhận xét của giảng viên hướng dẫn:

GIẢNG VIÊN HƯỚNG DẪN

(Ky và ghỉ rõ họ tên)

Trang 3

LOI CAM DOAN

Em xin cam đoan bài tập lớn “Kiểm thử tự động cho ứng dụng website Black Rouge Vietnam” la két quả thực hiện của bản thân em dưới sự hướng dẫn của cô Đỗ Thị Thu Trang

Những phần sử dụng tài liệu tham khảo trong đỗ án đã được nêu rõ trong phần tài liệu tham khảo Các kết quả trình bày trong đồ án và chương trình xây đựng được hoàn toản là kết quả do bản thân em thực hiện

Nếu vi phạm lời cam đoan này, em xin chịu hoàn toàn trách nhiệm trước Khoa

và Nhà trường

Hưng Yên, ngày tháng năm 2024

Sinh viên

Trang 4

LOI CAM ON

Đề có thể hoàn thành bài tập lớn này, đầu tiên em xin phép gửi lời cảm ơn tới

bộ môn Công nghệ phần mềm, Khoa Công nghệ thông tin - Trường Đại học Sư phạm

Kỹ thuật Hưng Yên đã tạo điều kiện thuận lợi cho em thực hiện đỗ án môn học nảy

Đặc biệt em xin chân thành cảm ơn cô Đỗ Thị Thu Trang đã rất tận tình hướng

dẫn, chỉ bảo em trong suốt thời gian thực hiện đồ án vừa qua

Em cũng xin chân thành cảm ơn tất cả các Thầy, các Cô trong Trường đã tận tình giảng dạy, trang bị cho em những kiến thức cần thiết, quý báu để giúp em thực hiện được đồ án này

Mặc dù em đã có cô gắng, nhưng với kiến thức còn hạn chế, trong quá trình thực hiện đề tài không tránh khỏi những thiếu sót Em hi vọng sẽ nhận được những ý kiến nhận xét, góp ý của các Thầy giáo, Cô giáo về những kết quả triển khai trong đồ

án

Em xin trân trọng cảm on!

Trang 5

2.2.2 Giới thiệu tổng quan về Selenium WebDriver 5s s22 ren 23

Trang 6

CHUONG 3: DAC TA HE THONG PHAN MEM cccsccecsseeccsseeeceseeeceseeeeeseneeees 27

3.1 Giới thiệu CHUNG cece 12 22212211211 1211 12211511151 1111 11111111211 171 011 H1 H1 111 Hy 27 3.2 Các yêu cầu chức năng 5 1 2E 1111211 1121121122121 1221 ryu 27 3.2.1 Yêu cầu về chức năng phía người dùng 2-52 22222212222 xe 27

3.3 Các yêu cầu phi chức năng - 2 122221 1191111211 1121121111111 11120 trreg 45 3.4 Tinh Ung Quine .- 46 3.5 Tinh toan ven dit liéu/Performance 0 0.c cece ceecccccceceeecccccccccceseececeesecuauuneeeeesees 47

CHƯƠNG 4: TRIÊN KHAI KIÊM THỬ TỰ ĐỘNG 2.-c:222cccszzsec re 48 4.1 Thiết kế kiểm thử : 522 2221212211122211122111122211 1111.1 11.111 01 te 48

4.1.1 Thiết kế kiếm thử tông quan hệ thống - 2-2221 SE 221221222722 2x6 48

4.1.2 Thiét ké kiém thir chite nang ccccceccecceccecseccsessessessesesecsessesseseesesetevsesseees 49

4.2 Xây dựng các trường hợp kiểm thử - 5 212221111115 1121111211211121 1c te 60

4.4 Thực thi và báo cáo kiểm thử 25s: 22 1222112221121 de 90 0n 91

Trang 7

DANH MUC CAC THUAT NGU

Trang 8

DANH MUC CAC BANG

Cac yéu cau chite nang c.cccccccccccccecessessecsceseessesesseeecensetecsteeesereseseeees 30

Dữ liệu chức năng đăng nhập - 222222 211221112211 1512 115111 2x xe 31

Dữ liệu chức năng đăng ký 0 Q0 01121121 112111211111 121112122811 ke 33

Dữ liệu chức năng thêm vào giỏ hàng 20c 20 122 12 2n re 34

Dữ liệu chức năng ø1ỏ hàng 0 0201221121112 11211 1811121211 11181 11 te 36

Dữ liệu chức năng đặt hàng - 0 0 22122211211 221 1122115121112 812 122 xe 37 Bảng yêu cầu phi chức năng 2 5-22 2E 2212111211211 211211 1x2 47

Testcase chức năng đăng nhập 2 22 2122111211211 1211511 281222 xe 63 Test case chức năng đăng ký 2 2 220112 212121122111 111111 1812 re 65

Trang 9

Hình 2- 6: Tông quan về selenium webdFriVeT - 22: 22522121221 1221212212211 22 xe

Hinh 2- 7: Cong cu eclipse 44

Hinh 3- 1: Chức năng đăng nhậtp - ccc cece seeseeeseeeceneestecnsectsesssenseeeseeenses

Hinh 3- 2: Chức năng đăng ký - Q20 2 1212111111 2112 1111211112110 211112211 grkg

Hinh 3- 3: Chức năng thêm vào p1ó hàng - 0 2022211211121 1111121117118 1 18211 kg

Hinh 3- 4: Chức năng ø1ỏ hàng - 5 22222121 12211121 1253121112211 1813111121111 11 1111 kg

Hinh 3- 5: Chức năng đặt hàng - 2200201211121 1111112112211 011 1011111111111 1 21 1 kg

Hình 3- 6: Chức năng tìm kiếm 5 S2 1221211111111 1112121121 1g tru

Hình 3- 7: Biểu đồ use case tông quát của hệ thống 2 2212 S2 11221 2x2

Hinh 3- 8: Use case đăng nhập - L2 02012211211 121112121221 11211011101 111 211281 1e,

Hình 3- 9: Use case xem sản phẩm - 22 S1 2E1E11211212111121121111212 1 mrce

Hinh 3- 10: Use case quan lý s1ỏ hàng 2022011211221 12 112211211101 11 281111811 te

Hình 3- 11: Use case tìm kiếm ST 1102111 1515111521515121115 2 1150511281 ra

Trang 10

Hình 4- 4: Thiết kế kiểm thử chức năng đăng nhập 2 2-2 525222212222 c2 49

Hình 4- 12: Thiết kế kiểm thử chức năng quản lý giỏ hàng 2 52- 5255252252 56 Hình 4- 13: Thiết kế kiểm thử chức năng quản lý giỏ hàng 3 -2- 5255252222 56

Hình 4- 14: Thiết kế kiểm thử chức năng thông tin dat hang ccc: 57

Hình 4- 16: Thiết kế chức năng thông tin thanh toán 2222 +E E222 22x££zzsze2 58

Hinh 4- 21: Két quả chạy test case LOGIN cece cece 2212211211121 12111 1182118115181 1 1 kg 89

10

Trang 11

CHUONG 1: = TONG QUAN VE DE TAI

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

Sau đại dịch covid 19 công nghệ thông tin nói chung cũng như công nghệ phần

mềm nói riêng được công chúng tiếp cận rộng rãi hơn, chính vì vậy mà việc phát triển phần mềm ngày càng được chú trọng và được hỗ trợ bởi nhiều công cụ tiên tiến giúp

cho việc xây dựng phần mềm giảm bớt được độ khó và hiệu quả hơn Mặc dù vậy

nhưng độ phức tạp của việc tạo ra phần mềm cũng như những giới hạn về chi phí và

thoi gian van không đảm bảo được độ chính xác tuyệt đối không có saI sót về mặt nào

đó dù các hoạt động đảm bảo chất lượng phần mềm và kiểm thử ngày càng khoa học

và chặt chẽ Lỗi vẫn luôn tại trong sản phâm và có thể gay ra những thiệt hại lớn

Do đó đặt ra yêu cầu cần có công tác kiếm thử phần mềm thật kỹ lưỡng nhằm ngăn chặn các lỗi hay hỏng hóc tiềm tàng bên trong bên trong mà ta chưa thể nhận ra Tuy nhiên phần mềm càng lớn thì càng tốn nhiều công sức, nhân lực và thời gian nếu làm

thử công, chưa kể tới việc chất lượng sản phâm không cao và không chính xác, không

phù hợp với yêu cầu khách hàng Chính vì vậy mà cần có các hệ thống kiểm thử phần mềm một cách tự động cho phép ta thực hiện các công việc kiểm thử một cách nhanh chóng và độ an toản, chính xác cao nhất có thể Hơn thế nữa, nhu cầu tìm hiểu về mỹ phâm của phái nữ hiện nay cũng rất cao, các ứng dụng phần mềm về mỹ phẩm cũng

ra đời rất nhiều, nhất là về các đòng son Selemum là bộ kiểm thử tự động miễn phí (mã nguồn mở) dành cho các ứng dụng web trên các trình duyệt và nền tảng khác nhau Với selenium củng một số công cụ hỗ trợ khác như Cucumber, Jenkins, Maven, kiểm thử viên có thể phát triển thành các framework hỗ trợ cho viết các kịch bản kiểm thử và chạy các kịch ban này một cách tự động, giảm nguồn lực, tăng độ tin cậy

và nhàm chán của công việc kiểm thử Ngoài ra, hiện nay, nhụ cầu kiểm thử tự động khá cao nhưng nhân lực trong ngành này không nhiều, đặc biệt là ở Hà Nội Các công

ty muốn áp dụng kiểm thử tự động trong quá trình phát triển dự án nhưng việc hiểu biết về kiểm thử tự động khả là mơ hồ và chưa xây dựng được một framework chuẩn

ll

Trang 12

áp dụng cho dự án tại công ty mình Chính vi lẽ đó mà em chọn đề tài “Kiểm thử tự dong cho tung dung website Black Rouge Vietnam” lam bài tập lớn

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

- Áp dụng BDD để tự động hóa quá trình kiểm thử, đặc biệt là tập trung

vào trải nehiệm người dùng

1.3 Giới hạn và phạm vi của dé tai

1.3.1 Đối tượng nghiên cứu

- _ Đối tượng nghiên cứu: trang website Black Rouge Vietnam

- _ Khách thê nghiên cứu: Các chuyên gia đầu ngành, nhân viên tác nghiệp, khách hàng, nhà cung cấp

1.3.2 Phạm vì nghiÊn cứu

- Pham vi khong gian:

- Pham vi thoi gian: Thoi gian thực hiện từ tháng 4/2024 đến tháng 6/2024

- Y nghĩa khoa học và thực tiễn của đề tài :

o Ý nghĩa khoa học: nghiên cứu các kiến thức về kiểm thử tự động, sử dụng công cụ hỗ trợ để kiểm thử cho một website

o Y nghia thực tiễn: Kiểm thử tự dong cho website Black Rouge Vietnam 1.4 Nội dung thực hiện

Cần phải nắm rõ các từng hoạt động và quy trình của các tính năng ở website website Black Rouge Vietnam và quy trình kiểm thử và đảm bảo chất lượng phần mềm

- _ Xây dựng bản đặc tả SRS

- Xay dung test design

- Xay dung testcase

- Thur thi testcase

- Bao cao loi

- Bao cáo kiếm thử

12

Trang 13

9216, TEEE,

Sử dụng các phương pháp kiểm thử:

Phương pháp phân tích giá trị biên

Phương pháp phân vùng tương đương

Phương pháp bảng quyết định

Khảo sát và phân tích đặc tả yêu cầu, ghi chú những chức năng, giao diện

khách hàng mong muốn, từ đó thiết kế các testcase phù hợp để kiêm thử sản phẩm Tìm tai ligu trong và ngoài nước, tìm ra hướng đi phù hợp

Sử dụng các công cụ kiểm thử tự động chức năng và phi chức năng: Katalon Studio, Jmeter

13

Trang 14

Về cơ bản, đây là một bài kiểm tra đề kiểm tra lại xem thiết bị hoặc phần mềm có

thực hiện chính xác như theo thiết kế hay không Trong quá trình phát triển sản phâm,

kiểm thử tự động sẽ kiểm tra đề tìm ra các lỗi, các sai sót hay bat ky van dé phat sinh nào khác Kiểm thử tự động được sử dụng cho các công việc lặp đi lặp lại cũng như các công việc khó có thê thực hiện bằng kiểm thử thủ công

Kiểm thử tự động: là một kỹ thuật tự động trong đó người kiểm thử tự viết các tập lệnh và sử dụng phần mềm phù hợp đề kiểm thử phần mềm Nó về cơ bản là một quá trình tự động hóa của một quy trình kiếm thử thủ công Giống như kiêm thử hồi quy, kiêm thử tự động cũng được sử dụng để kiểm thử ứng dụng theo quan điểm tải, hiệu năng và ứng suất

Kiểm thử tự động giúp giảm chỉ phí kiếm thử bằng cách hỗ trợ quá trình kiếm

thử thông qua các công cụ phần mềm

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

> Ưu điểm:

- _ Các bài kiểm tra có thể được thực hiện một cách nhanh chóng,

= Noi chung vu điểm của kiểm thứ tự động là nó chạy nhanh hơn kiêm thử thủ công Tuy nhiên, hãy nhớ rằng tốc độ thực thi sẽ khác nhau tủy thuộc vào nội dung được thực thi và các công cụ được sử dụng

-_ Có thê phát hiện sớm các lôi

“ Bằng cách chạy các bài kiểm thử tự động mỗi khi quá trình phat triển của bạn được hoàn thành như bé sung tinh nang moi, sua lỗi Bạn có thể phát hiện sớm các lỗi và thực hiện hành động ngay lap tức Việc kết hợp kiếm thử tự động vảo quy trình thực

thi CI c6 thé hiệu quả hơn

14

Trang 15

-_ Có thê thực hiện kiêm tra một cách chính xác

" Loại bỏ lôi của con người khi thực hiện các bài kiêm tra, cho

phép các bài kiếm tra chính xác hơn

-_ Có thê thực hiện kê cả thiêu nguon nhân lực

Bằng cách tự động hóa việc kiểm tra, bạn có thê kiếm tra ngay ca

khi bạn thiếu nhân lực đề thực hiện việc kiêm tra đối với ứng

dụng, phần mềm của bạn Kiểm tra thủ công cũng cho phép kiếm tra hiệu suất quy mô lớn không thực tế và kiểm tra so sánh lượng

lớn đữ liệu

> Nhược điểm:

- _ Có thể bỏ sốt lỗi do con người

“ Kiểm thử tự động bao gồm các bài kiểm tra tốt và không tốt Ví

dụ, với các thử nphiệm dễ xảy ra lỗi do con người và các thử

nghiệm được lặp lại thì các thử nghiệm được thực hiện không,

thường xuyên hoặc quy trình không cố định thì không phù hợp với tự động hóa

- Hoat dong bao tri

“ Kiểm thử tự động không có hiệu quả ngay lập tức Hiệu quả có thê đạt được bằng cách tiếp tục vận hành nó nhiều lần Hoạt dong bao tri la cần thiết đề kiểm thử tự động được tiếp tục hoạt động

- _ Kiểm tra tự động chỉ có thể kiểm tra những øì chúng ta thiết kế

"_ Chỉ nội dung kiểm thử đã được thiết kế đề thử nghiệm mới có thê được tự động hóa

- Chi phi cao

“ Chí phí ban đầu cao hơn với kiếm thử thủ công, chăng hạn như chi phi viết mã kiểm tra và chỉ phí học cách sử dụng thành thạo

các công cụ

2.2 Một số công cụ kiểm thử tự động

15

Trang 16

2.2.1 Selenium

Khải niệm: Nó là một công cụ kiểm tra phần mềm được sử dụng đề kiểm tra hồi quy (Regression Testing) Đây là một công cụ kiểm tra mã nguồn mở cung cấp chức năng phát lại và thu âm để kiểm tra hồi quy Cac Selenium IDE chi hé trợ trình duyét web Mozilla Firefox

« - Đặc điểm cua Selenium:

Cung cấp các điều khoản để xuất khấu ghi lại kịch bản trong các ngôn ngữ khac nhu Java, Ruby, RSpec, Python, C #, JUnit va TestNG + No co thể thực hiện

nhiều bộ kiểm thử cùng một lúc

Xác định phần tử sử dụng 1d, tên, đường dẫn X, v.v + Lưu trữ các bộ kiểm thử như Ruby Script, HTML và bất kỳ định dạng nào khác + Hỗ trợ tệp tin người dùng selenium-extensions.js

Cho phép để chèn ý kiến ở giữa của kịch bản để hiểu rõ hơn nội dung và mục đích của kịch bản kiểm thử

b QTP (HP UFT)

Khải niệm: QTP được sử dụng rộng rãi để kiểm tra chức nang (Functional Testing) và hồi quy (Regression Testing), giai quyét cac ing dung phan mềm va môi truong Đề đơn giản hóa việc tạo và bảo trị thử nghiệm, nó sử dụng khái niệm kiểm tra từ khóa

QTP hỗ trợ môi trường phát triển NET

Có cơ chế xác định đối tượng kiểm thử tốt

c Rational Function Tester

Khải niệm: Là l công cụ kiểm tra tự động hướng đối tượng có khả năng tự động kiểm

tra dữ liệu, kiểm tra giao diện, và kiếm thử hồi quy (Regression Testing)

Öồ Đặc điểm:

+ Hỗ trợ một loạt các giao thirc và ứng dụng như Java, HTML, NET, Windows, SAP, Visual Basic

+ Có thể eh1 lại và phát lại các hành động theo yêu cầu

+ Tích hợp tốt với các công cụ quản lý kiểm soát nguồn như Rational Clear Case và tich hop Rational Team Concert

+ Cho phép các nhà phát triển tạo ra các kịch bản liên quan đến từ khóa để có thể

được tái sử dụng

16

Trang 17

+ Bộ biên tập Cong cu Java Developer Toolkit cua Eclipse tao diéu kién cho nhom tao ma thir nghiém cac doan ma trong Java véi Eclipse

+ Hỗ trợ điều khiến tùy chỉnh thông qua proxy SDK (Java /.Net)

+ Hỗ trợ kiểm soát phiên bản để cho phép phát triển song song các kịch bản thử nghiệm

d WATIR

Khái niệm: Là một phần mềm kiểm tra mã nguồn mở để kiểm thử hồi quy (Regression Testing) Watir chỉ hỗ trợ khám phá Internet trên các cửa số trong khi Watir webdriver hỗ tro Chrome, Firefox, IE, Opera,

Öồ Đặc điểm:

Hỗ trợ nhiều trình duyệt trên các nền tảng khác nhau

Sử dụng một ngôn ngữ kịch bản hiện đại có đầy đủ tính năng

Hỗ trợ ứng dụng web được viết bởi bắt kỳ ngôn ngữ nào

Cho phép bạn viết các test case dễ đọc và bảo trì

e SilkTest

Khái niệm: Silk Test được thiết kế để thực hiện kiểm tra chức năng

(Functional Testing) và hồi quy (Regression Testing) Nó là một ngôn ngữ hướng đối

tượng giống như C ++ Nó sử dụng các khái niệm về đối tượng, các class và sự kế thừa

Öồ Đặc điểm:

Nó bao gồm tat ca các tập tin mã nguồn

Chuyền đổi các lệnh script thành các lệnh GUI Trên cùng một máy, các lệnh có thể được chạy trên một máy từ xa hoặc máy chủ

Đề xác định chuyên động của con chuột cùng với các bấm phím, Silktest có thé được thực hiện Nó có thể sử dụng cả phương pháp phát lại và ghi hoặc các phương

pháp lập trình mô tả

Xác định tất cả các điều khiển và cửa số của ứng dụng được thử dưới dạng các đối tượng và xác định tất cả thuộc tính và thuộc tính của mỗi đối tượng

2.2.2 Giới thiệu mô hình phát triển phần mềm

Mô hình phát triển phần mềm hay quy trình phát triển phần mềm xác định các pha/ giai đoạn trong xây dựng phần mềm Có nhiều loại mô hình phát triển phần mềm khác nhau như:

d Mô hình thúc nước (WaterfHHl tmode))

17

Trang 18

Hình 2- 1: Mô hình thác nước

« - Đây được coi như là mô hình phát triển phần mềm đầu tiên được sử dụng

« Mô hình này áp dụng tuần tự các giai đoạn của phát triển phần mềm

Ö Đầu ra của giai đoạn trước là đầu vào của giai đoạn sau Giai đoạn sau chỉ được thực hiện khi giai đoạn trước đã kết thúc Đặc biệt không được quay lại giai đoạn trước đề xử lý các yêu cầu khi muốn thay đôi

¢ Uudiém

Dé str dung, dé tiếp cận, dễ quan lý

San pham phat triển theo các giai đoạn được xác định rõ ràng

Xác nhận ở từng g1aI đoạn, đảm bảo phát hiện sớm các lỗi

Ö Nhược điểm

Ít linh hoạt, phạm vi điều chỉnh hạn chế

Rất khó để đo lường sự phát triển trong từng giai đoạn

Mô hình không thích hợp với những dự án dài, đang diễn ra, hay những dự án

phức tạp, có nhiều thay đối về yêu cầu trong vòng đời phát triển

Khó quay lại khi giai đoạn nào đó đã kết thúc

b Mô hình xoăn óc

18

Trang 19

Kiém thir tu déng cho tg dung website Black Rouge Vietnam

- - Mô hình xoắn ốc được ưa chuộng cho các dự án lớn, đắt tiền và phức tạp

- M6 hinh nay su dung những giai đoạn tương tự như mô hình thác nước, về thứ

tự, plan, đánh giá rủi ro,

Ưu điểm

- _ Tốt cho các hệ phần mềm quy mô lớn

- Dễ kiểm soát các mạo hiểm ở từng mức tiến hóa

- Đánh giá thực tế hơn như là một quy trình làm việc, bởi vì những vấn đề quan trọng đã được phát hiện sớm hơn

Nhược điểm

- _ Manager cần có kỹ năng tốt đề quản lý dự án, đánh giá rủi ro kịp thời

- _ Chí phí cao và mất nhiều thời gian để hoàn thành dự án

- _ Phức tạp vả không thích hợp với các dự án nhỏ và Ít rủi ro

- _ Yêu câu thay đối thường xuyên dẫn đến lặp vô hạn

- _ Chưa được dùng rộng rãi

c M6 hinh Agile

19

Trang 20

- Dựa trên mô hình iterative and incremental

- _ Các yêu cầu và giải pháp phát triển dựa trên sự kết hợp của các function

- Trong Agile, cac tác vụ được chia thành các khung thời gian nhỏ để cung cấp các tính năng cụ thể cho bản phát hành cuối

“* Ưu điểm

- _ Tăng cường tỉnh thần làm việc nhóm và trao đổi công việc hiệu quả

- _ Các chức năng được xây dựng nhanh chóng và rõ ràng, dé quản lý

- _ Dễ đảng bồ sung, thay đôi yêu cầu

- Quy tắc tối thiểu, tai liéu dé hiéu, dé str dung

+ Nhược điểm

- _ Mô hình Agile được sử dụng rộng rãi trên thế øiới nhưng cũng không đồng

nghĩa với phù hợp với tất cả các dự án phần mềm

- _ Không thích hợp để xử lý các phụ thuộc phức tạp

- _ Có nhiều rủi ro về tính bền vững, khả năng bảo trì và khả năng mở rộng

- _ Cần một team có kinh nghiệm

- Phụ thuộc rất nhiều vào sự tương tác rõ ràng của khách hàng

- _ Chuyến giao công nghệ cho các thành viên mới trong nhóm có thể khá khó

khăn do thiếu tài liệu

d M6 hinh chit V (V model)

20

Trang 21

( == mà

y

Hinh 2- 4: M6 hinh chit V

Mô hình chữ V là một phần mở rộng của mô hình thác nước và được dựa trên sự

kết hợp của một giai đoạn thử nghiệm cho từng giai đoạn phát triển tương ứng Đây là một mô hình có tính kỷ luật cao và giai đoạn tiếp theo chỉ bắt đầu sau khi hoàn thành ø1ai đoạn trước

Với V model thì công việc test được tham gia ngay từ đầu

Ưu điểm

Đây là một mô hình có tính ky luật cao và các giai đoạn được hoàn thành củng một lúc

Hoạt động tốt cho các dự án nhỏ, khi các yêu cầu được hiểu rất rõ

Đơn giản và dễ hiểu va dé sir dung, dé quan ly

Nhược điểm

Khó quản lý kiểm soát rủi ro, rủi ro cao

Không phải là một mô hình tốt cho các dự án phức tạp và hướng đối tượng

Mô hình kém cho các dự an dai va dang diễn ra

Không thích hợp cho các dự án có nguy cơ thay đôi yêu cầu trung bình đến cao

e M6 hinh Scrum

21

Trang 22

Hinh 2- 5: M6 hinh Scrum

- _ Chia các yêu cầu ra làm theo từng øiai đoạn Mỗi | giai doan(sprint) chi lam 1

số lượng yêu cầu nhất định

-_ Mỗi một sprint thường kéo đài từ 1 tuần đến 4 tuần ( ko dài hơn | thang)

- Đầu sprint sẽ lên kế hoạch làm những yêu cầu nảo Sau đó, sẽ thực hiện code

và test Cuối sprint la 1 san pham hoàn thiện cả code lẫn test có thể demo và chạy được

- Hoan thanh sprint 1, tiép tuc lam sprint 2, sprint cho đến khí hoản thành hết

cac yéu cau

- Trong m6i | sprint thi sé cd hop hang ngay — daily meeting từ 15 - 20 phút

Mỗi thành viên sẽ báo cáo: Hôm qua tôi đã làm gì? Hôm nay tôi sẽ làm gì? Có gặp khó khăn gì không?

- - Scrum là mô hình hướng khach hang (Customer oriented)

- Trinh dé cua nhóm cần có một kỹ năng nhất định

- _ Phải có sự hiểu biết về mô hình aglie

- Kho khan trong viéc xac định ngân sach va thoi gian

- Luén nghe y kién phan hdi tr khach hang va thay déi theo nén thoi gian sẽ

Trang 23

@%* Selenium WebDriver Features

‘Cancun © © Works on different OS

Multiple Language © © Add-ons & Reusability

Support

Speed & Performance © © Simple Commands

Community support (ED Q —=—==

Open Source & Portable © © No server installation

Hinh 2- 6: Tong quan vé selenium webdriver

Selenium WebDriver (gọi tắt la WebDriver) 14 1 automation framework cua

web, cho phép thực thị các test của ban đối với các trình duyệt khác nhau, không chỉ Eirefox, Chrome (nó không giống như Selenium IDE)

'WebDrriver cùng cho phép bạn sử dụng các ngôn ngữ lập trình trong việc tạo test script của bạn

Bạn có thể sử dung conditional operations nhu if- else hay la switch-case hoac vong lap do-while

WebDriver hỗ trợ nhiều ngôn ngữ lập trình khác nhau như Java, Net, PHP, Python, Perl, Ruby Không nhất thiết bạn phải am hiểu tất cả các ngôn ngữ trên

nhưng để sử dụng WebDriver 1 cá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

« Tai sao st dung Selenium Web Driver?

Người dùng có thê dùng miễn phí

Kiến trúc đơn giản:

+ Điều khiên trình duyệt từ hệ điều hành

+ Bạn chỉ cần IDE và trình duyệt là xong

Ngôn ngữ lập trinh hỗ trợ: Web Driver hễ trợ bạn viết kịch bản kiểm thứ bằng các ngôn ngữ khác nhau như Java, NET, PHP, Python, Perl, Ruby va bạn có thể sử dụng các điều kiện if else, các vòng lặp để tăng tính chính xác cho kịch bản kiểm thử Tốc độ: Khi so sánh với các công cụ khác của bộ Selenium, WebDriver là công cụ nhanh nhất trong số tất cả do tương tác trực tiếp từ hệ điều hành tới trình duyệt

« - Ưu điểm của Selenium WebDriver

Hỗ trợ 7 ngôn nsữ lap trinh: JAVA, C #, PHP, Ruby, Perl, Python và Net

Hỗ trợ thử nghiệm trên nhiều trình duyệt khác nhau như: Firefox, Chrome, IE, Safari

Các thử nghiệm có thể được thực hiện trên các hệ điều hành khác nhau như: Windows, Mac, Linux, Android, 10S

Khắc phục các hạn chế của Selenium vi như tải lên tệp, tải xuống, cửa số bật lên

và hộp thoại

« - Nhược điểm của Seleniun WebDriver

23

Trang 24

Báo cáo kiêm thử chỉ tiết không thể được tạo ra

Không thể kiểm tra hình ảnh

Bất kề thách thức, những thiếu sót nảy có thể được khắc phục bằng cách tích hợp với các khung khác Đối với kiểm thử hình ảnh, Sikuli có thê được sử dụng và để tạo báo cáo thử nghiệm chi tiết, TestNG có thê được sử dụng

Selenrum WebIDriver thường được sử dụng trong cac trường hợp sau

Đề sử : dụng một ngôn ngữ lập trình nhất định trong việc thiết kế test case của bạn

Đề kiêm tra các ứng dụng có nhiều chức năng dựa trên AJAX

Đề thực hiện các kiếm thử trên trình duyệt HtmlUnit

Đề tạo kết quả kiểm thử tùy chỉnh

2.2.3 Công cụ eclipse

Get Eclipse IDE 2019-09

Install your favorite desktop IDE packages

————

| Download 64 bit

Hình 2- 7: Công cụ eclipse

- Khai niém Eclipse là một công cụ hỗ trợ người dùng lập trình mã nguồn mở Đây là một môi trường phát triển tích hợp dành cho Java, nhưng vẫn có thé str dung dé lap trình bằng một số ngôn ngữ khác như C/C++, PHP, Ruby Người dùng có thể

sử dụng Eclipse để mở rộng hơn mã nguồn bằng cách chèn plugins cho

- Danén tang: co thé chạy trên cả hệ điều hành Windows và Linux

- Không, bị hạn chế về các nhà cung cấp công cụ, bao gồm cả các nhà cung cấp phần mềm độc lập (ISV)

- H6tro sử dụng nhiễu công cụ lập trình

- _ Tạo thuận lợi cho tích hợp liền mạch các công cụ bên trong vả xuyên qua nhiều kiểu nội dung và các nhà cung cấp công cụ khác nhau

- - Hỗ trợ các công cụ thao tác các ngôn ngữ lập trình như: HTML, Java, C

24

Trang 25

- Hétro môi trường phat triển GUI lẫn không dựa trên GUI

- Tinh phé biên của ngôn ngữ Java (ngôn negữ sử dụng đề việt các công cụ)

- Load nhanh hon do su dung SWT/JFace s* Nhược điêm

« _ Việc cài đặt khá phức tạp, tốn phần cứng và bộ nhớ máy

« Nhiéu plugins dan dén viéc thieu tinh nhat quán

Những nhược điểm trên đang dần được nhà cung cấp khắc phục Hiện nay, Eclipse đã

cho ra đời phiên bản Eclipse Luna không cần cài đặt Việc nảy sẽ tiết kiệm được phần nảo bộ nhớ và phần cứng cho máy tính Tuy nhiên, phiên bản mới này vẫn chưa được

phô biến rộng rãi

25

Trang 26

CHUONG 3: DAC TA HE THONG PHAN MEM

3.1 Giới thiệu chung

Black Rouge la mét thương hiệu đến từ đất nước Hàn Quốc và được ra đời từ

năm 2016 Được ví như nàng công chúa tai Incheon - thành phố đông dân thứ 3 Hàn

Quốc Đây cũng là một trong những nhà máy không lồ chuyên sản xuất mỹ phâm cho

các hãng nỗi tiếng

Tuy là một thương hiệu mỹ phâm mới ra mắt những năm gân đây nhưng Black

Rouge đã chính phục thị trường nhờ chất lượng và sự sáng tạo mới lạ trong từng sản phâm Ngoài những dòng son gây bão trên thị trường thì hãng còn cho ra các dòng sản phẩm làm đẹp khác như: phần mắt, highliphter, nhũ mắt,

Đặc biệt vào năm 2018 với một cú hích với dòng son kem lì Black Rouge thực

sự trở thành thương hiệu được yêu thích tại Hàn Quốc và lan rộng ra các nước lân cận trong đó có Việt Nam Chính vị sự ưa chuộng và chiếm được sự yêu thích nhất định trên dải đất hình chữ S, chỉ nhánh tại Việt Nam xuất hiện với sứ mệnh có thể mang sac mau cua Black Rouge phu sac khap moi tinh thành, trở thành dong my phẩm được

mọi người ưa chuộng

Với nhiều dòng sản phẩm trang điểm đặc biệt là các mẫu son đa dạng theo từng mùa cùng với giá cả vừa túi tiền, Black Rouge luôn chiếm được cảm tình cảm của giới trẻ nói riêng và chị em phụ nữ nói chung Và để đáp ứng nhu cầu đó hệ thống website mua hàng trực tuyến cùng với sản thương mại điện tử và kênh fanpage chính thức của hãng mỹ phẩm xứ sở kim chỉ đã ra đời, là nơi mà khách hàng có thể cập nhật các dòng sản phâm mới, mua hàng chính hãng trực tiếp từ thương hiệu đề tránh các trường hợp mua phải hàng nhái kém chất lượng

Mục đích của tài liệu này để xác định chức năng và các yêu cầu khác về website Black Rouge Vietnam, bao g6m giới thiệu tổng quát về hệ thống, yêu cầu, tính ứng dung, độ tin cậy và hiệu suất Tài liệu này được dùng cho đội dự án để phát triển sản phẩm

Phần I: Giới thiệu chung về tài liệu

Phần 2: Cung cấp thông tin tông quát về website Black Rouge Vietnam Phần 3: Mô tả các yêu cầu cụ thể của các chức năng, bao gổm input, output, các

xử lý của chương trinh

Phần 4: Mô tả các yêu cầu khác liên quan đến tính ứng dụng của hệ thống (tính thân thiện với end user)

Phần 5: Mô tả các yêu cầu về tính toàn vẹn của đữ liệu, hiệu suất 3.2 Các yêu cầu chức năng

3.2.1 Yêu cầu về chức năng phía người dùng

26

Trang 27

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

ký tài khoản trên website để lưu trữ

thông tin của mình và đặt hàng Trang

đăng ký gồm: Họ và tên, số điện thoại,

email, mật khâu, xác nhận mật khâu

Tìm kiêm sản phầm

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

Tin tức và khuyên mãi

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

những khuyến mãi 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 cửa hàng

Liên hệ với cửa hàng

Chức năng này cho phép người dùng ĐỬ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

chọn, thêm, sửa, xóa món ăn tạo điều

27

Trang 28

STT Chire nang Mô tả

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

Quản lý tài khoản

Chức năng này cho phép người dùng xem thông tin, cập nhật thông tin, thay đổi mật khâu và địa chỉ

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,

thanh toán hóa đơn mua hàng thông qua

ví momo hoặc chuyền khoản qua sacombank

Bảng 3- 1: Các yêu cấu chức năng

- - Chức năng đăng nhập

e - Để theo dỗi đơn hàng và đặt hàng dễ dàng, khách hàng có thế đặng nhập tài

khoản khi đã đăng khí tài khoản trước đó

® Trang dang nhap gom: Số điện thoại, mật khâu

e©_ Button Đăng nhập: khi nhân đăng nhập, khách hàng đã đăng nhập vào tải

khoản đã đăng ký

28

Trang 30

TAO TAI KHOAN

Hinh 3- 2: Chic nang dang ky

Ho Co Không Không được bó trống

Tên Có Không Không được bó trống

Trang 31

Tên trường Bắt buộc Khoảng hợp lệ Khác

Số điện thoại Có Chỉ bao gồm 10 ký tự | Không được bó trống

Bảng 3- 3: Dữ liệu chức năng đăng ký

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

e - Khi truy cập vào hệ thông, khách hàng có thế thêm sản phẩm vào giỏ hàng

từ giao diện xem thông tin sản phẩm Trang xem thông tin sản phâm gồm:

© Thông tin chỉ tiết sản phẩm: tên sản phâm, hình ảnh, số lượng

© - Ô nhập ghi chú của khách hàng

® - Nút “Thêm vào giỏ hàng”

© - Khi Click “Thêm vào giỏ hàng” để sản phâm được ghi nhận vào Giỏ hàng

31

Trang 32

Son A09 mau Cam Dat - Son Black Rouge Air Fit Velvet

Tinhtrang: Con hang | Ma SKU Đang cập nhat

N MUA NGAY ) THEM VAO GIO

Phương thức thanh toán

Số lượng Có =] Phải là một số dương

Không được bỏ trông

Không chứa dấu cách

Không được chứa các kí

tự chữ

Bảng 3- 4: Dữ liệu chức năng thêm vào giỏ hàng

e - Khi truy cập vào hệ thông, khách hàng có thế thêm sản phẩm vào giỏ hàng

từ giao điện xem thông tin sản phâm Khi trong giỏ hàng đã có sản phẩm, khách hàng có thể thực hiện sửa số lượng sản phẩm và ghi chú trong giỏ hàng Trang xem chỉ tiết giỏ hàng gồm:

¢ Danh sách các sản phâm, mỗi sản phẩm gồm thông tin: hình ảnh, tên sản phâm, kích thudc, ghi chu, 914, s6 luong, tong tiền, một button Xoa san

phẩm Trong đó thông tin số lượng vả ghi chú sản phẩm có thê sửa

32

Trang 33

¢ Néu sé lwong các sản phẩm trong gió hàng hợp lệ, hệ thống sẽ load lại trang cập nhật lại số lượng và tông tiền

e© Nếu trong giỏ hàng có số lượng tương ứng với sản phẩm không hợp lệ thì

người dùng sẽ không nhập được

© Nếu khách hàng muốn sửa chú thích thi ấn vào ảnh của sản phẩm muốn

Sửa

e© Một nút “Thanh toán”: Khách hàng có thể đặt hàng nếu trong giỏ hàng có sản phẩm

e - Một nút “Xoá”: Khách hàng có thể xoá sản phẩm bắt kỳ trong gid hang

BLACK §\_ Hỗ trợ khách hàng Tài khoả R9UGE M k hd Nut 8Ð SS cane a A

O_ Chính sách đổitrả Hệthốngcửahàng «¿Z Kiểm tra đơn hàng

= Danh mục sản phẩm

TỔNG CỘNG 796.006

Mã giảm giá Chọn mã giảm ”

Hình 3- 4: Chúc năng giỏ hàng

Tên trường Bắt buộc Khoảng hợp lệ Khác

Sô lượng Có >=] Phải là một sô dương

Không được bỏ trông

Không chứa dấu cách

Không được chứa các kí

tự chữ

33

Trang 34

Có thê nhập hoặc không

nhập phi chú của khách hàng

Black Rouge Viet Nam Official

Thông tin nhận hàng (Đáng nhập Van chuyén

Vui lòng nhập thông tin giao hang

Tên trường Bắt buộc Khoảng hợp lệ Khác

Số điện thoại Có 10 ký tự số Không được bỏ trống

Tỉnh thành Không được bỏ trống

34

Trang 35

Tên trường Bắt buộc Khoảng hợp lệ Khác

Quận huyện Không được bó trống

Xã phường Không được bó trống Ghi chú Không được bỏ trống

Bảng 3- 6: Dữ liệu chức năng đặt hàng

e© _ Hình thức thanh toán khi nhận hang (COD): Bam Dat hang dé don hang

được xác nhận và nhận mã đơn hàng sau khi đã đặt hàng thành công

e Chọn Đặt hàng để qua bước tiếp theo hoặc bắm back để quay lại đặt hàng

- _ Chức năng tìm kiếm

e - Để tìm kiếm nhanh chóng một sản phâm nào đó thì khách hàng chọn chức

năng tìm kiêm

Hình 3- 6: Chức năng tìm kiếm 3.2.2 Biểu đồ ca sử dụng

- Biểu do use case tông quát

35

Trang 37

- Kich bản đăng nhập

Primary Actors Ÿ Khách hàng

Flow of Events

1 Người dùng yêu cầu chức năng đăng nhập

2 SYSTEM Hiển thị giao diện đăng nhập

3 Người dùng nhập email, password, chọn chức năng phi nhớ tài khoản

4 Yêu cầu đăng nhập

5 SYSTEMI Lấy về thông tin người dùng, nếu người dùng không có chuyển sang

luồng phụ 5a

6 if Nếu chọn ghi nhớ tài khoản

6.1 SYSTEMI Hệ thống lưu tài khoản trên trình đuyệt người dùng end if

7 Lưu thông tin người dùng

Extension:

5.a Tài khoản không đúng

1 SYSTEM Hệ thống hiển thị thông báo đăng nhập không thành công, yêu cầu đăng nhập lại và quay lại nước 3

- Bréu do use case xem san pham

37

Trang 38

<<Extend>>

| <<Extend>> '

1 Khách hàng kích hoạt giao diện chính của hệ thống

2 SYSTEMI Hệ thông hiển thị giao diện chính với danh sách sản phẩm của hệ

thống và một ô nhập tên sản phẩm

3 Khách hàng nhập vào ô tìm kiếm sản phâm và chọn enter

4 SYSTEM Hệ thống tìm kiếm sản phẩm trong cơ sở dữ liệu và trả về danh sách sản phẩm mà khách hàng yêu cầu tìm kiếm gồm tên sản phẩm, hình ảnh và giá sản phâm

5 Khách hàng click chọn một sản phâm trong danh sách sản phâm vừa tìm kiếm

6 SYSTEM Hé théng hién thị thông tin chỉ tiết sản phâm đã chọn bao gồm: tên sản phẩm, thể loại, giá sản phâm, trạng thái sản phẩm, kích thước, ghi chú của bạn một nút “Thêm vào g1ỏ hàng”

38

Trang 39

Extension:

3 a SYSTEM Hé thống thông báo không có sản phâm mà khách hàng yêu cầu tìm kiêm

1 SYSTEMI Hệ thống yêu cầu khách hàng nhập lại tên sản phâm

2 Khách hàng nhập lại tên sản pham va tiếp tục các bước sau

- Biéu đồ use case quan ly gid hang

1 Khách hàng kích hoạt giao diện chính của hệ thống

2 SYSTEMI Hệ thông hiển thị giao diện chính với danh sách sản phẩm của hệ

thống và một ô nhập tên sản phẩm

3 Khách hàng nhập vảo ô tìm kiếm sản phẩm và chọn enter

4.SYSTEM Hệ thống tìm kiếm sản phẩm trong cơ sở đữ liệu và trả về danh sách

san pham mà khách hàng yêu câu tìm kiếm gồm tên sản phẩm, hình anh va giá sản

39

Trang 40

pham

5 Khách hàng click chọn một sản phâm trong danh sách sản phâm vừa tìm kiếm

6 SYSTEM Hé théng hién thị thông tin chỉ tiết sản phâm đã chọn bao gồm: tên sản phẩm, thể loại, giá sản phâm, trạng thái sản phẩm, kích thước, ghi chú của bạn một nút “Thêm vào g1ỏ hàng”

Extension:

3.a SYSTEMI Hệ thống thông báo không có sản phẩm mà khách hàng yêu cầu tìm

kiếm

1 SYSTEMI Hệ thống yêu cầu khách hàng nhập lại tên san pham

2 Khách hàng nhập lại tên sản pham va tiếp tục các bước sau

s* Thêm sản phâm vào giỏ hàng

Primary Actors Ÿ Khách hàng

Flow of Events

1 Khách hàng yêu cầu xem thông tin sản phẩm

2 SYSTEM Hệ thống hiến thị thông tin chỉ tiết sản phâm đã chọn bao gồm: tên sản phẩm, thể loại, giá sản phâm, trạng thái sản phẩm, kích thước, ghi chú của bạn một nút “Thêm vào g1ỏ hàng”

3 Khách hàng nhập số lượng sản phẩm và chọn ““Thêm vảo giỏ hàng”

4 SYSTEM Hệ thống thêm sản phâm với số lượng khách hàng đã chọn và giỏ hàng

Extension:

3.a Số lượng sản phẩm không hợp lệ

1 SYSTEM Hệ thống yêu cầu khách hàng nhập lại số lượng sản pham

2 Khách hàng nhập lại thông tin sản phẩm và tiếp tục thực hiện mua sắm

40

Ngày đăng: 09/12/2024, 17:41