Home > Training
Agile and Scrum
Agile Testing & Quality Management Training
Agile Testing & Quality Management Training
This course teaches students how to implement a high level of software quality within the context of an agile development approach. Students will learn concepts and approaches useful for agile projects in their development of automated tests, code refactoring, and continuous integration. The course will prepare team members to understand the unique challenges and to employ best practices when addressing the testing aspect of agile development.
You will learn how to create and conduct functional testing within an iterative software development lifecycle.
- Test-driven development
- Incorporation of user stories' acceptance criteria into automated tests
- Utilization of a testing framework
- Software development using continuous integration
- Code refactoring
- How test-driven development impacts design
Testers, test leads, developers, project managers, architects, and systems ana
A basic understanding of Agile and the management of use cases or user stories in the context of an Agile project.
Outline of WA2136 Agile Testing & Quality Management Training
1. Test Driven Development (TDD)
- Origins/explanation of TDD
- Discuss where TDD came from, its usage in the industry, some of the thought leaders that support it.
- Rationale for incorporating TDD
- Covers why TDD should be used, and how it dovetails with an agile approach.
- Testing basics
- Refresher on the differences between white box, grey box, and black box testing and describes how they apply to agile testing.
- Principles of TDD
- Covers an overview of the basic concepts of TDD such as writing tests to fail, refactoring, and test maintenance
- Exercise: Write sample tests.
- Students will perform a practical exercise whereby a simulated application will perform various functions based on provided instructions. Tests will be written for validation.
2. User Story Acceptance Testing
- Understanding User Story Acceptance criteria.
- Discussion and examples of how drive test cases from User Stories and the concept of behavior driven acceptance criteria
- Scenarios and business flow models
- Covers examples and techniques for stringing together logically connected stories into test scenarios
- Where and when to incorporate testing in an agile project
- Describes the delineation between black box and white box testing and how those in the tester and analyst role collaborate with those in the development role to understand acceptance criteria
- Definition of “done”
- Discussion on when enough testing has occurred to establish that a story is “potentially shippable”
- Exercise: Write acceptance criteria and scenarios
- Students will take user stories and build acceptance criteria and assemble scenario-based test cases
3. Continuous Integration (CI)
- CI definition and concepts
- Discuss what continuous integration is and why it is essential to successful agile implementations.
- Test suite framework
- Talks about the need for a black box testing framework in which to run tests. Attributes of a good test framework.
- CI tools
- Overview of CI tools, discussion of how such tools can be coupled with Source Code Management tools to provide a CI solution.
- Code Coverage
- Discussion on the importance of testing all code, to include exception handling and unlikely scenarios
- Coverage reporting.
- Learn how to ensure, through reports that you or your team’s code has test coverage
4. TDD and Unit Testing
- Test First Concepts and techniques.
- Covers examples and methodology for key concepts on building tests that will drive out design and eventually code.
- Testing frameworks
- Demonstration, definition, and discussion of the characteristics of testing framework for use by developers.
- Using the Strategy design pattern
- A brief introduction to the GOF pattern known as Strategy, which can be used to instantiate a testing framework implementation.
- Exercise: Design a simple test framework
- Students will design a simple test framework and based on previous exercises, use those tests to validate the framework.
- Repeat writing and refactoring code to pass tests
- In depth discussion of best practices involving test-first techniques of writing large numbers of tests and then refactoring code to pass them
- Exercise: Write simple tests
- Students will write some simple unit tests to get a flavor for how much testing and test writing would need to occur on a TDD project.
We regularly offer classes in these and other cities. Atlanta, Austin, Baltimore, Calgary, Chicago, Cleveland, Dallas, Denver, Detroit, Houston,
Jacksonville, Miami, Montreal, New York City, Orlando, Ottawa, Philadelphia, Phoenix, Pittsburgh, Seattle, Toronto, Vancouver, Washington DC.