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
SOAP UI
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.
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ác dịch vụ.
1.2.3 Kiểm thử tải – Load Testing:
Kiểm thử khả năng chịu tải cho một ứng dụng web bằng LoadUI giúp đánh giá hiệu suất dưới tải trọng lớn Quá trình kiểm tra tải được thực hiện và sau đó LoadUI sẽ tự động tạo báo cáo chi tiết, cung cấp số liệu về cách ứng dụng xử lý lưu lượng, thời gian đáp ứng và mức độ ổn định, từ đó xác định liệu ứng dụng có thể chịu tải nặng hay không và hỗ trợ tối ưu hóa hiệu suất khi cần.
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ệ:
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
Sau khi bạn đã tải xuống trình cài đặt, quá trình cài đặt diễn ra khá dễ dàng Để bắt đầu, hãy nhấp đúp vào tệp cài đặt; trình cài đặt sẽ khởi động 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.
Bướ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
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.
Tiếp theo, bạn có thể chọn thư mục Menu Bắt đầu để lưu phím tắt SoapUI và quyết định xem có muốn thêm biểu tượng máy tính để bàn hay không.
Cuối cùng, bằng cách nhấp vào Tiếp theo , 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.
Chọn Finish để kết thúc.
Tạo và Test SOAP project
Trên menu, chọn File -> New SOAP Project:
Nhậ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:
Double 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ó.
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.
(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():
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:
Nhập thông tin project như sau:
Khi bạn chọn Create, một project mới được tạo ra Hãy ghi nhớ địa chỉ API do MockAPI cung cấp, đây là endpoint bạn sẽ dùng để kiểm thử trong SOAP UI.
Nhấ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.
Mặ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 REST Project:
Nhập địa chỉ REST API để test, trong ví dụ này, chúng ta sẽ nhập địa chỉ mà mockapi đã cung cấp cho chúng ta ở bước trên:
Một REST project được tạo ra như sau:
(3) Resource được cung cấp bởi WS.
(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:
Chúng ta sẽ test thử với GET users:
(3) Thêm header, chấp nhận kiểu trả về là JSON.
(5) Kết quả trả về (response).
Tương tự, các bạn hãy thử với các resource khác.
Minh họa (Demo)
Để demo SOAP UI, chúng em đã phát triển một sản phẩm kiểm tra chương trình tính số nguyên bằng một phần mềm Đầu tiên, người dùng cần nhập tên chương trình và đường dẫn tới file hoặc website cần kiểm tra để bắt đầu quá trình kiểm thử.
Sau 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ình bên phải
Nhậ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.
TEST CASES
Selenium IDE là gì?
Selenium là một automation testing framework miễn phí (mã nguồn mở).
Selenium là công cụ kiểm thử tự động được sử dụng để kiểm tra các ứng dụng web trên nhiều trình duyệt như Chrome, Firefox, MS Edge và trên các nền tảng khác nhau như Windows, macOS, Linux Nó hỗ trợ nhiều ngôn ngữ lập trình phổ biến như Java, C#, Python để viết các bộ test script, giúp tự động hóa các thao tác người dùng và xác nhận chức năng của ứng dụng web một cách hiệu quả.
Các thành phần của Selenium IDE
1 Selenium IDE: Selenium Integrated Development Environment (IDE) là một plugin trên trình duyệt Chrome và Firefox Ta có thể sử dụng chúng để ghi và phát lại (record and playback) 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
3 Selenium WebDriver: Selenium WebDriver là một automation testing tool dành riêng cho web, nó sẽ gửi lệnh khởi chạy và tương tác trực tiếp tới các trình duyệt.
4 Selenium Grid: Selenium Grid được sử dụng để khởi chạy nhiều kịch bản test song song cùng một lúc, và có thể chạy trên nhiều máy, nhiều hệ điều hành và nhiều trình duyệt khác nhau.
Các tính năng nổi bật của Selenium IDE
Đến hiện tại, Selenium vẫn nằm trong danh sách Top 10 công cụ tự động hóa kiểm thử hàng đầu, và điều khiến nó thu hút lượng lớn người dùng chính là những tính năng nổi bật được tích hợp Selenium cho phép tự động hóa trình duyệt trên nhiều nền tảng, hỗ trợ nhiều ngôn ngữ lập trình và dễ tích hợp với các framework kiểm thử phổ biến, giúp nhóm QA viết và duy trì test scripts hiệu quả Bên cạnh đó, cộng đồng người dùng lớn và khả năng mở rộng qua các tiện ích bổ sung càng làm tăng tính linh hoạt của Selenium, khiến nó trở thành lựa chọn ưu tiên cho các dự án kiểm thử tự động.
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ư:
6 Với Selenium GRID, các test case có thể được thực thi trên nhiều máy khác nhau cùng một lúc, giúp cho quá trình thực thi test được diễn ra nhanh hơn.
7 Có thể kết hợp với các hệ thống CI/CD như Jenkins, CricleCI để đẩy nhanh tiến độ kiểm tra, 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.
Những hạn chế của Selenium IDE
Vì Selenium là mã nguồn mở, các hỗ trợ về kỹ thuật không phải lúc nào cũng đáng tin cậy 100% Người dùng nên tự đánh giá, kiểm chứng và thử nghiệm trước khi áp dụng vào dự án của mình để đảm bảo tính ổn định và tương thích với môi trường làm việc Việc rà soát tài liệu nguồn, cập nhật phiên bản và kiểm tra tích hợp giúp tối ưu hóa hiệu suất và giảm rủi ro khi triển khai Selenium trong quy trình kiểm thử tự động.
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à công cụ được sử dụng nhiều nhất trong bộ Selenium để tự động hóa kiểm thử trình duyệt Tuy WebDriver rất mạnh và phổ biến, nó không có IDE tích hợp như Selenium IDE, nên người dùng phải viết từng bước cho mỗi test case, thay vì ghi lại một chuỗi thao tác như trong IDE Điều này đòi hỏi tester hoặc lập trình viên nắm vững cú pháp và quy trình viết mã để mô tả chính xác các hành động người dùng trên giao diện Dù mang lại tính linh hoạt và khả năng tùy biến cao, việc viết mã cho từng test case đồng nghĩa với thời gian đầu tư và công tác bảo trì mã nguồn Để tối ưu hiệu quả kiểm thử tự động với Selenium WebDriver, nên kết hợp một thiết kế test có cấu trúc và quản lý mã nguồn tốt.
Việc cài đặt Selenium sẽ rất phức tạp nếu bạn không sử dụng các framework có sẵn như WebdriverIO hoặc Jasmine, bởi Selenium dựa trên một tập hợp nhiều công cụ và plugin hỗ trợ automation testing, và người dùng phải tự cấu hình chúng một cách thủ công.
Selenium offers limited support for image testing, so accurate image verification with Selenium alone can be difficult To perform robust image checks, you typically need to integrate Selenium with third-party tools such as Sikuli or OpenCV, which specialize in image recognition and comparison.
Không hỗ trợ built-in reporting Tuy nhiên, bạn có thể sử dụng một số reporting library như Allure Reporting, junit reporting,
Tóm tắt Test case (Tiếng việt / Tiếng Anh)
TC ID TC Description Basic/
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
13 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
Chi tiết Test case
TC ID TC Description Steps Expected
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
Cửa hàng không nhận email không hợp lệ, nhận và gửi thông ti cho email hợp lệ
02 Xem lịch sử đơn hàng
1 Truy cập trang https://routine.vn/
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ông tin đơn hàng của khách
03 Cập nhật thông tin cá nhân
1 Truy cập trang https://routine.vn/
3 Click vào thông tin tài khoản
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/
Thoát tài khoản và trở về trang chủ Pass
Thê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
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
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
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ập 3.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ành công
08 Xóa sản phẩm trong giỏ hàng
1 Truy cập trang https://routine.vn/
4 Chọn giỏ hàng và xóa sản phẩm
Hiển thị thông báo giỏ hàng không có sản phẩm
1 Truy cập trang https://routine.vn/
2 Chọn xem tất cả cửa hàng
3 Chỉnh thông tin cửa hàng cần tìm
Cửa hàng hiển thị đúng vị trí mình chọn
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
11 Tuyển dụng 1.Truy cập trang https://routine.vn/
2 Bấm vào xem tuyển dụng
Không có nhu cầu tuyển dụng pass
12 Đánh giá sản phẩm 1.Truy cập trang https://routine.vn/
2 Bấm vào đánh giá sản phẩm
3 Nhập đánh giá Đánh giá thành công Pass
13 Tìm kiếm sản phẩm 1.Truy cập trang 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
14 Thêm sản phẩm giỏ hàng
1.Truy cập trang https://routine.vn/
3 Không chọn màu sắc và sản phẩm
4 Chọn màu sắc và size sản phẩm
Thêm sản phẩm thành công Pass
15 Thêm sản phẩm trong giỏ hàng
1.Truy cập trang https://routine.vn/
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 https://routine.vn/
2 Bấm vào đăng ký tài khoản
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/
3 Xóa thông tin địa chỉ
Xóa thông tin thành công Pass
1.Truy cập trang https://routine.vn/
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ằng nhau 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ăng dần Pass
2.8 Thống kê số lỗi tìm được
Bug ID Bug Description Evidence
01 Mô tả ngắn gọn bug tìm được Hình ảnh minh chứng
Thống kê số lỗi tìm được
Việc xây dựng test case cho một website quản lý nói chung và test case cho trang web bán quần áo (routine) không chỉ là công việc xây dựng đơn thuần mà còn đòi hỏi thực hiện một chu trình khảo sát có hệ thống trước khi bắt đầu thiết kế và lập test case Quá trình này bao gồm phân tích yêu cầu, xác định mục tiêu kiểm thử, thiết kế kịch bản kiểm thử chi tiết, đánh giá rủi ro và tối ưu hóa quy trình kiểm thử để đảm bảo chất lượng, bảo mật và hiệu suất của website.
Trong quá trình nghiên cứu đề tài này, nhóm em đã củng cố được kiến thức về kiểm thử và nắm bắt cách xây dựng các test case từ một trang web, từ đó có thể thiết kế và triển khai các test case cho các trang web tương tự như quản lý thư viện, quản lý nhân sự và quản lý khách sạn Chúng em nhận thấy phương pháp thiết kế test case từ giao diện người dùng đến các chức năng lõi giúp đảm bảo chất lượng phần mềm và tối ưu hóa hiệu suất kiểm thử Bài viết cũng gợi ý cách tối ưu nội dung theo SEO cho các chủ đề liên quan đến kiểm thử, gồm từ khóa kiểm thử, test case, kiểm thử chức năng, quản lý thư viện, quản lý nhân sự và quản lý khách sạn, để nâng cao khả năng tìm kiếm và tiếp cận của người đọc.
Để xây dựng được một kịch bản và test case kiểm thử tốt cần đầu tư chi phí vào máy móc, nhân sự.
Một số test case trong website vẫn chưa giải quyết được hết.
Chưa thể đảm bảo website hoàn toàn hết lỗi.