Luxe Quality logo
Photo Ulap site
Aug 18, 2023

AUTOMATION TESTING FOR ULAP

Cloud services

Web

Platforms

USA

Country

June 2021 – Mar 2022

Implementation time

ABOUT COMPANY

Ulap is a cloud-native data platform that enables developers and data scientists to deploy and operate applications at scale effortlessly. This innovative project uses blockchain and artificial intelligence technologies to simplify various operations.

BEFORE

The project was at the development stage, and before the arrival of our specialist, testing was carried out by members of the development team, including the project manager, through manual regression testing. There was no test documentation on the project.

CHALLENGES AND SOLUTIONS

The main task for our specialist was the automation of regression testing scenarios for cluster deployment and connection of default and custom applications. Also, emphasis was placed on escalating possible critical errors during application or cluster deployment.

The QA processes were significant in this project, not just testing. Our specialists checked the correctness of the processes and identified factors that delayed the development and made it less qualitative.

Challenges

Solutions

The source code had many bugs, and the code smells 

With SonarScanner, several source code repositories have been updated, code smells have been removed, and major bugs have been fixed 

There was a problem with the simultaneous deployment of identical applications (e.g., PostgreSQL) on 2+ clusters 

The problem was identified, described, and forwarded to developers for further resolution. Previously, it was not found precisely because of the lack of parallel testing 

Depending on the cloud provider, the cluster deployment process took 15 to 60 minutes (AWS - 1 hour, Azure - 30 minutes, GCP and IBM - 15 minutes) 

To test approximately 50 possible combinations of cluster deployment options, the client wanted weekly tests for each combination. For this, 2 pipelines were created, and pytest tags were used to separate tests by day of the week. The modified launch script took into account the day of the week and time relative to GMT, allowing for minimal test coverage for each set of parameters as requested by the customer 

TECHNOLOGIES, TOOLS, AND APPROACHES

The testing performed included manual regression, smoke testing, and automatic regression analysis using SonarScanner. By choosing Python as the language for test automation and the Selenium framework, the efficiency and reliability of the tests on different environments were ensured.  

In addition, used: 

  • PyCharm: integrated development environment (IDE) for Python, which allows you to comfortably write, debug, and test programs in the Python language;  
  • DBeaver: a universal database client that allows the project to conveniently interact with various database management systems during testing and debugging;  
  • Postman: a tool that helped to test and validate interaction with the API during testing, as well as AWS and GCP services that provided various services and resources for deployment, testing, and project development.

FEATURES OF THE PROJECT 

The project has the characteristics of exploratory testing, as there was no access to High-Level Documents and Project Requirements Documents, as well as use cases or user stories. Automated scenarios have not been formally documented but have been successfully implemented on an actively developed project.  

To ensure independence from the state of the database and the possible change of the user interface, the test scenarios were designed as self-contained. This allows for context-agnostic testing and helps ensure the stability of tests at different stages of development. 

RESULTS 

  • Tests cover 90% of functionality. This made it possible to check the system's operation faster and more reliably at various stages of development, strengthened the test base of the project, and expanded functionality. 
  • Implementing automated testing for regression scenarios helped strengthen the test base for the project and expanded its overall functionality. CI/CD pipeline was integrated into Gitlab. 
  • Deployment times for different clusters were optimized based on the cloud provider, resulting in a faster and more efficient deployment process for the customer. 
  • The project successfully implemented exploratory testing despite lacking high-level documents and project requirements documents, demonstrating adaptability and efficient testing methods in a dynamic development environment. 

Vasyl is a highly skilled engineer with strong communication skills. He integrated directly with our development team and participated daily with the team. Vasyl's attention to detail and test automation skills were a critical part of our daily operations. I highly recommend Vasyl for test automation projects or would welcome Vasyl back to our team when available.

Michael Perez, Co-Founder

Services provided
  • Manual testing
  • Smoke testing
  • Regression testing
  • Functional testing
  • Automation testing
QA Technologies used
  • true icon
  • true icon

Have a project for us?

Let’s build your next product! Share your idea or request a free consultation from us.

Other Projects