Marek Langhans3 min

Shift-left or Shift-right Testing? It Depends on your Project Needs

QAEngineeringNov 16, 2017

QAEngineering

/

Nov 16, 2017


Share this article

One of the key questions testers must tackle is when in a project’s lifecycle is the right time to start testing. Many teams still generally consider testing the last step of the process before a product is released. However, an increasing number of teams are moving toward a shift-left testing strategy, which stipulates that testing processes be implemented from the onset of project development.

Shift-left testing allows teams to identify issues early in the development cycle and is growing in popularity. At STRV, we firmly believe that testing is a continuous process, starting from day one of development and continuing well after a project goes live. Something to keep in mind is that testing doesn’t have to be done only by testers. At some point in a project cycle, testing can (and should) be done by designers, engineers, project/product managers and anyone else with a key stake in the project. Ideally, at some point during development, potential and/or real users should also get a chance to test drive the product and give their input.

When a client comes to us with an idea they would like to develop, we thoroughly vet it, conducting extensive market research and a competitive analysis. Once the idea is deemed feasible, design drafts are put together and tested with real users who provide valuable feedback on the app’s UI, functionality, and usefulness, among other things.

During the concept stage, our engineers focus on how something can be done, while testers focus on risks and how desired functionalities can be validated and tested. Once the project moves into the active development, engineers write required unit tests and begin coding. Testers, meanwhile, analyze every bit of information associated with the project, build their tests and exploratory charters so they are ready once a testable portion is done. Automation and integration testing should involve both testers and engineers, as they require both technical and risk-awareness mindsets.

The client should also be an active member of the development process. They need to provide accurate information and enough detailed direction to help make sure their app meets the needs of its user base. Before an initial release, we like to get the client involved with user acceptance testing.

In the long-run, shift-left testing will save clients a lot of time and money. When testing starts early, errors that are usually not identified until the last phases of a project’s lifecycle (and thus are more expensive to fix than if they were caught in, say, the early design phase) can be avoided. The shift-left approach can help reduce errors found during production and allow for continuous delivery. It is important to always be on the lookout for ways your team can improve in order to maintain quality.

Keep in mind that testing doesn’t end with a product release. You just shift gears, or rather “shift-right.” The theory behind shift-right testing is that it is important to continue testing well after the release of a product. Some information cannot be obtained easily during development phases. Data pulled from real users after a product’s release will help you strengthen your target audience’s overall experience.

At STRV, we decide which testing approach to use based on a project’s needs. Shifting right, left and in-between will help you to accumulate a lot of complex and in-depth data about your product that’s worth considering when making important project decisions.

In the end, quality assurance really is a team effort and not just the sole responsibility of the testing department. This means holding every member of a project, from the engineers to the stakeholders and managers, accountable for the quality of a product or service.

P.S.: We are hiring Software Tester! More info here

Share this article