06. Getting Testing Done in the Sprint – PBI Implementation Sequence
A challenge in getting testing done in a sprint is the fact that the software (PBI) isn’t ready to be tested till implementation/ coding is done.
How To.
Work on completing each item in the sprint backlog and finish one item after another, see task boards below.
BAD -- Not able to start testing task board, every team member works on a different pbi. Testing can only start at the end of the sprint.

GOOD -- Ready to start testing task board, team members work together on a pbi one after another till it’s done. Testing can start early.

It is a good practice, but not often followed. it really helps getting testing done.
Past Tips:
01. Getting Testing Done in the Sprint - The Team and Activities
02. Getting Testing Done in the Sprint – Regression Test Sets
03. Getting Testing Done in the Sprint – Test Automation
04. Getting Testing Done in the Sprint – Undone Backlog Item
05. Getting Testing Done in the Sprint – No Double, Triple Testing
Next Tips:
07. Getting Testing Done in the Sprint – Risk and Business driven Tests
08. Getting Testing Done in the Sprint – Write Logical Acceptance Tests
09. Getting Testing Done in the Sprint – Test Tasks on the Board
10. Getting Testing Done in the Sprint – Done
11. Getting Testing Done in the Sprint - The Customer Test Team
12. Getting Testing Done in the Sprint – The Test Branch
…
…
05. Getting Testing Done in the Sprint – No Double, Triple Testing
One way of getting testing done in a sprint is making it [testing] as efficient as possible, meanwhile this also saves money. One way of getting more efficient is not doing things double or triple. An interesting thing with testing, we do test double or triple. We test it during unit, during unit integration, during functional and during acceptance testing, this can be done better, we could save a lot of time. I’ve seen teams which also automated all these types of tests, testing the same thing... not really efficient, they didn’t manage to get it done in a sprint.
Each phase of the development process has its own test goals and depth of test coverage. The depth particularly depends upon the risks: higher probability of damage requires better test coverage. These test goals are especially aimed at discovering errors that can be found in that phase (“as early as possible”).
- during unit testing the internal logic of the unit is tested,
- the unit integration test needs to show that units ”understand” each other.
- the system test needs to prove/demonstrate that the system complies with the functional requirements that have been agreed to,
- finally, the acceptance test considers how the system fits into the environment in which it will operate.
Test goals and (depth of) test coverage per phase are made compatible with each other using a Master Test Plan (see TMap® www.tmap.net).

Every test must be able to rely on previous tests, only then will the complexity of errors be contained to errors that were introduced during the last step. Setting up a learning cycle makes it possible to correct shortcomings, if any, in the testing process chain.
Each phase of the development process and its corresponding test goal introduces a specific role with specific abilities and tasks. These roles are supported by specific ways of testing, often visualized in the Agile Test Quadrants.

