Revolutionizing Cancer Care: How a Life Sciences Company Boosted Productivity with a Custom Automation Testing Framework

Posted on : 21 Jul, 10:00 AM

Automation Testing Framework Solution

One of our clients is revolutionizing cancer management with treatment diagnostics software. Such software will allow doctors and researchers to understand what types of cancer treatments will be most effective before administering treatment. 

We were excited to begin work on this project because who doesn't want to be part of a cancer-fighting solution?


Test Automation Framework System


Proudly partnered since 2019, we built a custom automation testing framework for this treatment diagnostics software, enabling our client to focus on the reliability of their product.

 

This automation testing framework also paves the way for higher productivity, allowing them to tackle more challenges in the cancer-fighting arena and provide better information for patients and their families to make the most informed treatment decisions.


Overcoming Challenges: Enhancing Cancer Care with an Automation Testing Framework 

Improving cancer management is no easy task. There are a lot of variables and data to take into consideration. The application you build to process all of the data and help with informed decision-making is complex, with a ton of scenarios.

 

How can you develop a solution for API integration testing systems with distinct test cases? The solution should be easily maintainable by non-programmers or individuals with limited programming experience, and it should be scalable to accommodate new test cases. 

 

Additionally, the solution should avoid manual labor and be capable of automation in the long run.


Providing a Solution Through Our Cutting-Edge Automation Test Plan

We thoroughly analyzed our customer's requirements, feedback, and scenarios in addition to test automation framework tools. With no ideal solution on the market, our team built a custom, modular API testing framework to fit this life sciences company's needs to a tee.

 

This solution combined the best features of ready-made test automation frameworks from around the web into one easy-to-use and maintainable answer. The framework also allowed the customer to increase the number and variety of test cases performed.


Automation Test Plan


Did we mention it was a custom framework? The customer had full control over the functionality of the framework and could ensure the framework checked all of their boxes. It executes basic REST operations and performs validations on the status code, message, headers, and body of the response.


A Closer Look into Our Test Automation Framework Solutions

 

How it Works

Test scenarios are written in straightforward, human-readable YAML files. The custom automation testing framework executes the YAML files and analyzes the test scenarios. Because YAML files use plain text, minimal development effort is needed to execute the API integration testing. The YAML files also make the framework extendable and allow it to complete more sophisticated, business-driven test scenarios.

 

After executing the framework, two files are generated. One is an HTML report that includes the number of passed and failed test cases and the comparison of expected vs. actual results achieved. The second is a log file that can be used for further debugging or logging.


API Integration Testing


API Automation Testing Tools

YAML vs. BDD Files

While YAML files and BDD are written in English-like, easy-to-read sentences, YAML files allow you to customize test scenarios without having to write any code. YAML files can also be considered more efficient. 


You only need to create one for every test scenario using a YAML file. With BDD, you must create a feature file and a specs file to translate the English-like sentences into coding standards.


In addition, new APIs can be added on and run by creating a new YAML file or extending an existing YAML file—still, no coding is required. With BDD, a code must be written for each new API to get the code to the required test cases.


Harnessing the Test Automation Framework ‘s Advanced Features

The test automation framework supports multiple features. For example, the before-each and after-each features are used to run a method before and after each test case.


This saves engineers the hassle of having to write the API every time. It also supports parameterization. The parameterization allows you to extract data from a different configuration file and helps centralize the data in one place rather than being static.


A second feature of the automation testing framework is that it supports data-driven testing. The same scenario can be run on multiple test data by configuring numerous test data sets.


A list of variables can be added, and the framework will run it as many times as the number of variables on the list. Write it once, and run it as much as you want.


In addition, the functions that are in the main class of the framework are accessible, which enables developers and engineers to extend the test automation framework without writing any code. The API framework can be developed through API tasks to create a scenario integrated with multiple systems.

With this framework, modifications can be easily made in no time. Just apply changes to the targeted test case and re-execute the desired scenarios and test cases with no code modifications needed.


But don't worry; the framework allows for coding, too. Developers can write their own JavaScript code into the YAML file. The framework will digest the JavaScript in the YAML file and execute it. This methodology allows developers to extend the testing scope and add functionality without modifying the source code.


Test Automation Framework Features


We wanted to guarantee the best framework we could provide and ensure this cancer-fighting company had the tool it needed for as long as possible. Keeping versatility and longevity in mind, here were some other essential factors behind the test automation framework we built:

 

