May 25, 2023

Agile Testing

Great job on starting a new lesson! After reading this lesson, click Next 👉 button at bottom right to continue to the next lesson.

Agile testing is a software testing practice in which you follow the principles of Agile software development. Agile testing involves all members of a cross-functional Agile team to ensure delivering of the business value to the customer at frequent intervals. Agile testing uses various test types and various techniques such as test-driven development, behavior-driven development, and continuous testing.

Agile Testing Examples

  • A web application team uses test-driven development (TDD) to write automated unit tests before writing the code for each user story. The team runs the tests frequently to test the code quality and functionality. The team also uses behavior-driven development (BDD) to write automated acceptance tests using a natural language syntax (Gherkin) that describes the expected behavior and outcomes of each user story. The team runs the acceptance tests frequently to test the alignment with customer expectations.
  • A mobile app team uses continuous testing to run automated tests on every code change using a continuous integration tool. The team uses a device virtualization tool to simulate different mobile devices. The team also uses a cloud-based testing service to run automated tests on real devices in different geographical locations and networks. The team monitors the test results and metrics using a dashboard.
  • A cloud-based application team uses service virtualization to test the application. The team uses a service virtualization tool (Postman) to create and use virtual services that simulate the behavior and data of real web services. The team also uses a performance testing tool (JMeter) to test the application scalability and reliability under different load conditions.
  • A desktop application team uses exploratory testing to test new features and functionalities without predefined test cases or scripts. The team uses a risk-based approach to prioritize the areas to test based on their complexity and importance. The team also uses a feedback tool to collect customer feedback on their application.

Tips for Agile Testing

  • Use Agile testing best practices such as shortening feedback iteration, testing alongside development, involving all team members, and using lightweight documentation.
  • Use test techniques such as test-driven development, behavior-driven development, continuous testing, exploratory testing, parallel testing, cross-browser testing, regression testing, or performance testing that can help you to increase your testing coverage or your efficiency.
  • Use only relevant testing metrics.

FAQ (interview questions and answers)

  1. What is the purpose of Agile testing?
    Deliver the business value desired by the customer at frequent intervals, working at a sustainable pace.
  2. What are the benefits of Agile testing?
    It helps find out the quality of your software. It enhances the communication and collaboration among testers and other team members. It supports continuous improvement of your software.
  3. What are the challenges of Agile testing?
    The requirements may change at any time, which requires test design updates and testing. The project pace can be fast.  Frequent individual interactions with the team members or working directly with the client and end users or  may be challenging, depending on one's nature.
Remember to just comment if you have any doubts or queries.


No comments:

Post a Comment

Note: Only a member of this blog may post a comment.