http://lisacrispin.com/wordpress/2011/11/08/using-the-agile-testing-quadrants/
How the quadrants work
Tests on the left-hand quadrants help the team know what code to write, and know when they are done writing it. Tests on the right hand side help the team learn more about the code they’re written, and this learning often translates into new user stories and tests that feed back to the left-hand quadrants. Business stakeholders define quality criteria for the top two quadrants, while the bottom two quadrants relate more to internal quality and criteria.
from: http://readytohelpfortesting.blogspot.com/2012/01/ttesting-quadrants.html
How To.
All these types should work together, and as already mentioned a Master Test Plan (see TMap® www.tmap.net) can help. What also can help; is getting the team together and discus it [what to test where]. This is even more important when the first tip isn’t in place (01. Getting Testing Done in the Sprint - The Team and Activities) or when there is a Customer Test Team (will be explained in tip: 11. Getting Testing Done in the Sprint - The Customer Test Team).
I like the example: where it is very hard to create unit tests for a specific piece off functionality, like login screens. To create unit test you have to use a mocking framework that mimics the user database or AD. This takes some time implement and maintain, while the functional testers will use the login screen (and test it) every time they run a test. A nice piece of functionality to have a good discussion with the tester where to test and automate this.
An other example is a really world scenario I’ve seen; this is where the developers created some great unit tests for input validation, the functional system testers created test scripts to tests the input validation and the acceptance tester tested the input validations... really a scenario where there wasn’t any communication between the testers and people didn’t trust each other (see 01. Getting Testing Done in the Sprint - The Team and Activities)
More reading: the Test Automation Pyramid http://blog.goneopen.com/2010/08/test-automation-pyramid-review/
Tool Support:
All test types are supported by VS2010.
- The development tester:
This tester knows the inner workings of the system and makes use of test-frameworks to automate the tests that he wants to perform. This testing role, has been supported for a while now by technical aids as unit test frameworks in Visual Studio, and is primarily done by developers. VS2010 eases the life of the development tester by intelligent support of Test Driven Development. - The system tester:
The system tester tests the system for completeness, whether requirements have been met. These are not only functional requirements, but also quality requirements like performance and security (see agile test quadrant).
System testers use a lot of scripts to automate their activities, he/she would like to perform the same tests using various infrastructures and configurations. VS2010 has had Load- and Web testing for quite a while in the Test Edition and with the introduction of VS2010 the creation of test scripts is simplified by introduction of the ‘Coded UI’ framework. - The acceptance tester:
The acceptance tester, also called user tester or black box tester, truly is a tester who performs a test of the application and knows nothing about the internal workings of the application. He/she constructs test cases using functional requirements, using various testing techniques.
Acceptance testers, who often still use Excel sheets to perform their tasks, are abundantly well supported in Visual Studio 2010. Test cases are registered in TFS and he/she has access to Microsoft Test Manager on optimal support of, usually, manual testing activities.
There isn’t any support to see if pieces of functionality are tested twice. But with unit test coverage and data diagnostic adapters for functional testing there are some capabilities in place to extract the information from the system. Maybe time to create a custom data diagnostic adapter, visualize it and compare it with the unit test coverage.
Past Tips:
01. Getting Testing Done in the Sprint - The Team and Activities
02. Getting Testing Done in the Sprint – Regression Test Sets
03. Getting Testing Done in the Sprint – Test Automation
04. Getting Testing Done in the Sprint – Undone Backlog Item
Next Tips:
06. Getting Testing Done in the Sprint – PBI Implementation Sequence
07. Getting Testing Done in the Sprint – Risk and Business driven Tests
08. Getting Testing Done in the Sprint – Write Logical Acceptance Tests
09. Getting Testing Done in the Sprint – Test Tasks on the Board
10. Getting Testing Done in the Sprint – Done
11. Getting Testing Done in the Sprint - The Customer Test Team
12. Getting Testing Done in the Sprint – The Test Branch
…
…
Coded UI Test Automation Practices Deck
Had a great time in Munchen during the Microsoft Visual Studio ALM Days 2011, below the deck I used during my session.
the \final notes slide\ is a scrolling screen… her are the topics
- keep it simple
- DRY
- start automating from the beginning
- developer and test engineer in same room
- don’t automate everything
- know what already have been verified
- run them always
- fail fast fail often
- learn as a team
- tools will help you
- code rules for better testability
- test automation in the same sprint
- start from scratch or tune your manual tests
- make clear test method names
- separate the test intent from the test steps
- no related tests
- all test must leave the application in the same state before the test started
some photo’s of the alm days… I lost the glove on the photo, so if you found it… ping me
(update about the lost glove: Brian Harry found him)
[Dutch] SDN Cloud Edition Special Download
Download de SDN cloud special

Met een bijdrage van mij…