Ease of Use

This automation testing framework requires no additional coding because it uses English-like syntax, and you only need to remember one command to execute any or all test cases.

Reusability

This test automation framework can be used for multiple projects. If you need to execute an API, send the URL and validation you need to apply.

Scalability

New APIs can be tested by creating a new YAML file. This makes adding test cases a piece of cake.

Maintainability

Little to no coding is required to upkeep the automation testing framework. Changes and modifications in the API are applied within the API file. Test data is easily changeable. And test cases do not need to be rewritten to be retested.


Our Custom Test Automation Framework Technology Stack 

We built this test automation framework using NodeJS and JavaScript because it allows the framework to run in any test environment. Since JavaScript doesn't have any dictionaries, we developed our own, which we used to introduce headers into the framework.

 

Reports in this framework were customized and built from scratch. This gave us complete control to add, remove, or customize the information. The reports also helped debug and trace why code failed or was not producing the expected result.

 

The code was written in TypeScript but compiled to JavaScript in the runtime. Because TypeScript is more structured than NodeJS, one advantage of incorporating it is that it decreases the chance of developers breaking the core code.

 

Running TypeScript over NodeJS meant we could build a cross-platform framework since NodeJS can run on any system. Lastly, we also used InversifyJS, a lightweight inversion of control (IoC) container that can be used with TypeScript and JavaScript systems.

23 # of APIs supported

331 # of test cases built

460 # of total test cases

460 # of passed test cases

100 # of hours to build core framework

60 # of hours for framework customization


Final Outcome

Our team of one architect and one of our senior-most quality engineers spent about one month building a custom test automation framework that covered 23 APIs and 460 test cases. Our customer was able to boost their productivity, saving as much as 90% of their time with the automation testing framework we built for them.

 

This allowed them to contribute more in less time and focus on expanding their work in cancer management. Let's pay attention to the fact that this was a joint effort. 

The precise requirements provided by the customer allowed us to put our best foot forward and provide a unique but well-fitting solution for this company. 

 

We appreciate their support and look forward to creating a bigger impact in phase two of this project. Stay tuned for more!

Thanks for subscribing!

Revolutionizing Cancer Care: How a Life Sciences Company Boosted Productivity with a Custom Automation Testing Framework

Posted on : 21 Jul, 10:00 AM

Automation Testing Framework Solution

One of our clients is revolutionizing cancer management with treatment diagnostics software. Such software will allow doctors and researchers to understand what types of cancer treatments will be most effective before administering treatment. 

We were excited to begin work on this project because who doesn't want to be part of a cancer-fighting solution?


Test Automation Framework System


Proudly partnered since 2019, we built a custom automation testing framework for this treatment diagnostics software, enabling our client to focus on the reliability of their product.

 

This automation testing framework also paves the way for higher productivity, allowing them to tackle more challenges in the cancer-fighting arena and provide better information for patients and their families to make the most informed treatment decisions.


Overcoming Challenges: Enhancing Cancer Care with an Automation Testing Framework 

Improving cancer management is no easy task. There are a lot of variables and data to take into consideration. The application you build to process all of the data and help with informed decision-making is complex, with a ton of scenarios.

 

How can you develop a solution for API integration testing systems with distinct test cases? The solution should be easily maintainable by non-programmers or individuals with limited programming experience, and it should be scalable to accommodate new test cases. 

 

Additionally, the solution should avoid manual labor and be capable of automation in the long run.


Providing a Solution Through Our Cutting-Edge Automation Test Plan

We thoroughly analyzed our customer's requirements, feedback, and scenarios in addition to test automation framework tools. With no ideal solution on the market, our team built a custom, modular API testing framework to fit this life sciences company's needs to a tee.

 

This solution combined the best features of ready-made test automation frameworks from around the web into one easy-to-use and maintainable answer. The framework also allowed the customer to increase the number and variety of test cases performed.


Automation Test Plan


Did we mention it was a custom framework? The customer had full control over the functionality of the framework and could ensure the framework checked all of their boxes. It executes basic REST operations and performs validations on the status code, message, headers, and body of the response.


A Closer Look into Our Test Automation Framework Solutions

 

How it Works

Test scenarios are written in straightforward, human-readable YAML files. The custom automation testing framework executes the YAML files and analyzes the test scenarios. Because YAML files use plain text, minimal development effort is needed to execute the API integration testing. The YAML files also make the framework extendable and allow it to complete more sophisticated, business-driven test scenarios.

 

