STARWEST 2016 - Test Techniques
Wednesday, October 5
Testing in the Dark
Isn't it amazing? Stakeholders drop software on our desks and expect us to test it—without any requirements, design, or product knowledge whatsoever. About the only clear thing is the absurd and unrealistic deadline. We are expected to bend over backward, spread magic pixie dust, and heroically test quality into a product we have never heard of before. But testing in the dark is not impossible, and as Rob Sabourin shows, it can even be a very valuable and fun experience. Learn strategies to emerge from a murky fog into clear, meaningful quality insights. Leverage...
Full Stack Testing of Node.js Applications
As the popularity of Node.js grows, so does the complexity and scale of the applications based on it. More than other technologies, this environment has a growing number of valuable open source modules to promote test-driven development and integrated testing. When organizations like PayPal, Walmart, Netflix, and LinkedIn are leveraging Node.js, it’s clear that it is here to stay. With the increasing number of enterprise deployments, the need for a comprehensive full stack testing strategy becomes even more critical. Join experienced Node.js QA architect and...
Design for Testability in Practice
With the drive for continuous integration and delivery, the implications and approaches for designing more testable software are receiving substantial discussion and debate. What does testability really mean in practice? How do you take the idea of testability—how easy it is to test software—and put it into action through the different dimensions of designing and testing a real world product? Nir Szilagyi recognizes that the challenges of difficult-to-test software can transform a testing cycle from a small automation and exploratory effort to a long struggle of...
Thursday, October 6
Making the Move to Behavior-Driven Development
Behavior-driven development (BDD) is a hot topic in the development community. Not only does a properly implemented BDD process help drive increased automation and quicker development cycles, it also facilitates better collaboration between departments and reduces siloed communication. An ideal partner of continuous integration/delivery, BDD can help solve many testing bottlenecks associated with DevOps. For all its benefits, BDD is underadopted. Only 10–25 percent of development organizations have implemented or are experimenting with a BDD process. Organizations...
Agile Strategies for Traditional Software Development Teams
Many development and test teams are still working on more traditional software projects that release every few months or longer, rather than daily or weekly. Benefits of adopting continuous development strategies into a standard software cycle include immediate feedback on code changes, a clear understanding of the current risk-state of the software, and current and historical data to assess progress. Melanie Drake shares specific “modern” strategies that her development team has added and how these strategies enhance software quality. Some tools include...
Nonfunctional Testing: Examine the Other Side of the Coin
Creating a highly available, scalable, and high-performing system requires a substantial amount of what we call nonfunctional testing. Developing nonfunctional testing skills is a must for many of today’s quality engineers (QEs). For the past several years, Balaji Arunachalam’s quality team for Intuit Core Services has experienced several highly available and disaster recovery buildup and testing challenges. Their journey includes the evolution of functional QEs into hybrid QEs who are capable of doing both functional and nonfunctional testing. Nonfunctional...
Smart Combinatorial Testing
In the right hands, combinatorial testing can be a powerful testing strategy to reduce the number of tests. Unfortunately, when used improperly, it can hurt more than it helps. Ingo Philipp explains that there is not one single combinatorial testing technique that guarantees success. Rather, success lies in creating a tight interaction among all of the techniques, since each is intended to serve a different purpose. In nearly every test project, even small test sets are overrun with countless business-related dependencies. The number and nature of these...