Successfully executed E2E blockchain application testing. Created an exclusive library which allows the client to create and perform tests internally
About Our Customer
The client is involved in building and operating a global identity network that operates on an attribute-based, open-source model. Their product spans software, websites, blockchains, and distributed ledgers, aiming to establish a trustworthy and private environment for users to interact with individuals and organizations.
Industry: Technology & Software
Country: United States
Company Size: 11-50 employees
The Challenge
Our client builds and operates an attribute-based, open-source global identity network that encompasses software, websites, blockchains, and distributed ledgers. Their product enables users to interact directly with other individuals and organizations with absolute trust and privacy. Given the complexity of their application, the client required a testing solution capable of meeting their demands, including an end-to-end testing strategy for testing the blockchain application.
The testing scope for blockchain applications can be intricate, involving validation mechanisms and implementation of shift-left approaches for CI/CD, API testing, functional testing, non-functional testing, integration testing, security testing, compliance testing, and performance testing. Sometimes, specialized testing such as peer/node testing and smart contract testing is also necessary.
The Solution
After consulting with LogiGear regarding key testing points, the client provided the LogiGear team with the open-source application source code. Additionally, the client supplied the requirements for test cases and scripts. Using the Python Command Line Interface (CLI), LogiGear designed and executed numerous test cases. Subsequently, the team developed a framework to integrate the client’s DevOps process.
The technical stacks chosen for the project were as follows:
- Installation packages as .deb, .mis, .rpm for Automation Testing
- Ubuntu 16 as the testing environment, utilizing both virtual and physical machines
- Codebase library in Python, a C-callable library using languages such as Java, .NET, and node.js
The LogiGear team focused on the CLI, which was designed to interact with the distributed identity ledger. A callable library tested both the library itself and the interaction of the wrappers. A Python codebase was also utilized for developing the CLI application.
The Result
LogiGear successfully conducted end-to-end blockchain application testing for the client, enabling them to carry out the testing process in-house. An extensive library was exclusively developed for the client, empowering their in-house team to create new test suites with a significant degree of reusability. This efficiency enabled them to meet their release cycle more effectively.