API Service Testing, Transition from Python 2 to Python 3

Automated API testing

Industry

E-commerce

Country

Japan

Type of Service

Automated testing

Cooperation Type

Part-time

Project Type

API testing

Overview

Virtusize is a Tokyo-based company developing a solution for e-commerce businesses. The product they develop makes online shopping easier, helping to choose the best clothing size and fit. The company creates a marketplace by placing e-stores within its platform.

Challenge

The task was to test the API service that helps users select the most suitable size of clothing. Since Python 2 is deprecated since January 1st 2020, Virtusize was looking for a QA Automation Engineer to accompany the transition of API service from Python 2 to Python 3 in short time limits.

Solution

  • After careful evaluation of the software and business objectives research, our QA engineer created autotest cases with the help of the Tavern and Pytest.
  • To make a smooth transition from Python 2 to Python 3, QA pros usually test both versions first. This is exactly what our specialist did.
  • The QA engineer carried out a thorough analysis of sufficient coverage by the application endpoints. This step was taken to ensure the traceability of the expected test results. The analysis showed a lack of current endpoint coverage. As a result of QA and developers` cooperation, the required amount of additional endpoints was designed and implemented in the system. This ensured better traceability of application data.
  • All developed API endpoints of the service were covered by functional and integration tests, immediately upon their readiness.
  • For this project, our QA engineer has implemented functional, integration testing, as well as regression testing. Regression testing was chosen to complete the service transition from Python 2 to Python 3 due to the use of third-party services by the application for storing business objects and images.

Results

  • The QA engineer developed clear documentation and reports on the results, pointed out the areas for improvement. A daily launch of tests in the cloud service was implemented to monitor the stable operation of the API in the long run.
  • As a result of testing, QA pro has detected endpoint errors that prevented the system`s expected behavior of the application business model.
  • Our recommendations related to the existing implementation of the endpoints to conform with the GET idempotent principle as per the REST API Best Practices.
  • The collaboration helped the product team to improve the traceability of endpoint data, improve the implementation of the application business logic, and support a smooth, quality-controlled transition from Python 2 to Python 3.

Let’s Start a New Project Together

QA Madness helps tech companies strengthen their in-house teams by staffing dedicated manual and automated testing experts.

Anastasiia Letychivska

Head of Growth

Ready to speed up the testing process?