ScienceSoft. Professional Software Development. ScienceSoft. Professional Software Development.
Testing and QA

QA Automation: Setup Plan, Required Skills and Tools

QA Automation - ScienceSoft

ScienceSoft has been providing QA consultancy and software test automation services for 19 years.

The Essence of QA Automation

Quality assurance automation is aimed to increase the speed of software verification and delivery, improve regression testing coverage, and reduce the number of defects in production. QA automation boosts the QA process with automated test data generation and automated execution of tests due to their integration into CI/CD pipelines.

QA Automation Setup Plan

Setting up a QA automation process may vary depending on the specifics and the scale of your software development project, but, usually, a setup plan comprises:

QA automation setup plan

1. Feasibility study

To decide on the feasibility of test automation for your software development project and ensure fast ROI, analyze software’s technical aspects, complexity, stability, and size. It is optimal to automate testing of stable software modules that do not frequently change.

Also, assess test scripts reusability potential and the share of test scripts to be executed across several test environments. The larger the share of test scripts that don’t depend on custom web page elements, require human intervention to verify outputs, or take much effort to be modified and updated, the more likely your test automation initiative will bring fast ROI.

2. QA automation process design

Decide on whether you will run test automation in-house or outsource it. If you opt for in-house test automation, outline the aspects of collaboration within the team and develop test automation KPIs to track the effectiveness of the initiative. Set up such performance indicators as automated test coverage, cost per automated test, test run time, the share of passed and failed tests. If you decide to outsource test automation, you can use a collaboration approach and a KPI system offered by a vendor or draw on a vendor’s help in developing them.

3. Technical and human resources setup or vendor selection

If QA automation is done in-house

Test automation frameworks selection

Selecting an optimal framework, pay attention to:

  • Adequacy of framework functionality to your testing needs, environment, and technology stack.
  • A framework’s learning curve and the skills required to use it.
  • The availability of customer support from a framework vendor.
  • A framework’s reporting capabilities.

Hiring and training staff

Collect a pool of test automation talent adequate to the scale of your project and the complexity of your software. Make sure your team is well-versed in designing scalable test architectures and developing easily maintainable test scripts.

If test automation is outsourced

Vendor selection

  • Pay attention to companies with proven QA expertise supported by a portfolio of relevant projects.
  • Opt for a vendor, which values a long-term partnership and make sure that they are flexible in responding to requirements changes or fluctuations in your project scale and timeline.
  • Ensure that a testing service provider has the required infrastructure to support testing of your product or enterprise software.

4. QA automation launch

Having selected a vendor, agree on the service level objectives, sign a contract, and arrange transfer of knowledge to a vendor’s team. In case of in-house test automation, design the workflows for the collaboration of the vendor’s team with the project team, and integrate test automation engineers accordingly.

Required Human Resources for QA Automation

Test manager

  • Defining the scope of testing.
  • Documenting, implementing, monitoring, and improving testing processes.
  • Building up and managing a team of test engineers.
  • Reviewing test documentation and artifacts.
  • Tracking test results.

Test architect

  • Test automation strategy design.
  • Test architecture design.
  • Test automation frameworks and technologies selection.
  • Liaising with DevOps or operations teams to provide for relevant test infrastructures.

Test automation engineer

  • Designing, developing, and maintaining test scripts.
  • Cooperating with DevOps or operations teams on integrating test scripts into CI/CD pipelines.

Sourcing Models for QA Automation

Management and execution are in-house

You have maximum control over the QA processes. Still, there are risks related to the QA automation process setup and management, e.g., incorrect evaluation of time and effort, incompatibility of selected test automation frameworks with your test environment.

Management is in-house, execution is partially or completely outsourced

You can reduce test automation setup costs due to a vendor’s already established processes. However, there are risks related to test automation process management, e.g., integration of test automation into other project processes.

Management and execution are completely outsourced

This option offers optimized costs due to experienced QA automation process management and the employment of test automation best practices. The challenge is to select and oversee the vendor and integrate the vendor’s team into the project processes.

Get QA Automation Implemented Fast and Risk-Free!

ScienceSoft sets up test automation pipelines within 4 weeks, allowing companies to spot defects early in the software delivery cycle and enjoy more frequent application releases.

QA Automation Frameworks We Recommend

Selenium WebDriver

Best for: UI web testing

Features

  • Open-source.
  • OS: Windows, Mac, Linux.
  • Web browsers: Chrome, Firefox, Internet Explorer/Edge, Safari, Opera.
  • Programming languages: C#, Java, PHP, Python, Ruby, Scala.

Limitations

  • Does not allow mobile testing.
  • Difficult to integrate with a CI/CD engine.
  • Lacks reporting capabilities.

Pricing

Free

Appium

Best for: mobile app testing

Features

  • Open-source.
  • OS: Windows, Mac, Linux.
  • Web browsers: Chrome, Safari.
  • Programming languages: Java, JavaScript, PHP, Python, Ruby, C#, Perl.
  • Supports UI, API, and database testing.
  • Allows invoking another application from the application under test, e.g., a camera app.
  • Integrates with CI/CS engines, e.g., Jenkins.

Limitations

  • Limited support for testing hybrid applications.
  • Lacks reporting capabilities.

Pricing

Free

Protractor

Best for: UI testing of dynamic content

Features

  • Open-source.
  • OS: Windows, Linux.
  • Web browsers: Chrome, Firefox, Safari, Internet Explorer.
  • Programming languages: JavaScript (Node.js).
  • Integrates with CI/CS engines, e.g., Jenkins.
  • Offers visual reporting and test analytics.

Limitations

  • Provides only for UI testing.

Pricing

Free

For more information on the test automation frameworks worth attention, you are welcome to check out this article by Alexander Viktorov, Test Automation Lead at ScienceSoft.

QA Automation Cost

The cost of test automation varies depending on the project scale and specifics. For example, for an 8-month project with 2-week iterations and 100 new test cases written and executed per one iteration, the cost of setting up and executing test automation with a coverage of 70% will constitute around $20,000, which is 15% lower compared to the cost of performing exclusively manual testing for the same project.

The cost constituents of test automation include:

For an outsourced option

  • The number of automated test cases.
  • The time to develop a test script.
  • Test script maintenance efforts per project.
  • Cost of employed software, e.g., CI/CD engines.
  • Test automation team members’ rates.

For an in-house option

  • The number of test architects and test automation engineers in the test automation team (depends on project duration, test automation coverage, the time to develop test scripts, and test scripts maintenance efforts).
  • Cost of employed software, e.g., CI/CD engines.

Make Sure QA Automation Pays Off!

ScienceSoft is ready to perform cost calculation and ROI analysis for your test automation initiative.

Consider Professional Test Automation Services

With 19 years in test automation, ScienceSoft has developed best practices to set up and implement QA automation quickly and cost-effectively.

QA automation consulting

  • Test automation feasibility study.
  • Test automation process design.
  • Test automation setup plan.
  • Optimal sourcing model selection.
  • Test automation framework selection.

QA automation outsourcing

  • Test automation strategy design.
  • Test case design.
  • Test script development.
  • Test script maintenance.
  • Test environment setup.
  • Automated test data preparation.

ABOUT SCIENCESOFT

ScienceSoft is a global IT consulting and software development company headquartered in McKinney, TX, US. We deliver QA automation services and advise our customers on how to improve software quality and reduce testing time and efforts with QA automation.