Upgrade to Pro — share decks privately, control downloads, hide ads and more …

DevOpsPorto Meetup8: Is QA dying in the DevOps ...

DevOpsPorto
September 12, 2017

DevOpsPorto Meetup8: Is QA dying in the DevOps world? by Marta Torneiro

Talk delivered by Marta Torneiro

DevOpsPorto

September 12, 2017
Tweet

More Decks by DevOpsPorto

Other Decks in Technology

Transcript

  1. AGENDA • Why move to Continuous Delivery? • Does QA

    fit in CD? ◦ The QA evolution • The way to go: Continuous Testing! • Some Best Practices • The challenges ahead
  2. • Usable pieces of software code can be delivered quickly

    • Get early feedback on features being developed • Deliver value to the customer in a continuous way The Benefits
  3. • Continuous Delivery doesn’t require frequent releases • The objectives:

    ◦ Make testing and development processes more collaborative ◦ Ensure software quality ◦ Help launch the product faster to the market The Reality (1/2)
  4. • The constant need of real-time changes by the customers

    requires: ◦ continuous testing ◦ continuous development ◦ continuous delivery • For Companies to evolve in a sustainable way, Quality has to be at the core of every practice The Reality (2/2)
  5. • More automation • Less human intervention in the release

    process • Speed and efficiency The Needs
  6. But... QAs have to change their mindset and start helping

    people instead of providing them service.
  7. For starters, let’s make some things clear... Testing is just

    an activity in the development process Testing can’t be the responsibility of one single person We can compromise scope but not Quality! More QAs More Quality
  8. • QA in the DevOps world is about preventing defects,

    not finding them! • Have visibility and directive to push code out when it is working, and roll it back when it is not. • Become responsible for continuous improvement and help to assure quality across the development cycle. The QA Evolution (1/2 )
  9. • Help define what should automated • Look for any

    opportunity to improve repeatability and predictability The QA Evolution (2/2)
  10. • It’s cheaper and much faster to guarantee quality continuously

    • It creates a “safety net” that increases dev confidence in making changes and shipping code • There’s a much less prominent risk of releasing features What are the benefits?
  11. • Automate the tests! • Change mentality ◦ Start testing

    from the first line of code and work your way up in the testing pyramid ◦ Continuously integrate, deliver and deploy working software ◦ Get early feedback and keep quality high at all times How should we do that?
  12. • QAs emphasize the customer experience over all else •

    Their goal is to accelerate deployment, rather than hold it back • Releasing new and functional builds at any point through the SDLC can become a disaster if quality is not ensured constantly • Knowing which tests to automate is critical to guarantee quality and bring speed Do organizations really need QAs?
  13. Building a QA strategy with the necessary best practices will

    help in delivering effective software development and operations to achieve user experience.
  14. 1. Developers, QAs and Operations have to work together •

    Share constant feedback on what actually is going on • Communicate on how the code relates back to a requirement or user story • Share feedback on which tests should be automated and which are actually affecting the feature that’s being released
  15. 2. Think about automate first • This doesn’t mean that

    you just get rid of manual testing • You shouldn’t automate everything, but you should take an “automation first” approach
  16. • It’s not possible to test everything ◦ The focus

    should be on covering critical scenarios ◦ Have a solid base of unit and functional tests, and anything automatable • Regression tests have to be built incrementally ◦ When making a bug fix, add a test for that bug • Manual testing should only be used for exploration