How to perform POC in Testing?
By Ganesh Hegde, Community Contributor - February 9, 2023
Many automation testing tools are available in the market – some are licensed, and some are open-source. But, when it comes to choosing the appropriate automation framework, many organizations struggle. Many Test Architects or QA engineers in the organization don’t invest time in analyzing the automation framework. Some go by trending tools in the market, and some go by their skill set, but this way of opting automation framework is risky.
Let’s consider the scenario, you have chosen one of the trending frameworks in the market, and you started automation; after writing hundreds of test cases, you realize that the automation framework is not yielding correct results and some of the limitations of your current automation framework has become a significant blocker for you, but it is critical for your organization. At this point, you need to think again about switching to another framework.
Migrating your tests to another framework time consuming and takes more effort. What if you have invested more time in analyzing the proper framework for your organization? These scenarios wouldn’t have existed. So it is always important to analyze and clarify before choosing any framework. This guide explains how to analyze and choose the best framework that will work for you.
What is Proof of Concept (POC) in Testing?
The best way to choose the right framework is to perform POC for the test automation tool.
A Proof Of Concept, often abbreviated as POC, is a decision-making process to prove that your proposed test automation tool works in the real world and is suitable for your organization. Proof of concept for the Test automation tool is needed when the organization or the team wants to adopt a new automation tool. New Automation tools are usually needed when you want to switch from one tool to another(migration) or an organization wants to switch from manual testing to automation testing.
Why do we need the POC in Testing?
- Proof of Concept (POC) helps to make the right decision and provides a detailed analysis of why the tool is the best fit or why you should not use it.
- The POC is conducted to make the right decision which helps in the future, so the results of POC can be either positive or negative.
- This means that after conducting POC, you may feel that this tool is the best fit or the tool doesn’t fit.
How to Perform POC for test Automation Tool?
To start POC for the test automation tool, you must consider the requirements and scope. It would be best to analyze why you need an automation tool, use cases, etc.
To do this, you must first define the scope, discuss the requirements, identify the tools that closely match your requirements, and then do a POC in testing.
Define the scope
Discuss with the product team about use cases. List down the more critical features of the product.
Discuss the Automation framework requirements
Discuss with stakeholders or higher-level management what they are looking for in the automation framework. Below are some basic examples of requirements (the tool requirement varies from organization to organization)
- Licensed or Open source
- Preferred programming language
- Supported features etc.
Get the List of all the tools
Once you get the automation tool requirement, start looking for tools that match your requirement.
Shortlist the tools
You cannot do POC for all the tools you have listed, so you need to shortlist some from the set of tools you got. Go through the online resources and analyze the tools—Shortlist the top and best tools among them.
When you shortlist, prepare a document answering the questions such as why you have shortlisted these tools, why other tools may not fit into shortlisting, etc.
Propose the POC Tool
You have the shortlisted tools; now you need to propose why you want to perform POC on this and how long this POC may take. Prepare a detailed document and share it with the management/stakeholder.
Perform POC for Automation Tools
Once you have got a ’go ahead’ from management or stakeholders, start your POC.
Factors to consider while performing Automation Tool POC:
- Prepare a set of test cases (minimum 10)
- Test cases complexities should be medium to high
- Test cases should also include critical features of your application
- Test cases should combine edge-case scenarios, negative scenarios, complicated scenarios, etc.
Once you have listed all the required test cases for POC in testing, start building your basic framework. Below are some examples of framework functionalities (this varies from organization to organization.)
- Testc ase reprint
- Basic CI/CD Integration
- Basic Page Object Pattern (if required)
- BDD Integration
- Types of Testing Support Mobile, Desktop, API, etc.
- Cloud-based testing support
Execute the Sample test cases and carefully note down the analysis.
Prepare a detailed POC (Analysis Report)
Document the entire process that was followed – right from identifying the scope to the reason why you shortlisted a particular tool. The documentation should be clear and concise. Some essential points you should mention are:
- What are the features that you considered and why?
- What are the test cases that you considered and why?
- What framework-level features were implemented, and how can you enhance them
- What are the limitations? And what is the workaround for those limitations?
- What is the learning effort involved?
- What is the maintenance effort in the future?
- How easy is it to migrate in case required?
Based on the POC you have done, the organization has to conclude.
There are two scenarios here
- The organization made you as sole decision-making person
- Organization asked for your opinion. However, you are not the sole decision-making person.
Irrespective of whatever POC tool you choose, cross browser testing, and cross platform testing are important aspects that any organization should consider. Some scenarios might work well on one browser but falter on another. Setting up and managing a cross-browser/platform environment is time-consuming and costly.
Most organizations choose cloud-based testing providers to overcome this issue. BrowserStack allows you to perform manual and automated tests using different frameworks and languages. You can seamlessly run Selenium, Cypress, Playwright, Puppeteer, Appium, Espresso, and XCUITest on 3000+ devices and browsers.