



















Preview text:
lOMoAR cPSD| 23136115
BỘ GIÁO DỤC VÀ ĐÀO TẠO
TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT HƯNG YÊN BÀI TẬP LỚN
KIỂM THỬ TỰ ĐỘNG CHO ỨNG DỤNG WEBSITE BLACK ROUGE VIETNAM
NGÀNH: KỸ THUẬT PHẦN MỀM
HƯỚNG CHUYÊN SÂU: KIỂM THỬ VÀ ĐẢM BẢO CLPM
SINH VIÊN: TRẦN THỊ MỸ TÂM MÃ LỚP: 125216
HƯỚNG DẪN: Th.S ĐỖ THỊ THU TRANG lOMoAR cPSD| 23136115 HƯNG YÊN - 2024 lOMoAR cPSD| 23136115
Kiểm thử tự động cho ứng dụng website Black Rouge Vietnam NHẬN XÉT
Nhận xét của giảng viên hướng dẫn:
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
GIẢNG VIÊN HƯỚNG DẪN
(Ký và ghi rõ họ tên) LỜI CAM ĐOAN
Em xin cam đoan bài tập lớn “Kiểm thử tự động cho ứng dụng website Black
Rouge Vietnam” là 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 dựng được
hoàn toàn là kết quả do bản thân em thực hiện. lOMoAR cPSD| 23136115
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 lOMoAR cPSD| 23136115
Kiểm thử tự động cho ứng dụng website Black Rouge Vietnam LỜI CẢM ƠN
Để 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 ơn! MỤC LỤC
NHẬN XÉT.................................................................................................................2
LỜI CAM ĐOAN........................................................................................................3
LỜI CẢM ƠN..............................................................................................................4
MỤC LỤC...................................................................................................................5
DANH MỤC CÁC THUẬT NGỮ...............................................................................6
DANH MỤC CÁC BẢNG...........................................................................................7
DANH MỤC CÁC HÌNH VẼ, ĐỒ THỊ.......................................................................8
CHƯƠNG 1: TỔNG QUAN VỀ ĐỀ TÀI..................................................................12
1.1 Lý do chọn đề tài...............................................................................................12
1.2 Mục tiêu của đề tài............................................................................................13
1.2.1 Mục tiêu tổng quát.......................................................................................13 lOMoAR cPSD| 23136115
Kiểm thử tự động cho ứng dụng website Black Rouge Vietnam
1.2.2 Mục tiêu cụ thể............................................................................................13
1.3.1 Đối tượng nghiên cứu..................................................................................13
1.3.2 Phạm vi nghiên cứu.....................................................................................13
1.4 Nội dung thực hiện............................................................................................13
1.5 Phương pháp tiếp cận........................................................................................14
CHƯƠNG 2: CƠ SỞ LÝ THUYẾT...........................................................................15
2.1 Kiểm thử tự động phần mềm.............................................................................15
2.2. Một số công cụ kiểm thử tự động.....................................................................17 2.2.1 Selenium17
2.2.2 Giới thiệu mô hình phát triển phần mềm.....................................................18
2.2.2 Giới thiệu tổng quan về Selenium WebDriver.............................................23
CHƯƠNG 3: ĐẶC TẢ HỆ THỐNG PHẦN
MỀM....................................................27
3.1 Giới thiệu chung................................................................................................27
3.2 Các yêu cầu chức năng......................................................................................27
3.2.1 Yêu cầu về chức năng phía người dùng.......................................................27
3.2.2 Biểu đồ ca sử dụng......................................................................................36
3.3 Các yêu cầu phi chức năng................................................................................45
3.4 Tính ứng dụng...................................................................................................46
3.5 Tính toàn vẹn dữ liệu/Performance...................................................................47
CHƯƠNG 4: TRIỂN KHAI KIỂM THỬ TỰ ĐỘNG................................................48
4.1 Thiết kế kiểm thử..............................................................................................48
4.1.1 Thiết kế kiểm thử tổng quan hệ thống.........................................................48
4.1.2 Thiết kế kiểm thử chức năng.......................................................................49
4.2 Xây dựng các trường hợp kiểm thử...................................................................60
4.3 Xây dựng kịch bản kiểm thử.............................................................................64 lOMoAR cPSD| 23136115
Kiểm thử tự động cho ứng dụng website Black Rouge Vietnam
4.4 Thực thi và báo cáo kiểm thử............................................................................90
KẾT LUẬN................................................................................................................91
DANH MỤC CÁC THUẬT NGỮ STT Từ viết tắt Cụm từ tiếng anh Diễn giải 1 SRS Software Requirement
Đặc tả yêu cầu phần mềm Specification 2 POM Page Object Model Mô hình Page Object lOMoAR cPSD| 23136115
Kiểm thử tự động cho ứng dụng website Black Rouge Vietnam DANH MỤC CÁC BẢNG
Bảng 3- 1: Các yêu cầu chức năng.............................................................................30
Bảng 3- 2: Dữ liệu chức năng đăng nhập...................................................................31
Bảng 3- 3: Dữ liệu chức năng đăng ký.......................................................................33
Bảng 3- 4: Dữ liệu chức năng thêm vào giỏ hàng......................................................34
Bảng 3- 5: Dữ liệu chức năng giỏ hàng......................................................................36
Bảng 3- 6: Dữ liệu chức năng đặt hàng......................................................................37
Bảng 3- 7: Bảng yêu cầu phi chức năng.....................................................................47
Bảng 4- 1: Testcase chức năng đăng nhập..................................................................63
Bảng 4- 2: Test case chức năng đăng ký....................................................................65 lOMoAR cPSD| 23136115
Kiểm thử tự động cho ứng dụng website Black Rouge Vietnam
DANH MỤC CÁC HÌNH VẼ, ĐỒ THỊ
Hình 2- 1: Mô hình thác nước ..................................................................................... 17
Hình 2- 2: Mô hình xoắn ốc ......................................................................................... 18
Hình 2- 3: Mô hình Agile ............................................................................................. 19
Hình 2- 4: Mô hình chữ V ........................................................................................... 20
Hình 2- 5: Mô hình Scrum ........................................................................................... 21
Hình 2- 6: Tổng quan về selenium webdriver ............................................................. 22
Hình 2- 7: Công cụ eclipse .......................................................................................... 23
Hình 3- 1: Chức năng đăng nhập ................................................................................. 28
Hình 3- 2: Chức năng đăng ký ..................................................................................... 29
Hình 3- 3: Chức năng thêm vào giỏ hàng .................................................................... 31
Hình 3- 4: Chức năng giỏ hàng .................................................................................... 32
Hình 3- 5: Chức năng đặt hàng .................................................................................... 33
Hình 3- 6: Chức năng tìm kiếm ................................................................................... 34
Hình 3- 7: Biểu đồ use case tổng quát của hệ thống.................................................... 34
Hình 3- 8: Use case đăng nhập .................................................................................... 35
Hình 3- 9: Use case xem sản phẩm .............................................................................. 37
Hình 3- 10: Use case quản lý giỏ hàng ........................................................................ 38
Hình 3- 11: Use case tìm kiếm ..................................................................................... 42
Hình 4- 1: Thiết kế kiểm thử tổng quan hệ thống 1..................................................... 46
Hình 4- 2: Thiết kế kiểm thử tổng quan hệ thống 2..................................................... 47
Hình 4- 3: Thiết kế kiểm thử chức năng đăng nhập 1 ................................................. 47
Hình 4- 4: Thiết kế kiểm thử chức năng đăng nhập 2 ................................................. 48
Hình 4- 5: Thiết kế kiểm thử chức năng đăng nhập 3 ................................................. 48 lOMoAR cPSD| 23136115
Kiểm thử tự động cho ứng dụng website Black Rouge Vietnam
Hình 4- 6: Thiết kế kiểm thử chức năng đăng ký 1 ..................................................... 48
Hình 4- 7: Thiết kế kiểm thử chức năng đăng ký 2 ..................................................... 50
Hình 4- 8: Thiết kế kiểm thử chức năng đăng ký 3 ..................................................... 51
Hình 4- 9: Thiết kế kiểm thử chức năng đăng ký 4 ..................................................... 52
Hình 4- 10: Thiết kế kiểm thử chức năng tìm kiếm .................................................... 53
Hình 4- 11: Thiết kế kiểm thử chức năng quản lý giỏ hàng 1 ..................................... 54
Hình 4- 12: Thiết kế kiểm thử chức năng quản lý giỏ hàng 2 ..................................... 54
Hình 4- 13: Thiết kế kiểm thử chức năng quản lý giỏ hàng 3 ..................................... 55
Hình 4- 14: Thiết kế kiểm thử chức năng thông tin đặt hàng ...................................... 56
Hình 4- 15: Thiết kế kiểm thử chức năng quản lý tài khoản ....................................... 56
Hình 4- 16: Thiết kế chức năng thông tin thanh toán .................................................. 56
Hình 4- 17: Thiết kế kiểm thử hiệu năng ..................................................................... 57
Hình 4- 18: Thiết kế kiểm thử bảo mật ........................................................................ 58
Hình 4- 19: Thiết kế kiểm thử tính khả dụng .............................................................. 58
Hình 4- 20: Kết quả kiểm thử login ............................................................................. 88
Hình 4- 21: Kết quả chạy test case Login .................................................................... 89 CHƯƠNG 1:
TỔNG QUAN VỀ ĐỀ TÀI
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à
thời gian vẫn không đảm bảo được độ chính xác tuyệt đối không có sai sót về mặt nào lOMoAR cPSD| 23136115
Kiểm thử tự động cho ứng dụng website Black Rouge Vietnam
đó 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ể gây 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 dòng son. Selenium 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 bản 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, nhu 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 áp dụng cho dự án
tại công ty mình. Chính vì lẽ đó mà em chọn đề tài “Kiểm thử tự động cho ứng dụng
website Black Rouge Vietnam” làm bài tập lớn.
1.2 Mục tiêu của đề tài
1.2.1 Mục tiêu tổng quát
Kiểm thử tự động cho ứng dụng website Black Rouge Vietnam.
1.2.2 Mục tiêu cụ thể •
Đưa ra những khái niệm cơ bản về quy trình phát triển hiện nay cũng như
việc áp dụng kiểm thử tự động trong quy trình phát triển phần mềm (TDD, BDD) •
Đưa ra những khái niệm cơ bản về các công cụ cần thiết như: Cucumber, Selenium, Jenkins •
Đưa ra một framework nhỏ (kết hợp Cucumber và Selenium) và cách
chạy các kịch bản kiểm thử này bằng Jenkins. lOMoAR cPSD| 23136115
Kiểm thử tự động cho ứng dụng website Black Rouge Vietnam •
Phân tích và hiểu rõ hơn về hướng hành vi (BDD) trong việc kiểm thử giao diện người dùng. •
Á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 nghiệm người dùng.
1.3 Giới hạn và phạm vi của đề tài
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 vi nghiên cứu - Phạm vi không gian:
- Phạm vi thời gian: Thời gian thực hiện từ tháng 4/2024 đến tháng 6/2024 -
Ý 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 Ý nghĩa thực tiễn: Kiểm thử tự động 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 - Xây dựng test design - Xây dựng testcase - Thực thi testcase - Báo cáo lỗi - Báo cáo kiểm thử
1.5 Phương pháp tiếp cận Cách tiếp cận: Nghiên cứu tài liệu Trải nghiệm
So sánh: so sánh với website khác
Nghiên cứu các chuẩn đảm bảo chất lượng phần mềm MCCALl 1977, ISO 9216, IEEE, ......
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. lOMoAR cPSD| 23136115
Kiểm thử tự động cho ứng dụng website Black Rouge Vietnam
Tìm tài liệu 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. lOMoAR cPSD| 23136115
Kiểm thử tự động cho ứng dụng website Black Rouge Vietnam CHƯƠNG 2: CƠ SỞ LÝ THUYẾT
2.1 Kiểm thử tự động phần mềm
2.1.1 Kiểm thử tự động là gì
Kiểm thử tự động: Là xử lý một cách tự động các bước thực hiện các testcase,
kiểm thử tự động bằng một công cụ nhằm rút ngắn thời gian kiểm thử.
Kiểm thử tự động là một kỹ thuật kiểm thử phần mềm thực hiện bằng cách sử
dụng các công cụ kiểm thử tự động đặc biệt để thực hiện một bộ trường hợp kiểm thử.
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 bất kỳ vấn đề phát 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 chi 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
Nói chung ưu đ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 phát
triển của bạn được hoàn thành như bổ sung tính năng mới, sửa
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 lập tức. Việc kết hợp kiểm thử tự động vào quy trình thực
thi CI có thể hiệu quả hơn.
- Có thể thực hiện kiểm tra một cách chính xác. lOMoAR cPSD| 23136115
Kiểm thử tự động cho ứng dụng website Black Rouge Vietnam
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 nguồn 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 cả
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 dữ 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ử nghiệ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. - Hoạt động bảo trì
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 động
bảo trì là 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 gì 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 phí cao
Chi phí ban đầu cao hơn với kiểm thử thủ công, chẳng hạn như
chi phí viết mã kiểm tra và chi 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
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 lOMoAR cPSD| 23136115
Kiểm thử tự động cho ứng dụng website Black Rouge Vietnam
năng phát lại và thu âm để kiểm tra hồi quy. Các Selenium IDE chỉ hỗ trợ trình duyệt web Mozilla Firefox.
Đặc điểm của 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ữ khác
như Java, Ruby, RSpec, Python, C #, JUnit và TestNG + Nó có 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 id, 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 năng (Functional
Testing) và hồi quy (Regression Testing), giải quyết các ứng dụng phần mềm và môi
trường. Để đơ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. Đặc điểm:
Được sử dụng dễ dàng hơn dành cho người kiểm thử viên không theo ngành kỹ
thuật để thích ứng và tạo ra các trường hợp thử nghiệm làm việc
Sửa lỗi nhanh hơn bằng cách ghi lại và sao chép các lỗi cho nhà phát triển
Thu gọn tài liệu thử nghiệm tại một trang web
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à 1 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 thức và ứng dụng như Java, HTML, NET, Windows, SAP, Visual Basic ...
+ Có thể ghi 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à
tích hợp 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
+ Bộ biên tập Công cụ Java Developer Toolkit của Eclipse tạo điều kiện cho nhóm tạo
mã thử nghiệm các đoạn mã 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 lOMoAR cPSD| 23136115
Kiểm thử tự động cho ứng dụng website Black Rouge Vietnam
(Regression Testing). Watir chỉ hỗ trợ khám phá Internet trên các cửa sổ trong khi
Watir webdriver hỗ trợ 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 tất cả 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ư:
a. Mô hình thác nước (Waterfall model)
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. lOMoAR cPSD| 23136115
Kiểm thử tự động cho ứng dụng website Black Rouge Vietnam •
Đầ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. • Ưu điểm
Dễ sử dụng, dễ tiếp cận, dễ quản lý.
Sản phẩm phát triển theo các giai đoạn được xác định rõ ràng.
Xác nhận ở từng giai đ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
Hình 2- 2: Mô hình xoắn ốc -
Là mô hình kết hợp giữa các tính năng của mô hình prototyping và mô hình thác nước. -
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. -
Mô hình này sử dụng 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. lOMoAR cPSD| 23136115
Kiểm thử tự động cho ứng dụng website Black Rouge Vietnam -
Chi 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. Mô hình Agile
Hình 2- 3: Mô hình Agile
- 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, các 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ễ dàng bổ sung, thay đổi yêu cầu.
- Quy tắc tối thiểu, tài liệu dễ hiểu, dễ sử dụng. Nhược điểm
- Mô hình Agile được sử dụng rộng rãi trên thế giớ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. lOMoAR cPSD| 23136115
Kiểm thử tự động cho ứng dụng website Black Rouge Vietnam
d. Mô hình chữ V (V model)
Hình 2- 4: Mô hình chữ 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 giai đ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 kỷ 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 và dễ sử dụng, dễ quản lý. • 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ự án dài và đang 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. Mô hình Scrum