Tuy nhiên, muốn quản lý tốt chúng ta cần phải cócác trang web tốt, trang web phải đảm bảo có độ bảo mật cao, dễ sử dụng và không có lỗi.Chính vì thế, việc kiểm thử website hoặc phần mềm
Trang 1BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC CÔNG NGHỆ TP HCM KHOA CÔNG NGHỆ THÔNG TIN
Trang 2BÁO CÁO ĐỒ ÁN KIỂM THỬ VÀ ĐẢM BẢO CHẤT LƯỢNG PHẦN MỀM
Đề tài: SOAP UI
Website kiểm thử: https://routine.vn/
Giảng viên hướng dẫn: ThS Trịnh Công Nhựt
Sinh viên thực hiện:
TP Hồ Chí Minh, 12/2022
Trang 3BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC CÔNG NGHỆ TP HCM KHOA CÔNG NGHỆ THÔNG TIN
Trang 4BÁO CÁO ĐỒ ÁN KIỂM THỬ VÀ ĐẢM BẢO CHẤT LƯỢNG PHẦN MỀM
Đề tài: SOAP UI
Website kiểm thử: https://routine.vn/
Giảng viên hướng dẫn: ThS Trịnh Công Nhựt
Sinh viên thực hiện:
TP Hồ Chí Minh, 12/2022
Trang 5MỤC LỤC
MỤC LỤC 2
LỜI NÓI ĐẦU 4
LỜI CẢM ƠN 5
CHƯƠNG 1 SOAP UI 6
1.1 SOAP UI là gì? 6
1.2 Một số tính năng quan trọng của SOAP UI 6
1.2.1 Kiểm thử chức năng – Functional Testing: 6
1.2.2 Kiểm thử bảo mật – Security Testing: 6
1.2.3 Kiểm thử tải – Load Testing: 7
1.2.4 Hỗ trợ các giao thức và công nghệ: 7
1.3 Hướng dẫn cài đặt 8
1.4 Tạo và Test SOAP project 12
1.4.1 Tạo SOAP project 12
1.4.2 Test SOAP API 15
1.5 Tạo và test REST project 16
1.5.1 Tạo REST API sử dụng mockapi 16
1.5.2 Tạo REST project với SOAP UI 19
1.6 Minh họa (Demo) 22
Trang 6CHƯƠNG 2 TEST CASES 25
2.1 Selenium IDE là gì? 25
2.2 Các thành phần của Selenium IDE 25
2.3 Các tính năng nổi bật của Selenium IDE 26
2.4 Những hạn chế của Selenium IDE 28
2.5 Tóm tắt Test case (Tiếng việt / Tiếng Anh) 29
2.6 Chi tiết Test case: 30
CHƯƠNG 3 KẾT LUẬN 34
TÀI LIỆU THAM KHẢO 35
Trang 7LỜI NÓI ĐẦU
Hiện nay Công nghệ thông tin vô cùng phát triển thì mọi người đều sử dụng máy vi tính
để làm việc Công nghệ thông tin được áp dụng rất nhiều vào các lĩnh vực mà điển hình là lĩnhvực quản lý Tin học hóa trong quản lý giúp cho các nhà quản lý điều hành công việc một cáchkhoa học, chính xác và hiệu quả hơn
Như chúng ta đã biết tại các trường hoc, việc lưu trữ thông tin thì rất quan trọng nhưnglại còn rất thủ công, chỉ xây dựng và lưu lại trên sổ sách gây mất thời gian, khó khăn trong việcthống nhất, theo dõi và quản lý khách hàng Tuy nhiên, muốn quản lý tốt chúng ta cần phải cócác trang web tốt, trang web phải đảm bảo có độ bảo mật cao, dễ sử dụng và không có lỗi.Chính vì thế, việc kiểm thử website hoặc phần mềm là không thể thiếu vì nó đảm bảo chowebsite hoặc phần mềm của chúng ta ít lỗi nhất có thể Với kiểm thử phần mềm, nếu có bất kỳlỗi nào, nó có thể được xác định sớm và giải quyết trước khi bàn giao sản phẩm Do đó, nhómchúng em đã chọn đề tài kiểm thử với trang web “ Thời trang Routine ” với mục đích vớinghiên cứu, tìm hiểu về và xây dựng những kịch bản và test case phù hợp nhất với trang webvới mong muốn có thể tìm ra được nhiều lỗi nhất có thể của website
Do chưa có nhiều kinh nghiệm nghiên cứu, thực hành nên đề tài thực hiện còn nhiều thiếusót không đáng có, chúng em mong nhận được đóng góp ý kiến từ thầy
Chúng em xin chân thành cảm ơn
Trang 8LỜI CẢM ƠN
Báo cáo đồ án kiểm thử và chất lượng phần mềm với đề tài “” là kết quả của quá trình
cố gắng không ngừng của bản thân và được sự giúp đỡ của các Ths Trịnh Công Nhựt Chúng
em xin gửi lời cảm ơn tới những người đã giúp đỡ trong thời gian học tập - nghiên cứu vừaqua Em đã hoàn thành đúng thời hạn quy định và tích lũy được cho mình một lượng nền tảngkiến thức quý báu
Mặc dù đã cố gắng hoàn thành đề tài tốt nhất nhưng do thời gian và kiến thức còn cóhạn nên em sẽ không thể tránh khỏi những thiếu sót nhất định, rất mong nhận được sự cảmthông, chia sẻ và tận tình đóng góp chỉ bảo của quý thầy cũng như các bạn
Trang 9CHƯƠNG 1 SOAP UI 1.1 SOAP UI là gì?
SOAP UI là công cụ kiểm tra API đa nền tảng dựa trên mã nguồn mở
SOAPUI cho phép người kiểm thử thực hiện kiểm thử tự động: functional, regression,compliance, and load tests trên các API Web khác nhau
SOAPUI hỗ trợ tất cả các giao thức, công nghệ tiêu chuẩn để kiểm tra tất cả các loại API
Giao diện SOAPUI rất đơn giản cho phép cả người dùng kỹ thuật và phi kỹ thuật sử dụng
dễ dàng
1.2 Một số tính năng quan trọng của SOAP UI
1.2.1 Kiểm thử chức năng – Functional Testing:
Một công cụ mạnh mẽ cho phép tester viết Functional API Tests trong SOAP UI
Hỗ trợ tính năng kéo-thả mà làm tăng tốc độ phát triển script
Hỗ trợ gỡ lỗi và cho phép tester phát triển data driven tests
1.2.2 Kiểm thử bảo mật – Security Testing:
Ngăn chặn SQL Injection để bảo đảm cơ sở dữ liệu
Thực hiện Fuzzing scan và Boundary scan để tránh những hành vi thất thường của cácdịch vụ
Trang 101.2.3 Kiểm thử tải – Load Testing:
Kiểm thử khả năng chịu tải của một ứng dụng web sử dụng loadUI Sau khi thực hiệnkiểm tra tải, LoadUI sẽ tạo ra một bản báo cáo, giúp xác định liệu các ứng dụng có thểchịu tải nặng hay không
Kiểm thử khả năng chịu tải của một ứng dụng web sử dụng loadUI
Mô phỏng mức độ cao và kiểm thử tải thực tế một cách dễ dàng
Cho phép tùy chỉnh báo cáo chi tiết để nắm bắt các thông số hiệu suất
1.2.4 Hỗ trợ các giao thức và công nghệ:
1.3 Hướng dẫn cài đặt
Download SOAP UI free version (SOAP UI Open Source) tại
https://www.soapui.org/downloads/soapui.html
Trang 11Khi bạn đã tải xuống trình cài đặt , quá trình cài đặt khá đơn giản Bắt đầu nó bằng cách nhấpđúp vào nó Trình cài đặt sẽ bắt đầu ngay lập tức.
Nhấn Next để tiếp tục.
Chọn thư mục đích, theo mặc định, thư mục này được đặt thành C:\Program Files\SmartBear\SoapUI-5.5.0
Trang 12Bước tiếp theo cho bạn cơ hội bao gồm, dưới dạng các thành phần bổ sung, tệp nguồn SoapUI, hướng dẫn và cài đặt HermesJMS.
Lưu ý: Nếu bạn chọn cài đặt HermesJMS, bạn sẽ phải chấp nhận thỏa thuận cấp phép
HermesJMS
Nếu bạn chọn cài đặt các hướng dẫn SoapUI, hãy chỉ định thư mục mà bạn muốn cài đặt chúng
Trang 13Sau đó, bạn sẽ có thể chọn thư mục Menu Bắt đầu nơi bạn muốn thêm phím tắt SoapUI
và liệu bạn có muốn thêm biểu tượng máy tính để bàn hay không
Trang 14Cuối cùng, bằng cách nhấp vào Next, quá trình cài đặt sẽ bắt đầu.
Sau tối đa vài phút, quá trình cài đặt sẽ hoàn tất và bạn sẽ thấy màn hình tiếp theo
Trang 15Chọn Finish để kết thúc.
1.4 Tạo và Test SOAP project
1.4.1 Tạo SOAP project
Trên menu, chọn File -> New SOAP Project:
Trang 16Nhập tên project và địa chỉ đến file wsdl của WS.
Chọn Create sample request -> OK Chúng ta có kết quả sau:
Trang 17Double click lên tên project để xem thêm thông tin về project, nhập thông tin username/password để truy cập WS nếu có.
Trang 181.4.2 Test SOAP API
Thực hiện theo các bước như hình sau để test API insert:
(1): Double click để mở cửa sổ test API insert
(2): Nhập data test
(3): Gửi request
(4): Kết quả trả về (response)
(5): Nhập thông tin chứng thực, header, … nếu có
(6): Chọn show log nếu cần
Tương tự, chúng ta sẽ thử với API getAll():
Trang 191.5 Tạo và test REST project
1.5.1 Tạo REST API sử dụng mockapi
Truy cập vào địa chỉ https://www.mockapi.io và đăng ký một tài khoản.Tạo mới một project:
Trang 20Nhập thông tin project như sau:
Sau khi chọn Create, một project được tạo ra Các bạn hãy lưu ý địa chỉ API được mockapicung cấp, chúng ta sẽ sử dụng địa chỉ này để test trong SOAP UI
Trang 21Nhấn nút New resource để tạo mới resource cho project:
Nhập tên resources, chẳng hạn users -> Create.
Sau khi đã tạo resource, chọn (1) Generate all để tạo data test
Trang 22Mặc định mockAPI, sẽ tạo 50 data test.
1.5.2 Tạo REST project với SOAP UI
Tương tự như tạo SOAP project, để tạo REST project, chúng ta vào menu File -> New RESTProject:
Nhập địa chỉ REST API để test, trong ví dụ này, chúng ta sẽ nhập địa chỉ mà mockapi đã cungcấp cho chúng ta ở bước trên:
Một REST project được tạo ra như sau:
Trang 23 (1) Thông tin project.
(2) Địa chỉ REST WS
(3) Resource được cung cấp bởi WS
(4)-(5) Tham số của request
(6) Kết quả trả về (response)
(7) Nhập thông tin chứng thực, header, … nếu có
(8) Chọn show log nếu cần
Một số resouce (phương thức) được mockapi, cung cấp như sau:
Trang 24Chúng ta sẽ test thử với GET users:
Trang 25Tương tự, các bạn hãy thử với các resource khác.
1.6 Minh họa (Demo)
Để demo cho SOAP UI thì chúng em đã sử dụng phần mềm để viết 1 product kiểm tra chươngtrình tính số nguyên Đầu tiên là nhập tên chương trình và đường dẫn tới file hoặc website cầnkiểm tra
Trang 26Sau khi tạo project thì sẽ hiện file calculator
Bấm vào calculator → CalculatorSoap → Add → Request 1 sẽ hiện ra bảng chạy chương trìnhbên phải
Trang 27Nhập 2 số cần tính thay thế vào “ ? ” và bấm submit sẽ cho ra kết quả của phép cộng
Tương tự với các ví dụ còn lại
Trang 28CHƯƠNG 2 TEST CASES2.1 Selenium IDE là gì?
Selenium là một automation testing framework miễn phí (mã nguồn mở)
Nó được sử dụng để kiểm thử các ứng dụng web trên các trình duyệt (chrome, firefox,
ms edge, …) và nền tảng khác nhau (Windows, Mac, Linux, …) Selenium hỗ trợ nhiềuloại ngôn ngữ lập trình như: Java, C #, Python, để tạo ra các bộ test script
2.2 Các thành phần của Selenium IDE
1 Selenium IDE: Selenium Integrated Development Environment (IDE) là một plugin trêntrình duyệt Chrome và Firefox Ta có thể sử dụng chúng để ghi và phát lại (record andplayback) các tương tác của người dùng theo một quy trình hay một test case nào đó
2 Selenium RC: Selenium Remote Control (RC), Selenium server khởi chạy và tương tác với trình duyệt web
Năm 2008, Selenium team đã quyết định gộp Selenium RC và WebDriver để tạo ra Selenium 2 với nhiều tính năng mạnh mẽ hơn, mà hiện nay phần lớn các project
Trang 292.3 Các tính năng nổi bật của Selenium IDE
Tới thời điểm hiện tại, Selenium luôn nằm trong danh sách Top 10 Testing Automation Tools, vậy điều gì khiến Selenium có thể thu hút được lượng lớn người sử dụng? Đó chính là nhờ các tính năng nổi bật của Selenium
1 Selenium là mã nguồn mở Do đó, mọi người có thể download source code về sử dụng,
và thay đổi tùy theo nhu cầu
2 Cộng đồng sử dụng rộng rãi Thường xuyên được phát triển và cải tiến mạnh mẽ
3 Hỗ trợ cho nhiều trình duyệt như Chrome, Firefox, Safari, Internet Explorer, Opera, vàMicrosoft Edge
4 Hỗ trợ trên nhiều hệ điều hành: MacOS, Linux, Windows và UNIX
5 Các test case có thể được viết bằng nhiều ngôn ngư khác nhau như: Java, C#, Ruby,JavaScript, Python,… Ngoài ra, với mỗi ngôn ngữ lập trình, đều có các framework hỗtrợ như:
Trang 306 Với Selenium GRID, các test case có thể được thực thi trên nhiều máy khác nhau cùngmột lúc, giúp cho quá trình thực thi test được diễn ra nhanh hơn.
Trang 317 Có thể kết hợp với các hệ thống CI/CD như Jenkins, CricleCI để đẩy nhanh tiến độ kiểmtra, từ đó có thể rút ngắn thời gian release sản phẩm.
8 Hỗ trợ mobile testing Bạn có thể kết hợp Selenium với một số tool như Appium,Selendroid để có thể tiến hành kiểm thử các ứng dụng mobile như: native, hybrid, vàweb mobile app
2.4 Những hạn chế của Selenium IDE
Vì Selenium là mã nguồn mở, nên các hỗ trợ về technical đều không hoàn toàn đáng tincậy 100% Các bạn phải tự đánh giá, kiểm chứng trước khi áp dụng cho dự án của bạn
Không giống như một số automation testing tools hỗ trợ IDE, với Selenium bạn phải bỏ nhiều thời gian để học và viết test case
(Selenium WebDriver là tool được sử dụng nhiều nhất trong bộ Selenium, tuy nhiên thì
nó không hỗ trợ IDE như Selenium IDE, nên bắt buộc chúng ta phải viết step by step cho mỗi test case)
Nếu không sử dụng các framework có sẵn như WebdriverIO, Jasmine, thì việc cài đặtSelenium rất phức tạp vì nó sử dụng các công cụ và plugin khác nhau để hỗ trợautomation testing Và chúng ta cần phải cấu hình chúng một cách thủ công
Ít hỗ trợ cho Image Testing Với Selenium, để có thể kiểm chứng hình ảnh một cáchchính xác, bạn cần phải kết hợp với một third-party software như Sikuli hoặc OpenCV
Không hỗ trợ built-in reporting Tuy nhiên, bạn có thể sử dụng một số reporting librarynhư Allure Reporting, junit reporting,
Trang 32Giao diện trang chủ
2.5 Tóm tắt Test case (Tiếng việt / Tiếng Anh)
Advanced
Author
01 Nhận thông tin qua email 0.1 Hưng
02 Xem lịch sử đơn hàng 0.1 Hưng
03 Cập nhật thông tin cá nhân 0.1 Hồng
04 Đăng xuất khỏi website 0.1 Hưng
05 Thêm địa chỉ giao hàng 0.1 Hồng
06 So sánh SALE OFF của cửa hàng 0.2 Hưng
07 Nhập tài khoản không tồn tại khi đăng nhập 0.1 Hưng
08 Xóa sản phẩm trong giỏ hàng 0.1 Hưng
12 Đánh giá sản phẩm 0.1 Hồng
Trang 3313 Tìm kiếm sản phẩm 0.1 Hưng
14 Thêm sản phẩm giỏ hàng 0.1 Hồng
15 Thêm sản phẩm trong giỏ hàng 0.1 Hưng
16 Đăng ký tài khoản 0.1 Hưng
17 Xóa địa chỉ giao hàng 0.1 Hồng
18 So sánh số tiền 0.15 Hồng
19 Sắp xếp sản phẩm theo giá tăng dần 0.15 Hồng
2.6 Chi tiết Test case:
01 Nhận thông tin qua email
1 Truy cập trang https://routine.vn/
2 Click và điền hoanghong1253 vào tham gia bảng tin cùng chúng tôi
3 Kết quả địa chỉ email không hợp lệ
4 Click và điền hoanghong1253@gmail.com
vào tham gia bảng tin cùng chúng tôi
5 Kết quả success
Cửa hàngkhông nhậnemail khônghợp lệ, nhận
và gửi thông
ti cho emailhợp lệ
Pass
02 Xem lịch sử đơn hàng
1 Truy cập trang https://routine.vn/
2 Click vào membership
3 Click vào lịch sử mua hàng
4 Tại đơn hàng chọn mua tại cửa hàng
5 Tại đơn hàng chọn mua online
Hiển thịđúng thôngtin đơn hàngcủa khách
Pass
03 Cập nhật thông tin
cá nhân
1 Truy cập trang https://routine.vn/
2 Click vào membership
3 Click vào thông tin tài khoản
4 Nhập họ: Hoàng
5 Nhập tên: Hồng
6 Click vào cập nhật thông tin
Cập nhật đúng thông tin cá nhân Pass
04
Đăng xuất khỏi
website
1 Truy cập trang https://routine.vn/
2 CLick vào membership
3 Click vào đăng xuất
Thoát tài khoản và trở
về trang chủ
Pass
Trang 34Thêm địa chỉ giao
hàng
1 Truy cập trang https://routine.vn/
2 Click vào tài khoản cá nhân
3 Click vào địa chỉ giao hàng
4 Click vào thêm địa chỉ mới
5 Nhập thông tin + Click xác nhận
Lưu lại thông tin như người dùng nhập
Pass
06 So sánh SALE OFF của cửa hàng
1 Truy cập trang https://routine.vn/
2 Di chuyển chuột vào NAM + CLick vào end of season
3 Click vào SALE OFF 70%
4 Click vào SALE OFF
5 CLick vào SALE OFF 70%
So sánh số lượng sản phẩm của 2 trang SALE OFF
Số lượng sản phẩm 2 trang bằng nhau
Pass
07 Nhập tài khoản không tồn tại khi
đăng nhập
1.Truy cập trang https://routine.vn/
2.Click vào Đăng nhập3.Nhập tài khoản, mật khẩu bất kỳ4.Click vào đăng nhập
Kết quả mong đợi:
Đăng nhập không thànhcông
Pass
10 Quên mật khẩu
1.Truy cập trang https://routine.vn/
2 Bấm vào quên mật khẩu
3 Nhập số điện thoại và mã OTP
Hiển thị về trang đăng nhập Pass
Trang 3511 Tuyển dụng
1.Truy cập trang https://routine.vn/
2 Bấm vào xem tuyển dụng
3 Nhập bomber
Không có nhu cầu tuyển dụng
13 Tìm kiếm sản phẩm 1.Truy cập trang 2 Bấm vào tìm kiếm https://routine.vn/
3 Nhập thông tin sản phẩm cần tìm
Tìm thấy sản phẩm theo yêu cầu
Pass
15 Thêm sản phẩm trong giỏ hàng
1.Truy cập trang https://routine.vn/
2 Bấm vào giỏ hàng
3 Bấm thêm sản phẩm đã chọn trong giỏ hàng
Thêm sản phẩm thành công Pass
16 Đăng ký tài khoản 1.Truy cập trang 2 Bấm vào đăng ký tài khoảnhttps://routine.vn/
3 Nhập thông tin
Đăng ký tài khoản thành công
Pass
17 Xóa địa chỉ giao hàng
1.Truy cập trang https://routine.vn/
2 Bấm vào địa chỉ
3 Xóa thông tin địa chỉ
Xóa thông tin thành công
Pass
Trang 3618 So sánh số tiền
1.Truy cập trang https://routine.vn/
2 Bấm vào sản phẩm
3 thêm sản phẩm vào giỏ hàng
4 so sánh số tiền trong giỏ hàng với số tiền sản phẩm
Số tiền bằngnhau pass
19 Sắp xếp sản phẩm theo giá tăng dần
1.Truy cập trang https://routine.vn/
2 Bấm vào chức năng sắp xếp tăng dần
3 so sánh số tiền trong giỏ hàng với số tiền sản phẩm
So sánh tăngdần Pass