Testing in Continuous Delivery: Shift Left

Sauce AI for Test Authoring: Move from aim to execution in minutes.|xBack to ResourcesBlogPosted July 19, 2017

Testing in Continuous Delivery: Shift Left

quote

In today ’ s incessantly changing marketplace, uninterrupted bringing is one of the most democratic technology approaches: most companies arrogate they work according to CD formula, or at least don ’ t say out loud they don ’ t. Popularization of this methodology comes from its main idea: an engineering procedure base on short, repetitive iterations, where every iteration ends with delivering user value and have feedback from it.

Knowing the chief rules of the continuous delivery attack, how do we deal with essay and character assurance in such a fast and repetitive procedure?

Get rid of the paries

Let ’ s consider a simplified technology process based on the following consecutive stage:spec, development, examination and operations. From a quality assurance perspective, the problem is that testing is the last stage before shipping features to the exploiter, which is often too tardy, especially if we ’ re deal with the reiterative nature of a continuous bringing approach. Throwing changes over proverbial wall to another squad is no longer effective, and causes bottlenecks in the whole process due to handover times. We don ’ t want to separate analytics from the growing team during the specification phase. Furthermore, we ’ d want to find bug already in the development phase, not when the implementation is already done. Keep in head likewise that the aim of our calibre efforts is the production surroundings, so we want tester to be able to get end exploiter ’ feedback and deal with production configurations.

The concept that postdate those approaches is ofttimes calledshift left, which means shifting tools and knowledge to the left, to earlier phases in the technology process.

Tester ’ s perspective

How make a shift left approach fit for testers in agile team? Lets consider every form of our simplified development process from a tester ’ s perspective.

Specification

As we ’ ve already said, the whole evolution squad (which testers are part of) should enter in creating story specifications. But how can we assure quality and prevent defects in such an other phase, before implementation? A important deviation between the traditional approach and try in continuous delivery is that examiner are creating a scheme for the whole process, not only executing given scenarios. Part of this is to sketch a testing approach already in the specification form, in form of elementarytesting notes. These don ’ t have to be full blown testing scenario, rather notes about critical quality aspects and things to keep an eye on.

This exercise certainly lets us share testing knowledge through the team, but what ’ s even more important is having the unscathed team focus on quality, which helps to prevent a lot of defects before we yet start development.

Development

Pro tip: Tools like SUSA can handle this autonomously — upload your app and get results without writing a single test script.

Following shift left practice, we don ’ t want to wait with testing for development to be done. Finding bugs in your code should be done in parallel with writing it.

One way to achieve this is to test little pieces of execution. We can divide it into quiz the back end and front end separately (and so whole part together), but we can go yet deeper here, and test isolated parts of hind end codification with other modules be mocked based on contract. This idea of testing smaller clump of code requires close work with the developers and a good savvy of your system backward end architecture.

Another idea is to match testers and developers. Testers much come to pair programming unwillingly - simply like quizzer are more experienced in quiz, developers are usually more experient in writing code. But testers bring to the table a real unique way of appear at execution, which is character and end-user position. This special combination of proficient and domain cognition makes development more defect-proof and user-oriented.

Testing

Let ’ s remind some fundamentals of uninterrupted bringing, which is ontogenesis process based on little and iterative cycles. There ’ s no way to achieve this while having prove phase as a manual process. One of the keys to continuous delivery is automation and testing is no exception - you should receive most of your checks automated. Of course it doesn ’ t mean that you must cover every edge cause of your application with expensive end-to-end tests. Test technologist should feature the best knowledge of which component of application should be continue with, for example, functional Selenium tests, when to use back end integration trial and when unit tests are but hunky-dory. Sounds familiar? Yes - it ’ s a exam pyramid. Our destination is not to maintain the largest figure of tests, but rather to get quick and stable quality feedback.

Does it signify that there ’ s no way for manual tests in continuous delivery? Remember that there ’ s always depart to be some act of tests that are very expensive to automate, and at the same time, very crucial from a occupation perspective. Having most of our tests automated gives us clip to fully concentrate our manual effort on the nearly crucial domain and exploratory proof.

Operations

Operations phase normally means going to product. If our features are on production environs, does it mean it ’ s the end of calibre cycle? Remember that big component of continuous delivery methodology is getting end users ’ feedback.

A aboveboard way of collect this kind of feedback are application logs. We should always make sure that we feature proper business-level logs - they ’ re our way to multiply and line how user interact with our product. Application logs usually arrive in pair with metrics: CPU, disk, latency, etc. Those are another crucial gauges that yield an instant feedback on our application wellness.

An approach that is getting more and more attention lately is test in production. One would ask: isn ’ t it the individual worst practice? But we ’ re not talking here about throwing unseasoned changes to production environments and look until something goes wrong. There are various techniques of product prove, such as canary releases, where we insert new features only to a limited range of product user, who yield us feedback with minimized risk. Remember that this limited range of production users can also imply your single test user - this way you ’ re gaining ability to test your lineament in full isolation on production configuration.

Dev, Test, Ops

Arguably one of the well-nigh hyped terms in the development macrocosm rightfield now is DevOps. The origin of this term come forthwith from the shift left concept, and it means yield tools and operations province to developer in order to trim bottlenecks and handover time.

There are also other really similar terms -TestOps and DevTestOps. With this approach you start quality efforts with other stages of development and extend them also to production environs. When we ’ re considering this sort of approach, the term that draw such practices even better isuninterrupted testing. It ’ s a group of techniques where essay means building and implementing quality assurance strategy throughout unscathed evolution round, not only in single testing phase.

Conclusion

The uninterrupted delivery methodology furnish many new challenges for test engineers. With the iterative ontogeny attack, it ’ s crucial to maintain the quality of the ware in every phase of the cycle. This approach is often called continuous quiz - this means testing from the very first form, cut bottlenecks and handover clip by combining assorted tools and practices. It is too ones consort so far with different roles in the engineering process. Testing in continuous delivery entail building and maintaining a lineament assurance strategy in the whole development rhythm, and in every phase.

Published:
Jul 19, 2017
Share this post
Copy Share Link
LinkedIn
© 2026 Sauce Labs Inc., all rights reserved. SAUCE and SAUCE LABS are registered trademarks owned by Sauce Labs Inc. in the United States, EU, and may be registered in early jurisdictions.
robot
quote

Automate This With SUSA

Upload your APK or URL. SUSA explores like 10 real users — finds bugs, accessibility violations, and security issues. No scripts needed.

Try SUSA Free

Test Your App Autonomously

Upload your APK or URL. SUSA explores like 10 real users — finds bugs, accessibility violations, and security issues. No scripts.

Try SUSA Free