Agile Test Automation

Table of contents

Foreword:

Agile Manifesto

Agile software development vs traditional methods

Agile Cloud Service

Automate what?

Tips for Test Automation

Key information about agile testing and automated testing


Foreword:

Agile test automation is an approach to using automation tools and techniques to support testing activities in an agile development environment. It is designed to improve testing efficiency, speed up feedback cycles, and ensure the quality of software delivery.

Specifically in the case of enterprise agile development (EAD), Gartner writes, "By 2015, 40% of organizations will actively adopt EAD to achieve differentiated product projects and solutions that require strong collaboration and cooperation across processes. "

Agile Manifesto

The Agile Manifesto states the following:

We discover better ways to develop software and help others do it. From this, we can get:

 

Agile software development vs traditional methods

The difference between agile and traditional software development is that agile software development advocates detecting problems in the development process at an early stage, and it focuses on the following:

  • Daily close communication among team members - development, testing, test automation throughout the development process from design to delivery
  • Develop a testing strategy
  • Adopt a new testing strategy
  • applied in small, measurable, concrete modules
  • Handle change gracefully
  • Focus on continuous improvement

Agile testing is based on the 4F principle: "Fail frequently, but fail fast."

Agile test automation is the application of the principles of agile development to automated testing. Therefore, Agile test automation also has some principles:

  • Automated testing is a planned activity - allocating time for test automation.
  • Automated testing starts from the first day of the sprint.
  • Automate all aspects of testing—not just test execution—automate the test lifecycle.
  • Automate black-box and white-box testing.
  • Automated test developers should focus on test automation implementation.
  • Automation test developers should find out which automation tools they use or plan to use.
  • Continuously develop and test automation code simultaneously, at least weekly or in sync with sprint stages.
  • Apply one or more Agile/Extreme Programming techniques such as Test-Driven Development (TDD), Continuous Integration, and automated acceptance testing.
  • Single execution or exploratory experiments are best not automated.
  • Test suites should not run for long periods of time; instead, test suites should be hour-long.
  • Testing is performed on a continuous basis to make the testing process truly effective in an agile environment.
  • Metrics will tell, and tests will only fail for reasons where the defect exists, not for automated reasons.

Properties of automation code/test scripts:

  • maintainability
  • performance
  • correctness
  • portability

Agile Cloud Service

Software development and testing teams can leverage cloud computing to remove barriers to resource acquisition and management, increase agile velocity, and reduce the time to value for business owners and stakeholders.

Cloud computing has five main characteristics:

  1. On-demand self-service configuration
  2. Resilience and Scalability
  3. extensive network access
  4. resource library
  5. Measurable Services

The vast majority of cloud service providers provide support for application programming interfaces (APIs) or command line interfaces (CLIs) to control provisioning, deployment, and management of cloud-based computing environments.

Automate what ? _

Which tests should be automated and why? Lisa Crispin and Janet Gregory do a lot of work on this topic; see their book to learn

Tips for Test Automation

  • Test suites should not run for long periods of time; instead, dedicated one-hour test suites can be used.
  • Execute testing on a continuous basis to make the testing process truly efficient in an agile environment.
  • A one-hour test suite should have less than 5% automation defects, and that should be minimized to almost zero.
  • A one-hour test suite will not have any redundant steps, nor will there be any more than five such suites in our latest test set.
  • Metrics will tell, and tests will only fail for reasons where the defect exists, not for automated reasons.

Key information about agile testing and automated testing

What can people gain by using agile testing?

  • Continuous testing - unit testing, automation, TDD/ATDD, exploratory testing.
  • Voices from developers and testers - what do people want from test automation?
  • Integrate, test earlier, test more often. Use virtualization tools.
  • Agile project management and test management tools, working hand in hand.
  • Encourage the use of ALM tools such as TFS, Jenkins, or VersionOne.

Hope you find this information useful!

  As someone who has been here, I also hope that everyone will avoid some detours

Here I will share with you some necessities of the way forward in automated testing, hoping to help you.

(WEB automated testing, app automated testing, interface automated testing, continuous integration, automated test development, big factory interview questions, resume templates, etc.)

I believe it can make you better progress!

Click on the small card below

Guess you like

Origin blog.csdn.net/Free355/article/details/131659104