How to Quickly Create Interface Automation

During the project development process, regression validation is always performed on the original functions to ensure that the original logic is normal, such as smoke testing, regression testing, and monitoring online business. When there is a lot of content to be regressed, it brings about heavy repetitive actions. In order to improve the efficiency of testers and avoid missing scenarios during manual regression, we can use Metersphere to create interface automation to help us regress this part of the logic.

How to use Meterphere for interface automation testing?

Create a single interface use case

1. Select the corresponding project and create the corresponding test plan

2. Select the interface definition in the test plan, which can be defined by entering the interface document, Postman file, or manually creating a new interface

3. Ensure that the URL of the interface, request method, and definition of the request body are correct

4. After successfully debugging the interface, add interface cases under the interface and debug them

For interface use cases, the difficulties and key points to focus on are as follows:

Test data preparation: For example, to test the cancellation order interface, it is necessary to first create the order. So we can prepare data through interface calls or SQL statements in the preconditions.

Obtaining interface parameters: Such as creation time. We can implement it through scripts or meter’s built-in functions.

Assertion of test results: Reasonably assert the returned content of the interface.

Cleaning of test data: To ensure that the data in the environment is not affected by previous tests, maintain the independence and repeatability of the tests, and create users. Simultaneously providing a clean environment for the next round of testing.

1. Select the interface in the corresponding project and create a scenario.

2. Based on the business scenario, concatenate the created single interfaces together to form a scenario process.

3. Debugging the process.

Because the link scenario involves multiple interfaces, it can simulate more complete business processes or user interactions. When designing scenario use cases, attention should be paid to the following aspects:

What interfaces were used and ensure the execution order of the interfaces.

Determine parameter transfer and dependency relationships to ensure correct data transfer between interfaces.

Reasonably asserting requires verifying the state of the entire link, not just the response of a single interface.

Data-driven, executing the same link scenario through different input data, can verify the behavior of the system under different conditions.

Reasonably use the controller as needed.

Set up an execution plan and analyze the test results

Set an execution plan to execute the use cases at a fixed time and send the results to the followers. Analyze the test results.

Daily Maintenance

This includes handling automation runned failures, synchronously updating interface definitions, and ensuring the reliability and maintainability of automation testing.

Example interface path: user/create

Test steps:

● Prepare test data:

● Precondition: Ensure that there are no users with the same phone number in the system. A clean testing environment can be created through interface calls or SQL statements.

● Call to create a new user interface:

● Request URL: https://api.example.com/user/create

Request method: POST

● Request body: {“phone”: “9876543210”, “password”: “test”}

● Assertion interface response:

●Use regular expressions or JSONPath assertions to ensure that the JSON results returned by the interface contain the expected user information.

●Example assertion: $. userId= Null&&$. userName==”testUser”

● Post operation - data cleaning:

●Delete newly created users through interface calls or SQL statements to maintain a clean and independent testing environment.

●Example post operation: Delete From users Where phone=’9876543210’

Once these are confirmed, the previously created single interfaces can be concatenated together. For scenario use cases, it is necessary to ensure that the same link scenario can be executed through different input data to verify the system’s behavior under different conditions.

The above can help everyone better utilize Metersphere for interface automation design and management.