Agile Testing course

Agile testing is a relatively new approach to software testing that follows the principles of  agile software development as outlined in the Agile Manifesto.

A tester on an Agile project will work differently than one working on a traditional project. Testers must understand the values and principles that underpin Agile projects, and how testers are an integral part of a whole-team approach together with developers and business representatives. The Agile Extension will give the tester the knowledge to be part of agile testing teams and achieve high performance.

Agile Tester Extension Business Outcomes

This section lists the Business Outcomes expected of a candidate who has achieved the Foundation Level Extension – Agile Tester certification.

An Agile Tester can…

• Collaborate in a cross-functional Agile team being familiar with principles and basic practices of Agile software development.
• Adapt existing testing experience and knowledge to Agile values and principles.
• Support the Agile team in planning test-related activities.
• Apply relevant methods and techniques for testing in an Agile project.
• Assist the Agile team in test automation activities.
• Assist business stakeholders in defining understandable and testable user stories, scenarios, requirements and acceptance criteria as appropriate.
• Work and share information with other team members using effective communication styles and channels.

In general, a Certified Tester Foundation Level – Agile Tester is expected to have acquired the necessary skills to working effectively within an Agile team and environment.

Agile Tester Extension Learning Objectives

Certified agile testers should be able to demonstrate their skills in the following areas:

• The Fundamentals of Agile Software Development
• The different agile approaches
• The Differences between Testing in Traditional and Agile Approaches
• Testing in Agile Projects
• Roles and skills of a tester in Agile Projects
• Agile testing techniques and methods
• Assess product quality risks within an Agile project
• Estimate testing effort based on iteration content and quality risks
• Tools in Agile Projects

Course Content:

A. Agile Software Development- 3 hours

1.1 The Fundamentals of Agile Software Development

•  Recall the basic concept of Agile software development based on the Agile Manifesto

•  Understand the advantages of the whole-team approach

•  Understand the benefits of early and frequent feedback

1.2 Aspects of Agile Approaches

•  Recall Agile software development approaches

•  Write testable user stories in collaboration with developers and business representatives

•  Understand how retrospectives can be used as a mechanism for process improvement in Agile projects

•  Understand the use and purpose of continuous integration

•  Know the differences between iteration and release planning, and how a tester adds value in each of these activities

B. Fundamental Agile Testing Principles, Practices and processes: 5 hours

2.1 The Differences between Testing in Traditional and Agile Approaches

• Describe the differences between testing activities in Agile projects and non-Agile projects

• Describe how development and testing activities are integrated in Agile projects

• Describe the role of independent testing in Agile projects

2.2 Status of Testing in Agile Projects

• Describe the tools and techniques used to communicate the status of testing in an Agile project, including test progress and product quality

• Describe the process of evolving tests across multiple iterations and explain why test automation is important to manage regression risk in Agile projects

2.3 Role and Skills of a Tester in an Agile Team

• Understand the skills (people, domain, and testing) of a tester in an Agile team

• Understand the role of a tester within an Agile team

C. Agile Testing Methods, Techniques and Tools- 12 hours

3.1 Agile Testing Methods

• Recall the concepts of test-driven development, acceptance test-driven development, and

behavior-driven development

• Recall the concepts of the test pyramid

• Summarize the testing quadrants and their relationships with testing levels and testing types

• For a given Agile project, practice the role of a tester in a Scrum team

3.2 Assessing Quality Risks and Estimating Test Effort

•  Assess quality risks within an Agile project

•  Estimate testing effort based on iteration content and quality risks

3.3 Techniques in Agile Projects

• Interpret relevant information to support testing activities

• Explain to business stakeholders how to define testable acceptance criteria

• Given a user story, write acceptance test-driven development test cases

• For both functional and non-functional behavior, write test cases using black box test design techniques based on given user stories

• Perform exploratory testing to support the testing of an Agile project

3.4 Tools in Agile Projects

•  Recall different tools available to testers according to their purpose and to activities in Agile projects

Comments are closed.