As we all would agree software testing in becoming an increasingly collaborative effort. As a functional tester, one interacts with most entities in the product, business and engineering teams, both representing the end user as well as enabling everyone take ownership for quality. This balancing act is equally important in software performance testing too. As a performance tester, one not only interacts with several groups of people to understand requirements, business and end user expectations, existing baselines, architecture and its implementation but also needs to keep a constant check to ensure there is no role trespass. Taking this role trespass to the next level, sometimes as a performance tester you may even be forced to take things on your plate which should be done by someone else.
To quote specifics there is a lot of collaboration that needs to happen with the business teams for scenario, data, and competitor performance identification. There is a lot of scenario re-use even within the testing teams (between say functional and the performance teams). There is a lot to work with the IT team not just in setup (lately with cloud based application rendering and test setup, IT team involvement is actually coming down) but also in specific test scenarios – for example, any live environment bandwidth tests that could border on network performance testing. While it is good for the tester to get involved in all these areas to get a feel for the overall software performance testing services provided and how they fit into the overall quality strategy, volume testing is already a voluminous task. Knowing the bounds to be able to say no at the right time, not only saves time and effort but also keeps the right focus on tasks entrusted to delivery on a successful performance engineering effort. The tester has to be curious to gather all relevant pieces of information that would help boost application’s overall performance, work closely with everyone, yet know to push back as needed to stay focused on his deliverables.
While these are at people and role levels, bounds are important to be defined at a scope level too, given the vastness and sometimes randomization, a performance testing effort can entail. In short, controlled collaboration with the right mix of independence, with clear understanding on what, when, why and how much to take on, are the need of the hour!