Giới thiệu SOAP UI và thực hiện test Web Service

Trong bài viết trước, chúng ta đã cùng tìm hiểu về cách xây dựng ứng dụng SOAP Web service và viết chương trình Client để gửi request và nhận response từ web service. Trong bài này, chúng ta sẽ cùng tìm hiểu về SOAP UI – một công cụ giúp chúng ta dễ dàng test các Web service.

1. Giới thiệu Automation test tool SOAP UI

SOAP UI là một test tool rất mạnh cho việc kiểm thử Kiểm thử Web Service. Với SOAP UI, chúng ta dễ dàng thực hiện kiểm thử tự động chức năng, kiểm thử hồi quy và kiểm thử tải trên các Web API khác nhau.

SOAP UI hỗ trợ tất cả các chuẩn giao thức và công nghệ để test tất cả các loại API (bao gồm cả SOAP và REST).

Ngoài ra SOAP UI còn cho phép chúng ta thực hiện thử nghiệm phi chức năng như kiểm thử hiệu suất và kiểm thử bảo mật.

Giao diện SOAP UI đơn giản, thân thiện, dễ sử dụng.

Một số tính năng quan trọng của SOAP UI:

  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. 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. 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ện kiể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. Hỗ trợ các giao thức và công nghệ:

2. Cài đặt SOAP UI

Tải phần mềm: Download SOAP UI free version (SOAP UI Open Source) tại https://www.soapui.org/downloads/soapui.html

Cài đặt SOAP UI theo hướng dẫn: https://www.soapui.org/getting-started/installing-soapui/installing-on-windows.html

Giao diện sau khi cài đặt và mở ứng dụng SOAP UI:

3. Sử dụng SOAP UI

3.1. Tạo và test SOAP project

3.1.1. Tạo 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. Trong ví dụ này, tôi sử dụng lại WS đã tạo ở bài viết trước.

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ó.

3.1.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():

3.2. Tạo và test REST project

Trước khi tạo REST project, chúng ta cần chuẩn bị một REST API. Để đơn giản, tôi sẽ sử dụng mockapi để tạo REST API (các bạn có thể bỏ qua bước này nếu đã có REST API).

3.2.1. Tạo REST API sử dụng mockapi

Truy cập vào địa chỉ 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:

Sau khi chọn Create, một project được tạo ra. Các bạn hãy lưu ý địa chỉ API được mockapi cung cấp, chúng ta sẽ sử dụng địa chỉ này để test 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, các bạn có thể xem/ sửa data test tại (2).

Chi tiết các bạn xem thêm document của mockapi.

3.2.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:

  • (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:

Chúng ta sẽ test thử với GET users:

  • (1) Nhập resource là: /users
  • (2) Chọn phương thức GET
  • (3) Thêm header, chấp nhận kiểu trả về là JSON.
  • (4) Chọn gửi request.
  • (5) Kết quả trả về (response).

Tương tự, các bạn hãy thử với các resource khác.

Trên đây là một vài thông tin cơ bản và cách sử dụng SOAP UI. Còn rất nhiều tính năng khác của SOAP UI các bạn tham khảo thêm ở các link bên dưới.

Related posts:

Java Program to Print only Odd Numbered Levels of a Tree
Transactions with Spring and JPA
Java Program to Check whether Graph is Biconnected
Lớp lồng nhau trong java (Java inner class)
Check if there is mail waiting
Java Program to Perform Searching in a 2-Dimension K-D Tree
Java Web Services – Jersey JAX-RS – REST và sử dụng REST API testing tools với Postman
Spring Boot - Application Properties
Error Handling for REST with Spring
Using Spring ResponseEntity to Manipulate the HTTP Response
Java Program to Implement Circular Doubly Linked List
Java Program to Generate a Random UnDirected Graph for a Given Number of Edges
Java 9 Stream API Improvements
Lập trình đa luồng với CompletableFuture trong Java 8
A Guide to BitSet in Java
Spring Boot - Apache Kafka
Test a REST API with Java
Prevent Brute Force Authentication Attempts with Spring Security
Java 8 – Powerful Comparison with Lambdas
Java Program to Perform String Matching Using String Library
How to Add a Single Element to a Stream
Java Program to Implement Hash Tables
Java Program to Implement Knight’s Tour Problem
Quick Guide to @RestClientTest in Spring Boot
Java Program to Implement CopyOnWriteArrayList API
Java Program to Implement Maximum Length Chain of Pairs
Interface trong Java 8 – Default method và Static method
How to Break from Java Stream forEach
Request a Delivery / Read Receipt in Javamail
Java Program to Find Number of Spanning Trees in a Complete Bipartite Graph
Java Program to Find Minimum Element in an Array using Linear Search
Java Program to Implement Segment Tree