Personally I feel that all in the team should understand all the stories which are going into the sprint. As soon as one task is finished he/she should take the next task in the backlog rather working on the “pet” or “my” areas. I usually hire developers who are willing to test also. If someone cannot understand the work done by the team even after repeated training then it is the job of HR and other functional managers to weed out such people.
Testers are intelligent people. It doesn’t helps if they are doing monkey testing of application or writing long test cases which even they don’t refer. IMHO they should be the business domain experts. They should provide value to the customers and business with their domain knowledge. Many times I have seen testers asking the developers about the requirements. They limit their testing to the knowledge acquired in such a way. More than just ensuring that the features developed is bug free the team should strive for excellence by providing value added services to the team, company and clients.
Ideal Role of testers in Scrum
Review the product backlog pro-actively.
Help the Product Owner to create better COA’s (Conditions of acceptance)
Provide value added suggestions for feature improvements which can add value to the company & clients.
Write efficient test cases before the actual coding starts
Verify the features at the dev. box itself. I have seen high quality of the deliverable because of this step.
Pair with new team member. Walkthrough of the application features especially the regression areas.
Write automated test suites to prevent manual testing. (This will help in increasing the velocity of the team)
So back to the question: How many testers should be there in scrum team?
I can facilitate a team without even a single tester /QA person. In one of my team the QA people were not available for one full week because of an external training. We had to release a patch to production and unfortunately this legacy application didn’t have an automated test regression suite. So the developers tested the application. The feedback I got after that exercise was great. The developers simply loved testing. The application had many performance issues which they never got in the isolated development box. It was an eye opener to them.
In most of companies we will have a QA division. Ensure that they are part of the same scrum team. They should be co-located at the same place if possible. Ideally QA strength in scrum team should be around 20%-30%.