The role that testers play in agile teams

Source: Internet
Author: User

For the development model, most Internet companies have now completed the transition from the traditional waterfall development model to the Agile development model, and this transformation is more challenging than the traditional testers, both in terms of role positioning and skill stack, so how should testers respond? The following according to my usual work of some summary experience to say that testers should be the direction of force, for your reference:

Role 1: Training staff

At the beginning of the transition, testers should be trained and guided by the weaknesses of the developer, the business skills. Due to the differences in work tasks, the developer is well aware of the responsible module business and the specific implementation details, but the peripheral modules or the business is not very clear, mainly in the configuration and use. This part is precisely the experience of the tester, this time requires the test staff to carry out as much as possible training and sharing work, so that the team as quickly as possible to make up for the shortcomings, in the development of the user story in the process of the business has a better control. The training is carried out in several steps as follows:

    1. Collect team feedback, identify business weaknesses, List topic
    2. Training and sharing for different topic phases (sprint)
    3. Keep training materials for future inquiries (documents, videos, etc.)
Role 2: Test planner

For test planners, I think the main function is to plan how efficiently (time, resources, quality) to advance the development of user story testing. This is really not easy to do and needs to be considered in two ways:

    • Balance test and development effort

In an agile team with a disproportionate number of testers and developers (mostly developers, at least now I haven't seen a test more than a team ^_^), it's not possible for testers to match the speed of development when it comes to workloads, and there are a few steps that developers need to give some help with:

      1. Testers create test policies for user stories (test cases, environment configurations, etc.)
      2. Related personnel review (including testing, PO, developer responsible for user stories, and another developer who will be responsible for testing)
      3. Reviewers agree on test strategy
      4. User story developers write code to perform integration testing following test policies
      5. After code checkin, the developer responsible for the test executes the final test according to the test policy
      6. Simple functional Verification (exploratory testing) if necessary for testing personnel

The steps are relatively simple, but the operation is not easy, first of all, the tester should be a simple test theory training, including some test methods, test ideas, etc. (it is impossible to rely on the training has a great upgrade, need to accumulate in the test slowly), and then is the developer is willing to do testing work, I think this is also a big problem in the transformation, but fortunately, our team's development is very nice, some students will take the initiative to do some testing work, which is beyond my expectation. Here I would like to say that developers do some testing in fact there are many advantages, mainly embodied in the Code quality awareness, business understanding and personal skills stack upgrade. Of course, there are some small partners do not want to do the task of testing, there is no way, anyway, will do the development of testing generally become handsome ~

So the question is, does the tester always have to be responsible for creating test strategies for user stories? Of course not, when developers have a better understanding of the test, they can try to get the development to create a test strategy, the tester is responsible for the review, and when the testers do not make too many changes, the tester can be unemployed.

    • Conduct pairing tests as much as possible

A pair test is a combination of two team members testing the same feature. There are two purposes for this:

    1. Test functionality from multiple perspectives as much as possible
    2. Training Guide (mainly for some test theories and skills of developers)
    • The right time to conduct exploratory testing

This stage is a relatively advanced test method, mainly after the developer has a certain test methods and ideas to carry out. The time to perform exploratory testing is to organize multiple developers and testers to discover as many potential problems as possible, after each important function has been completed.

Role 3: Product Manager

The product manager here does not say that the tester should be the product manager, but rather to analyze the user's pain point from the perspective of a tester or customer, and to make a corresponding user story. This point testers have the advantage, after all, each tester is a product of senior users.

Role 4: Tool developer

In order to improve the testing efficiency, tool development is very important. A tool is not necessarily a large system, it can be a SQL script, batch file, or a simple executable file, as long as you can improve the test efficiency can be tried to do.

Role 5: Automation engineer

Automated testing is an important part of the testing process, which can save manpower, time and greatly improve the efficiency of testing. The main point here is end-to-end automated testing, as the Automation scripts for unit and integration testing are written by the appropriate developer. The general work to be done at this time is:

    1. Evaluate the appropriate testing framework and tools for the project to identify
    2. and development discussion to build a test framework
    3. In the iteration, add the appropriate script for the corresponding user story use case
    4. Regular execution
Role 6: Full stack Engineer

This is not much to say, because the distance is far ...

Finally share a sentence fat to listen to Wang Xing said the American entrepreneurial circle of a sentence of English: keep growing, fuck everything else. Just the sauce ~

The role that testers play in agile teams

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.