veel leesplezier
MTLM Visual Studio 2010 ALM TRAINING GUIDE and DECKS
Below the training guide and decks I use for Microsoft Test Manager Trainings, feel free to use it.
One note, it is work in progress. I add, change, tune the guide every time I provide a MTM course.
Ping me if you want the editable versions, the project used for the labs, or course given to your organization.
Fall Conference season speaking
DevNetNoord (Groningen, Netherlands)
29 September
Title: Five Visual Studio features that make development testing fun.
[DUTCH] Testen, leuk, dat meen je niet? Ik heb een hekel aan testen. Unit testen, systeem testen, acceptatie testen noem maar op, het staat in de weg van het 'echte' werk. Wij ontwikkelaars hebben geen tijd voor development testing, het is overbodig de code, de implementatie is perfect, maar het moet van mijn project leider. Tijdens deze demo rijke presentatie worden de features (Data Diagnostic Adapters, Test Impact Analyse, Spec Explorer (is een addon), Lab Management en CodedUI ) van Visual Studio besproken die het development testen leuk, interessant, uitdagend en effectief maken. Je krijgt meerdere handvaten om eenvoudig aan te kunnen tonen dat jouw implementatie perfect is.
For more information please visit: http://www.devnetnoord.nl/
Agile .Net 2011 Europe (Ghent, Belgium)
10 and 11 October
Title: Agile practices with Microsoft Visual Studio and Microsoft Test Manager.
Agile teams find it hard to get the testing effort in sync with the other development activities. Not only development tests are executed during sprints as the main testing practices. All kind of testing activities are part of done. Functional, system and acceptance tests are executed during a sprint. Automation is the key, but test cases need to be written upfront. Continuous integration works for code but is it ready for test. Continuous delivery is the goal, how can we reach it.
This session will give guidance how Microsoft Visual Studio and Microsoft Test Manager can support agile teams. How to run sprints, how to use the tools and what are the common pitfalls. Covered topics are:
- backlog items and acceptance criteria
- test tasks on the task board
- branching and test cases
- automated test plans
- test plan organization
- the bug backlog
For more information please visit: http://www.agileminds.be/event/5
WAZUG (Brussels, Belgium)
20 October
Title: ALM 4 Azure
This session will guide you through how professional application development is done for and with the cloud.
Application Lifecycle Management (ALM) is about working together. People, processes and tools all working together to create end-user systems quicker and better. This is valid for all application types: Mobile Devices, Windows Clients and Windows Azure systems. This session highlights how the ALM features in VS2010, TFS2010, Microsoft Test Manager and Windows Azure can contribute to a better combination of processes and tools. We'll optimize the "develop, build, deploy, test" lifecycle for a Windows Azure application.
For more information please visit: http://www.azug.be/
Visual Studio ALM days 2011 (München, Germany)
23 and 24 November
Title: Maintainable CodedUI tests – best practices from the field
CodedUI tests within Visual Studio makes it easy for developers together with tester to create, fully-automated, functional user interface tests. These tests alert the team in an, easy to execute, automated way about regressions. CodedUI tests are easy to create for different UI technologies. But, all kinds of test automation needs an investment. To get a good return on this test automation investment you need to create CodedUI tests in a robust manner which can sustain changes to your application over time.
In this session you will see how maintainable CodedUI tests can be created and how the test infrastructure needs to be configured for efficient execution.
For more information please visit: http://www.teamconf.de/
[Dutch] devNetNoord: Kennisdeling van .NET ontwikkelingen in noord Nederland
Op donderdag 29 september a.s. organiseert devNetNoord haar eerste event. Het event is gericht op developers in Noord Nederland die interesse hebben in .NET ontwikkelen, architecturen, en het laatste nieuws van Microsoft.
Locatie: Gasunie, Concourslaan 17, Groningen.
- 15.30 uur: Ontvangst
- 16.00 uur: Sessie: MVC in de praktijk - Jeroen Swart
- 17.00 uur: Sessie: Vijf Visual Studio features die development testing leuk maken - Clemens Reijnen
- 18.00 uur: Eten
- 19.00 uur: Sessie: Developer nieuws van het Microsoft Build event - Marcel Nieuwpoort
- 20.30 uur: Na borrelen met de sprekers
- 21.00 uur: Einde / afsluiting
Deck: Work Agile with Scrum and Visual Studio 2010
The deck I used yesterday evening during my talk about scrum with VS2010.
large slide deck: technical meeting automated testing with vs2010
Slide deck from a 3 hour presentation (in the north of the Netherlands) covering automated testing with vs2010: test case specification, execution, automation and test infrastructure with VS2010 CodedUI and Lab management.
Windows Azure User Group Meeting TFS2010 for Azure Cloud Development Deck.
Presentation covering ALM TFS2010 MTM for Azure Cloud Development given at the 3e Windows Azure User Group Meeting , 26 may 2011