breadcumbs
TEST AUTOMATION

Test Automation is a practice where application tests are run automatically and continuously throughout the development process. Test-driven development and the use of unit tests are used to create and maintain acceptance tests that are reproducible and executed with each build.

rest automation
  • Define and execute a consistent and repeatable process.
  • Amplify feedback and improve team communication.
  • Improve overall release deployment quality.
  • Accelerate the delivery of application features to production.

Models

Applications require several techniques and levels of testing to meet quality and user expectations. A typical project will implement a strategy similar to that of the Agile Testing Quadrants model shown here.

The stages of Test Automation are shown in the diagram below. These will vary slightly based upon team structure and organization focus.

chart

 

timeline

Key Metrics

Test Code


Test Code Coverage

identifies the percentage of code in which functionality has been verified.

Defects Reported
Defects Reported Post Release

indicates that requirements may not have a common understanding and/or automated testing is incomplete.

Test Execution

Average Test Execution Suite Time

impacts the available time for builds.

Red Flag Areas

  • Lack of Code Coverage Statistics indicates limited testing being done during development.
  • Lack of Quality Test Data indicates poor test data management, which will produce unexpected application results in production.
 
  • Long-running Test Suite conflicts with the need for fast builds and often results in tests being skipped during builds.
  • Excessive Notifications result in team members ignoring important alerts, particularly for test results that produce false positives for defects.

Key Roles


System Administrator

Responsible for preparing and modeling the test environments and deploying the application into each of them
bunson


Test Engineer

Responsible for defining the release pipelines and maintaining the build infrastructure
image-6


Developer

Responsible for the application development and defect resolution
image


Release Manager

Responsible for defining and communicating the application release plans and reporting on the progress of the deployments

Service Engagements

AEM's assessment-derived solutions are tailored to your needs. We work with you to define the right offerings required to build a solid foundation based on DevOps principles. The time and scope will vary based on your needs, but representative offerings based on previous client engagements are shown below.

Expert Consulting

Mentoring and Implementation Consulting Services

Work collaboratively with AEM experts to mentor and provide expert consulting for automating acceptance testing and security policies.

Accelerators

Test-Driven Development Implementation Pilot

Work through a hands-on guided exercise to implement unit tests using the practice of TDD.

Security and Compliance Automation Pilot

Integrate common security hardening implementation guidelines and build a foundation for deploying and reporting current status.

Workshops

TDD, BDD, and Unit Test Strategies

Learn the basics of Unit, Behavior, and Test-Driven Development approaches and how they are used to improve software quality.

Automating Security & Compliance

Learn tools and practices for implementing and monitoring security and compliance policies.

Why AEM?

Building quality in…

For the Department of Education’s GENERATE project, AEM executes over 1,500 unit and integration tests with each TeamCity build to enhance the quality of each release.

To provide consistent functionality...

AEM worked with ITHAKA to build a Selenium-based test suite for their JSTOR application. Using this automated test suite, they were able to validate and maintain functionality across multiple browser platforms with each application release.