STAREAST 2016 - Agile Testing
Sunday, May 1
Real-World Software Testing with Microsoft Visual Studio® (3–Day)
Fundamentals of Agile Certification—ICAgile (2–Day)
Integrating Test with a DevOps Approach (2–Day)
Monday, May 2
The Keys to Agile Testing Maturity
You’ve “gone agile” and have been relatively successful. So, how do you know how well your test team is really doing? And how do you continuously improve your test practices? When things get rocky, how do you handle the challenges without reverting to old habits? The path to high-performance agile testing isn’t easy or quick, and it helps to have a guide. So consider this tutorial your guide to ongoing, improved, and sustained high-performance agile testing. Join Bob Galen and Mary Thorn as they share lessons from their most successful agile testing transitions. Explore actual team case...
Test Automation Strategies for the Agile World
With the adoption of agile practices in many organizations, the test automation landscape has changed. Bob Galen explores current disruptors to traditional automation strategies, and discusses relevant and current adjustments you need to make when developing your automation business case. Open source tools are becoming incredibly viable and beat their commercial equivalents in many ways―not only in cost but also in functionality, creativity, evolutionary speed, and developer acceptance. Agile methods have fundamentally challenged our traditional automation strategies. Now we must keep up...
Better Test Design for Great Test Automation
When we discover—often late in an automation effort—that the automated tests are cumbersome and costly to maintain, we often view this as a technical problem for the automator to solve. However, an often-overlooked cause is the role that testers who designed these tests play in making automation scalable and maintainable. In this interactive tutorial for both testers and automation engineers, Hans Buwalda explores how better test designs will result in much better test automation and can make the difference between automation success and failure. See why successful automated testing is not...
Service Virtualization: Making the Unavailable Available for Testing
Service virtualization—and how it can help testers begin testing earlier—is a hot topic in books and discussions. Now it’s time to demonstrate how service virtualization is more than just a buzzword. Join Carlos Pineda for this interactive session as he shares his experiences and proven practices for using service virtualization technology. Learn how to get started with service virtualization, how service virtualization fits into the overall delivery lifecycle, how to prioritize which services to stub out, and when to begin transitioning from testing with stubs to executing the real...
Tuesday, May 3
Selenium Test Automation: From the Ground Up
Knowledge of Selenium, the industry-standard tool for testing web applications, is a much sought after skill in today’s world of test automation. Many believe it is a “must have” skill for test engineers. If you want to learn Selenium, then this tutorial is a great start. Cheezy Morgan shows you how to build test automation using Selenium. But he doesn’t stop there. He uses his years of experience to show you how to build automation that is clean and easy to maintain. Cheezy introduces other tools that work with Selenium to help manage the data used to drive your tests, work with...
Test Attacks to Break Mobile and Embedded Software
In the tradition of James Whittaker’s book series “How to Break Software,” Jon Hagar applies the testing “attack” concept to the domain of mobile and embedded software systems. First, Jon defines the environments of mobile and embedded software. He then examines the issues of software product failures caused by defects found in these types of software. Next, Jon shares a set of attacks against mobile and embedded software based on common modes of failure that teams can direct against their software. Like different kinds of software design patterns, attacks are test design patterns that...
Testing Cloud Services
Cloud computing is rapidly changing the way systems are developed, tested, and deployed. New system hosting capabilities—software as a service (SaaS), platform as a service (PaaS), infrastructure as a service (IaaS)—are forcing us to review and revise our testing processes. At the same time, cloud computing is affording us opportunities to employ new test tooling solutions, which we call testing as a service (TaaS). In this technical session, Martin Pol and Jeroen...
Wednesday, May 4
Open Source Test Automation: Riding the Second Wave
After the first wave of open source test automation tools like Fitnesse and Watir, we are now in a stronger, second wave led by Selenium-based frameworks. This powerful swell, fueled by a major shift toward web-based applications on desktops and mobile devices, is changing how corporations tackle software test automation. Add in a desire to replace old-guard, commercial tools in favor of newer technology with lower costs, we may have a perfect storm. However, with different technologies come new challenges....
Acceptance- and Behavior-Driven Development with Cucumber: Three Case Studies
Acceptance test-driven development (ATDD), behavior-driven development (BDD), and Cucumber promise many benefits related to your user story acceptance tests. They promise tighter collaboration between the product owner and the team. They promise the ability for the product owner and other stakeholders to write their own executable acceptance tests. They even promise an increase in the value produced by the efforts of your team as they focus on building the “right”...
Helpful Practices in Agile Testing
“Testing” in an agile environment is much different from classic testing on waterfall projects. Testers must be involved in all aspects of software development. Jeroen Mengerink shows you how professional testers can become key contributors in agile projects. First, he explains how to pair with and help the members of your agile team by identifying the test skills each of them needs to learn for the team to create a better quality product. Because agile development starts with user stories, there is an increased importance of end-to-end testing. Jeroen shows how to use mind mapping to...
How HP Enterprise Implemented DevOps Processes
Within large enterprise organizations, DevOps transformations can be daunting and complex if not implemented with innovation, creativity, and the support of leadership. Implementing DevOps best practices can be a challenge, even for those companies that sell software that addresses this particular discipline. Imagine approaching a team that develops quality assurance tools and challenging them to build a developer-centric team for continuous testing and delivery—but you can't use any of your own tools. Join Clint Sprauve and Eran Bachar to learn how Eran created a dev/test team to...
End-to-End Automated Testing: Lessons from Zombieland
With the proliferation of mobile devices, browsers, and IoT devices, each with its own eccentricities, performing end-to-end automated testing is starting to feel like navigating a zombie apocalypse. You need to fight off the zombies but lack the right tools. You need a set of rules to live by. You wish you had a buddy who would teach you all those rules because alone, you feel like you’re being eaten alive. On the surface, the rules are simple—Limber Up, Don’t Be a...
Budgeting, Estimation, Planning, and #NoEstimates: They All Make Sense for Agile Testing
Many levels of estimation are practiced in agile, including budgeting, high-level estimation, and task planning (detailed estimation). That might seem like an anathema to agile, but it is not. Mike Harris shares a case study that provides an approach that “checks the box” for standard corporate...
Continuous Integration Testing Techniques to Improve Chef Cookbook Quality
Chef, Puppet, and other tools that implement “infrastructure as code” are great for configuration management and automated deployments, but it is difficult to test these infrastructure scripts before putting them into production. Since infrastructure as code is a relatively new technology, methodologies for its testing are not yet standardized. Glen Buckholz shares a way to solve the two major problems with testing Chef scripts—[1] capturing a start state similar to your...
Ensuring Maximum Quality in the Era of IoT and Wearables
Until recently, the Internet of Things (IoT) was just an idea that techies talked about. Unlike innovations in the past, development and testing of the IoT is significantly more elaborate. After introducing the technology of wearables and IoT, Gauri Arondekar delves into the components and architectures that make it work. Focusing on tools and solutions that accelerate the testing processes, Gauri shares the success story of an end-to-end testing strategy for a leading...
Test Management in Agile
Substantial confusion exists about the roles and responsibilities of test management when using an agile software development process. Agile seeks to streamline project management and leadership under the role of a ScrumMaster. But what does this mean for test managers? How do they stay involved in the process? What role do they fill? Is it possible that test managers are no longer needed? Join Jeffery Payne for a collaborative dialog to discuss the pros and cons of a variety of test management models he has seen used by companies who have adopted agile. Learn how to best position yourself...
Test-Driven Everything—with Deliberate Collaboration
You've heard that quality belongs to everybody on an agile team. You've heard that testers and developers should collaborate in order to drive quality higher. You've heard that automated tests help a team continuously validate the quality. Well, it's time to stop just thinking and talking about these things! It's time to make them happen! Watch Ardita Karaj and “Cheezy” Morgan do this in front of your eyes. Watch them build a web application, driven by acceptance and unit...
The Road to DevOps: Data, Environment, and Test Automation
DevOps promotes continuous integration, continuous testing, and continuous deployment. And anything that breaks this continuity is a potential bottleneck. In many organizations, testing becomes that bottleneck for one or all of the following reasons: unstable test environment, lack of good test data, and manual test processes. Tanya Kravtsov explores why treating test automation as a separate entity from development often results in a DevOps failure. She explores how integrating test automation with product...
Thursday, May 5
Use Combinatorial Testing for Mobile Device Fragmentation
A common problem in mobile systems testing is the number of hardware, operational, and software configurations that need to be tested. For example, the so-called Android fragmentation problem might lead a test team to test hundreds of device and software configurations, yielding thousands or even tens-of-thousands...
Cross-Platform Mobile Test Automation Using Appium
Mobile devices are taking over the world and quickly outpacing the use of traditional desktop machines. But how should we test them? Jonah Stiennon has spent the past two years working with a team of open source contributors at Sauce Labs to establish Appium as the industry standard for cross-platform mobile test automation. A Node.js application, Appium uses a superset of the JSON wire protocol, the same protocol on which Selenium is built, to automate both iOS and...
Continuous Integration: A New Way of Life
Continuous integration is the new buzzword in software development because it opens up opportunities well beyond making sure all your team's code compiles cleanly. What if this pipeline could improve everything from the quality of code reviews, to how you monitor your product “in the wild,” and when your automated tests are executed? What if it could provide insight into how well those tests are performing? Melissa Benua explores how to setup a basic integration...
The Selenium Grid: Run Multiple Automated Tests in Parallel
The Selenium Grid unleashes the full power of Selenium to run multiple automated tests in parallel across multiple platforms. Brian Long demonstrates the use of an open-source framework developed at Virginia Tech to get up and running with a Selenium Grid in about an hour. He begins by discussing the Selenium Grid configuration and then progresses to the installation of the framework. Starting with a clean Selenium installation, Brian uses Git to retrieve and install...
Stay Ahead of the Mobile and Web Testing Maturity Curve
Join Danny McKeown, Paychex’s lead test enterprise automation architect, to learn how to climb the testing maturity curve and increase predictability and reuse, all while accelerating repeatable and reliable testing. Learn how Paychex iteratively built a well-defined web and mobile app test automation architecture. By evolving the areas of strategy, environment pre-conditions, continuous integration, and understanding their IT users, Paychex executes a mature program...
Git and GitHub for Testers
GitHub is the repository for the vast majority of today’s open-source software. And that is why many interviewers look at applicants’ public GitHub.com accounts to assess their interests, popularity, helpfulness, and consistency. To collaborate with developers, today’s testers need git and a GitHub account. Unfortunately, esoteric command lines often confuse those new to the tool. Join Wilson Mar as he provides advice on how to be immediately productive. He begins with...
Build a Quality Engineering and Automation Framework
How would you like to be in this position? Development sends the final release candidate for multiple systems with a user base of one million just a day before the production release, and you are expected to sign off on the overall software quality. Rahul Shah is responsible for providing QA sign-off for a dozen applications every week and is accountable for reporting the overall quality of functional, regression, automation, cross-browser, mobile, and performance testing...
Evolve or Die: What Testers Need to Do to Survive and Thrive
With the advent of new technologies, agile methodologies, innovative tools, and a global workforce, the tester’s role is rapidly changing. Those who can adapt to the changing environment get the best jobs and assignments, and others get left behind. As the discipline of testing evolves, test professionals have to make decisions that will determine their success and job satisfaction. Is it better to specialize or be a generalist? Are you a better fit for a small start-up or...