- Home >
- Case studies >
- Cryptocurrency wallet platform
Cryptocurrency wallet platform
Ensuring seamless user experience for an advanced crypto exchange platform.
~600
BE automated tests created
~1.2k
BE test cases created
~40 mins
Test execution time
10
Parallel threads
~20
Load tests created
About project
This is a platform that enables users to conduct diverse cryptocurrency transactions easily. Thus, with its help, it’s possible to send and purchase tokens, execute token swaps, and monitor portfolio balances. Additionally, it facilitates interaction with decentralized applications (dApps) and offers seamless integration with various types of cryptocurrency wallets. Presently, the platform supports over 20 blockchains, making cross-chain token swaps effortless for users.
Before DeviQA
There were no automated tests for the back end
Components were tested by designers as there were no dedicated QA engineers
Mobile tests were not automated
There were no test cases for the back end
Automated BE tests were not integrated into CI/CD
Runs of BE automated tests were not scheduled
There were no parallel threads
There were no load tests
With DeviQA
~600 automation test scripts have been created for the back end
Pixel-perfect testing of components is executed for all supported platforms by professional QA engineers
Our QA engineers participate in setting up a testing framework and automating mobile tests
~1,200 test cases have been created in TestRail
CI/CD has been configured with the help of GitHub Actions for the execution of automated BE tests
~40 minutes are needed to run automated tests in parallel daily
10 parallel threads are used
Load tests for RPC proxies (for ~ 20 chains) have been created, using JMeter
Our contribution
Team
2 automation qa engineers, 1 manual qa engineer
Project length
Since 2023
Technologies and tools
Mocha
Jest
WDIO
Appium
Playwright
Allure
Docker
Hardhat
GitHub Actions
GraphQL
JMeter
Confluence
TestRail
Jira
Our engagement
Initially, our testing efforts for the project were predominantly geared toward automating back-end (BE) tests. With no functional BE test suite in place, our first step was to establish a framework. Then, we migrated existing tests written in various programming languages to TypeScript to streamline and standardize our testing process.
Concurrently, we configured CI/CD using GitHub Actions to execute BE automated tests on a daily basis or on demand. Additionally, we wrote over 1,200 test cases in TestRail to ensure comprehensive testing coverage.
Presently, we are actively engaged in both developing new automated tests and maintaining existing ones. Our test suite comprises approximately 600 end-to-end (E2E) automated tests on the BE side. It takes around 40 minutes to run the whole suite due to parallel execution with 10 threads. These automated tests play a crucial role in release testing and monitoring the BE side on the production.
Regarding front-end (FE) testing, we focus on executing pixel-perfect tests for shared components utilized across both web and mobile platforms. Currently, we are setting up a testing framework for mobile test automation.
Notably, we have also developed load tests for RPCs, facilitating performance testing and aiding the team in evaluating performance metrics.
Services provided
Web testing
Our QA engineers are deeply involved in executing pixel-perfect testing of shared components utilized across web and mobile platforms. Also, they actively work on migrating existing front-end automated tests to a new testing framework.
Mobile testing
Currently, the team is setting up an automation framework for both the iOS and Android platforms. This includes creating new automated tests using WDIO (WebdriverIO) along with Appium and configuring the setup for seamless integration with additional third-party services.
BE testing
Our team develops new automated tests for both GraphQL and REST API endpoints. Additionally, we've integrated tests into CI/CD from scratch using GitHub Actions. Moreover, our team has created load scripts with the help of JMeter to test over 20 RPC nodes used by the platform.
Dedicated qa team
As of now, our 3 QA engineers work on the project, handling manual testing and test automation for the back end (BE), front end (FE), and mobile platforms. Recently, one of them has been assigned to the QA Lead role and now manages the expanded team of 7 QA engineers.
We prioritize active communication with developers and management to continuously improve testing processes and the overall development cycle. This collaborative approach ensures consistent delivery of high-quality products and maximizes efficiency and effectiveness throughout the project lifecycle.
Facing similar challenges?
Schedule a call to see how we can help you