W4 DevOps Wednesday, October 17th, 2018 10:15 AM The Test Expert's Role in DevOps Presented by: Mike Sowers Brought to you by: 350 Corporate Way, Suite 400, Orange Park, FL 32073 8882688770 9042780524 [email protected]http://www.starwest.techwell.com/
42
Embed
TheTest!Expert'sRolein!DevOps! · Fundamental conflict - Dev vs. Ops •Operations •Risk Minimization - Stability, SLAs, Uptime, Response Time •Scripts and procedures to install
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
W4 DevOps Wednesday, October 17th, 2018 10:15 AM
The Test Expert's Role in DevOps
Presented by:
Mike Sowers
Brought to you by:
350 Corporate Way, Suite 400, Orange Park, FL 32073 888-‐-‐-‐268-‐-‐-‐8770 ·∙·∙ 904-‐-‐-‐278-‐-‐-‐0524 -‐ [email protected] -‐ http://www.starwest.techwell.com/
Mike Sowers Coveros' Executive Vice President of Training, Mike Sowers has more than twenty-‐five years of practical experience as a global leader of internationally distributed test teams across multiple industries. Mike is a senior leader, skilled in working with both large and small organizations to improve their software development, testing, and delivery approaches. He has worked with companies -‐ including Fidelity Investments, PepsiCo, FedEx, Southwest Airlines, Wells Fargo, ADP, and Lockheed -‐ to improve development approaches, increase software quality, reduce time to market, and decrease costs. With his passion for helping teams deliver software faster, better, and cheaper, Mike has mentored and coached senior software leaders, small teams, and direct contributors worldwide.
Mike Sowers is Executive VP for Coveros and has more than twenty-five years of practical experience as a global leader of internationally distributed test teams across multiple industries. Mike is a senior leader, skilled in working with both large and small organizations to improve their agile software development, testing, and DevOps delivery approaches.
He has worked with companies—including Fidelity Investments, PepsiCo, FedEx, Southwest Airlines, Wells Fargo, ADP, and Lockheed—to improve development approaches, increase software quality, reduce time to market, and decrease costs. With his passion for helping teams deliver software faster, better, and cheaper, Mike has mentored and coached senior software leaders, project teams, and direct contributors worldwide.
DevOps is a software development method that stresses communication, collaboration and integration between software developers, testers, and operations engineering.
DevOps extends the principles of Agileinto Operations
Like Agile, DevOps can be usedoutside software development toimprove IT operations in general
• Build automation – Automating the compilation, linking, and packaging of software applications
• Continuous integration – Leveraging build automation capabilities to integrate and test software on a regular basis to thwart integration and quality issues earlier in the process
• Check-in builds – Builds performed whenever code is changed. Often includes unit tests and code quality checks.
• Nightly builds – Integration builds performed nightly to assure nothing changed during the day breaks existing functionality. Regression testing included. Platform TBD.
• Continuous delivery – A series of practices to assure code can be rapidly and safely deployed to downstream environments (QA, staging, production, etc.) by delivering every change to downstream environments while ensuring functionality works as expected through automated and manual testing.
• Continuous deployment – A series of practices to assure code can be rapidly and safely deployed to production by delivering every change to a production (or production-like) environment while ensuring functionality works as expected through automated testing.
• While continuously testing and building software is important for a robust final product, it is difficult to continuously release software while creating it.
• Having multiple environments allows for continuous development and low level testing to continue, while having more static versions of the software available for testers.
• Typically, a set of 4 or 5 environments will exist• Development• Dev Integration (CI)• QA• Staging• Production
“When we compared high performers to low performers, we found that high performers are doing significantly less manual work, and so have automated:
• 33 percent more of their configuration management.• 27 percent more of their testing.• 30 percent more of their deployments.• 27 percent more of their change approval processes." State of DevOps 2017
Typical activities1. Checkout code2. Modify code3. Unit test4. Merge code5. Run local tests
- unit- acceptance- security- performance
4. Check in code
Testing Tip: The more production-like our local environments are, the earlier we canbegin testing non-functional requirements like security and performance
Testing Tip: Have the developers integrate their code locally prior to check in and runstory acceptance tests to validate stories as they go. Test with them too.
Testing Tip: All testing during CI must be automated
Testing Tip: If you are able to use cloud-based services, consider parallelizing yourCI process to enable more testing during your CI window (hourly, nightly)
Continuous delivery – A series of practices to assure code can be rapidly and safely deployed to downstream environments (QA,
staging, production, etc.) by delivering every change to downstream environments while ensuring functionality works as expected
through automated & manual testing.
Continuous deployment – A series of practices to assure code can be rapidly and safely deployed to production by delivering every change to a production (or production-like) environment while ensuring functionality works as expected through automated