Agile + DevOps Virtual 2020 - Agile and Continuous Testing
Wednesday, June 10
Testing like a Scientist
Testing should be fun, but it needs to be rigorous with clear results. When someone asks about the tests you ran, don’t worry about if they passed; just worry that you can back up your answers. To this end, consider using the scientific method to drive your testing strategy and plan. The stages of the scientific method align well with activities that testers should be performing: All testers should (and maybe even unwittingly do) follow this basic outline to create, execute, and evaluate their testing. Join Max Saperstone as he walks through these stages, expanding on each one, talking a...
Fixing Your Automation Challenges in the Era of Continuous Delivery
Continuous delivery is now the holy grail of IT organizations, but most companies are still struggling with the transition into shorter release cycles and faster, more frequent deployments. Some major challenges that companies are facing in that transition lie in test automation. Moshe Milman will cover these challenges in detail and demonstrate how successful companies are addressing them. You'll learn testability hacks and best practices, tips for reducing your testing matrix to support the automation speed required for frequent builds and releases, examples of team structure and...
Agile Testing Basics for Non-Testers
Have you ever asked a tester, “How in the world did you find that bug?” Or maybe you’re being asked to pick up testing activities on your agile cross-functional team—or just wondering what that strange language is the testers are speaking. Agile testing is its own unique skill set, and as quality has become a team responsibility, more and more the agile testing is being performed by non-testers. Increasingly, developers and others are being asked to test and shift left, but they are rarely given the tools to ensure their testing is up to snuff. This often results in wasted time and effort...
Thursday, June 11
Software Breaks in Mysterious Ways: Stories and Lessons from Netflix
Unexpected regressions, bugs with no apparent reason—they happen, especially if you work in a complex, fast-paced ecosystem with multiple moving parts. Is it possible to avoid failures if you don’t know what can fail? How do you even find out about such failures? The Netflix Growth Engineering team owns the infrastructure for user signup for over 190 different countries. The team supports many device types and payment methods, run A/B experiments, and integrate with dozens of services owned by multiple other teams as well as external partners. There are many opportunities for things to go...
Cucumber, the Misunderstood Fruit
Over the last decade the tool Cucumber has grown in popularity. This growth has gone hand in hand with the adoption of test-driven, behavior-driven, and acceptance test–driven testing techniques. Overall, this is a good thing, but there is a downside. Cucumber is far too often conflated with these techniques. The result is poorly written code that loses practically all the benefit that these techniques provide. Troy Walsh will dive into what TDD, BDD, and ATDD testing techniques are and why they are useful, and then explain how they can be effectively leveraged with and without tools like...
Continuous Performance Testing in the DevOps Pipeline
Performance testing isn’t the first thing organizations think about when moving to DevOps—in fact, it’s often ignored, as traditional approaches don’t jibe well with the fast and nimble world of DevOps. However, performance is still a critical part of the user experience, and poor performance and outages will quickly negate the value of the features you’re delivering. Lee Barnes believes that organizations don’t have to gamble with application performance. He will discuss techniques for implementing continuous performance testing in your pipeline, so you don’t have to roll the dice on your...
Using Security Chaos Engineering to Build Protected, Resilient Systems
The speed and scale of complex system operations within cloud-driven architectures make them extremely difficult for humans to mentally model their behavior. This often results in unpredictable and catastrophic outcomes that become costly when unexpected security incidents occur. There is a need to realign the actual state of operational security measures in order to maintain an acceptable level of confidence that our security actually works when we need it to. As an alternative to simply reacting to failures, the security industry has been overlooking valuable chances to further...