After executing the framework, two files are generated. One is an HTML report that includes the number of passed and failed test cases and the comparison of expected vs. actual results achieved. The second is a log file that can be used for further debugging or logging.


API Integration Testing


API Automation Testing Tools

YAML vs. BDD Files

While YAML files and BDD are written in English-like, easy-to-read sentences, YAML files allow you to customize test scenarios without having to write any code. YAML files can also be considered more efficient. 


You only need to create one for every test scenario using a YAML file. With BDD, you must create a feature file and a specs file to translate the English-like sentences into coding standards.


In addition, new APIs can be added on and run by creating a new YAML file or extending an existing YAML file—still, no coding is required. With BDD, a code must be written for each new API to get the code to the required test cases.


Harnessing the Test Automation Framework ‘s Advanced Features

The test automation framework supports multiple features. For example, the before-each and after-each features are used to run a method before and after each test case.


This saves engineers the hassle of having to write the API every time. It also supports parameterization. The parameterization allows you to extract data from a different configuration file and helps centralize the data in one place rather than being static.


A second feature of the automation testing framework is that it supports data-driven testing. The same scenario can be run on multiple test data by configuring numerous test data sets.


A list of variables can be added, and the framework will run it as many times as the number of variables on the list. Write it once, and run it as much as you want.


In addition, the functions that are in the main class of the framework are accessible, which enables developers and engineers to extend the test automation framework without writing any code. The API framework can be developed through API tasks to create a scenario integrated with multiple systems.

With this framework, modifications can be easily made in no time. Just apply changes to the targeted test case and re-execute the desired scenarios and test cases with no code modifications needed.


But don't worry; the framework allows for coding, too. Developers can write their own JavaScript code into the YAML file. The framework will digest the JavaScript in the YAML file and execute it. This methodology allows developers to extend the testing scope and add functionality without modifying the source code.


Test Automation Framework Features


We wanted to guarantee the best framework we could provide and ensure this cancer-fighting company had the tool it needed for as long as possible. Keeping versatility and longevity in mind, here were some other essential factors behind the test automation framework we built:

 

Ease of Use

This automation testing framework requires no additional coding because it uses English-like syntax, and you only need to remember one command to execute any or all test cases.

Reusability

This test automation framework can be used for multiple projects. If you need to execute an API, send the URL and validation you need to apply.

Scalability

New APIs can be tested by creating a new YAML file. This makes adding test cases a piece of cake.

Maintainability

Little to no coding is required to upkeep the automation testing framework. Changes and modifications in the API are applied within the API file. Test data is easily changeable. And test cases do not need to be rewritten to be retested.


Our Custom Test Automation Framework Technology Stack 

We built this test automation framework using NodeJS and JavaScript because it allows the framework to run in any test environment. Since JavaScript doesn't have any dictionaries, we developed our own, which we used to introduce headers into the framework.

 

Reports in this framework were customized and built from scratch. This gave us complete control to add, remove, or customize the information. The reports also helped debug and trace why code failed or was not producing the expected result.

 

The code was written in TypeScript but compiled to JavaScript in the runtime. Because TypeScript is more structured than NodeJS, one advantage of incorporating it is that it decreases the chance of developers breaking the core code.

 

Running TypeScript over NodeJS meant we could build a cross-platform framework since NodeJS can run on any system. Lastly, we also used InversifyJS, a lightweight inversion of control (IoC) container that can be used with TypeScript and JavaScript systems.

23 # of APIs supported

331 # of test cases built

460 # of total test cases

460 # of passed test cases

100 # of hours to build core framework

60 # of hours for framework customization


Final Outcome

Our team of one architect and one of our senior-most quality engineers spent about one month building a custom test automation framework that covered 23 APIs and 460 test cases. Our customer was able to boost their productivity, saving as much as 90% of their time with the automation testing framework we built for them.

 

This allowed them to contribute more in less time and focus on expanding their work in cancer management. Let's pay attention to the fact that this was a joint effort. 

The precise requirements provided by the customer allowed us to put our best foot forward and provide a unique but well-fitting solution for this company. 

 

We appreciate their support and look forward to creating a bigger impact in phase two of this project. Stay tuned for more!

Thanks for subscribing!

footer-img

Integrant’s Vision is to transform the software development lifecycle through predictable results.

Subscribe

To get our newsletter & stay updated

© 2023 Integrant, Inc. All Rights Reserved | Privacy