STAREAST 2022 - Half-day Tutorials
Monday, April 25
A Beginner's Guide to AI and Testing
NewAI has been rapidly changing the way we approach software testing. Traditional test automation is time-consuming to create and breaks down easily in the presence of change. Thankfully, AI is helping testing teams create less procedural, more resilient tests that are able to self-heal in the presence of modern, rapidly changing, highly dynamic production systems. This sounds great, but you may be asking yourself: How do I get started? What additional skills do I need to learn? What tools are available for me to start using, right now? Join Dionny Santiago as he breaks down different AI...
Unit Testing: What Every Developer and Tester Should Know
Do you want to take your testing skills to the next level? Are you trying to stay relevant on an agile team where testing is shifting to the left on the project timeline? Do you want to help your organization reap the full benefits of testing earlier? Then join Tariq King to explore the fundamentals of unit testing so you can find bugs as soon as they happen and do more thorough, targeted testing during software development. This introductory session is for everyone—of all programming skill levels. Learn how to apply program-based techniques such as testing by looking, automated unit...
Test Automation: How to Start and Succeed
Many organizations invest a lot of effort in test automation at the system level but then have serious problems as their product matures and changes over time. As a leader, how can you ensure that your new automation efforts will get off to a good start? What can you do to ensure that your automation work provides continuing added value? Chris Loder will explain the critical issues you need to know to get a good start, and he will share his extensive experience in building great automation. He covers the most important management issues you should address for test automation success,...
Test Strategies for a Modern World
With the advent of DevOps, Agile, and ever-increasing complex technologies under test, the classic, the bloated test strategy document has quickly become outdated. Many testers struggle to understand how to convey complex testing tasks concisely. However, there is hope! There is a way to create a concise, actionable, and useful test strategy for Agile, DevOps, and even the dreaded Waterfall! Janna and Adam will leverage real-world test strategies that they have used and will break down the critical components and detail out how to create a test strategy, no matter what development style...
The Annotated Meeting
NewMeetings are expensive. The details and decisions are important. But no one reads the minutes! Are you tired of referring back to a decision in a meeting only to find that everyone remembers it differently? Or no one remembers it at all?! Friend, what you need is an annotated meeting!In an annotated meeting, you take notes—in a specific format—right in front of the attendees via room display and screen-share. By identifying and writing the key information, decisions, and action items in front of your participants, you'll ensure that everyone is on the same page, that everyone agrees to...
Artificial Intelligence and Machine Learning Skills for the Testing World
PreviewSoftware continues to revolutionize the world, impacting nearly every aspect of our work, family, and personal life. Artificial intelligence (AI) and machine learning (ML) are playing key roles in this revolution through improvements in search results, recommendations, forecasts, and other predictions. AI and ML technologies are being used in platforms for digital assistants, home entertainment, medical diagnosis, customer support, and autonomous vehicles. Testing practitioners are recognizing the potential for advances in AI and ML to be leveraged for automated testing—an area that...
Test Design for Fully Automated Build Architecture
Imagine this … as soon as any developed functionality is submitted into the code repository, it is automatically subjected to the appropriate battery of tests and then released straight into production. Setting up the pipeline capable of doing just that is becoming more and more common and something you need to know about. But most organizations hit the same stumbling block—just what IS the appropriate battery of tests? Automated build architectures don't always lend themselves well to the traditional stages of testing. In this hands-on tutorial, Melissa Benua introduces you to key test...
Instill a DevOps Testing Culture in Your Team and Organization
The DevOps movement is here. Companies across many industries are breaking down siloed IT departments and federating them into product development teams. Testing and its practices are at the heart of these changes. Traditionally, IT organizations have been staffed with mostly manual testers and a limited number of automation and performance engineers. To keep pace with development in the new “you build it, you own it” environment, testing teams and individuals must develop new technical skills and even embrace coding to stay relevant and add greater value to the business. DevOps really...
The Tester's (New) Role in Agile Development
Avoiding siloed development is a tricky business. It’s so easy for agile teams to fall into the rut of testers only doing traditional testing activities and programmers strictly doing their time-worn coding activities. But there are actually many places testers can contribute value on a cross-functional team. Rob Sabourin will share a number of examples of how testing skills can be applied to a wide variety of activities in an agile project. For instance, testers are among the most skilled team members in story grooming, elicitation, and exploration. Risk analysis in self-organized agile...
Soft Skills of Automation Workshop
NewAutomation starts long before you open your IDE. Before you write the first line of code or inspect the first element, you need to develop a mindset that leads you to create good automation. You need the Soft Skills of Automation. In this workshop, we will create a framework for ourselves to start thinking about our testing as our framework does. We’ll start by interrogating the manual testing that we do and shaping it to automation. This includes teaching ourselves to look at a page as a computer would and then determining how to step through the elements. Next, we will discuss and create...
Writing Good Gherkin
NewGherkin is famous (perhaps infamous) for its Given-When-Then syntax. Although Gherkin is primarily used as a specification language for Behavior-Driven Development (BDD), it can also be used to define atomic test cases according to the Arrange-Act-Assert pattern. Teams can specify behaviors in Gherkin for better collaboration as well as automate test cases for those specifications using BDD frameworks like Cucumber. Even though Given-When-Then syntax seems easy at first, writing good Gherkin is actually quite challenging. In this workshop, we will learn how to carefully define desired...
Tuesday, April 26
Getting Smart on API Testing & Automation
API testing has become more and more popular as service-oriented architectures have become common. In addition, testing at the API level can be effectively automated to provide maintainable regression tests that work well in a DevOps process. In this tutorial, Jeffery Payne discusses what API testing is all about and how it is effectively done. Techniques and tools are discussed that highlight where in the testing process API testing makes the most sense to perform. Various open source and commercial tools will be demonstrated and the pros and cons of various solutions discussed. Effective...
Automation Framework Essentials
Automation is critical in today’s software delivery lifecycle, and yet many organizations struggle to keep their automation running. How can we mitigate difficulties and get consistent automation runs and results we can trust? The secret is implementing a solid automation framework, but that isn’t as easy as it seems. Chris Loder has built several automation frameworks over his career and has learned what works—and, more importantly, what doesn’t. This tutorial will cover what an automation framework is, the benefits of having one, and the keys to a successful framework, including...
Quality and Testing Measures and Metrics
To be most effective, leaders—including development and testing managers, ScrumMasters, product owners, and IT managers—need metrics to help direct their efforts and make informed recommendations about the software’s release readiness and associated risks. Because one important evaluation activity is to “measure” the quality of the software, the progress and results of both development and testing must be measured. Collecting, analyzing, and using metrics are complicated because developers and testers often are concerned that the metrics will be used against them. Join Mike Sowers as he...
Web Security Testing: The Basics and More
Web applications are often security critical or serve as front-ends for security critical applications, making web testing for vulnerabilities an essential part of software testing. Unfortunately, most software testers have not been taught how to identify web security issues while testing applications. Join Derek Evans as he shares what you need to know to security test web-based applications as part of your overall testing process. Learn about the most common web security vulnerabilities and how they are introduced into web code and exploited by hackers. Explore test techniques for...
Running Risk Assessment Sessions
Risk is a feature of every project. We work to minimize it when we're aware of it and mitigate it regardless. However, we have very few avenues to formally discuss risk with our teammates, which is why we need risk assessment sessions. Jenny will lead the group through the five stages of a well-run risk assessment session, and you will be able to break off into smaller groups to run your mini risk assessment on an example application! You will pick your features: how do we select the features for a risk assessment session? Jenny will suggest several methods, including grouping by pages and...
Integrating Automated Testing into DevOps
In many organizations, agile development processes are driving the pursuit of faster software releases, which has spawned a set of new practices—DevOps. DevOps stresses communications and integration between development and operations, including rapid deployment, continuous integration, and continuous delivery. Because DevOps practices require confidence that changes made to the code base will function as expected, automated testing is essential. Join Jeffery Payne as he discusses the unique challenges associated with integrating automated testing into continuous integration/continuous...
Holistic Performance Testing for Modern Applications
With the advent of frameworks like Angular, React, and Vue, the landscape of application performance has changed significantly in terms of testing and measurement. Gone are the days of measuring response time as a single value based on back-end performance. In modern web and mobile applications, additional layers need to be peeled apart at the front end to truly understand its performance characteristics. Traditional approaches to performance testing are no longer sufficient to provide a delightfully responsive user experience. Join Kaushal Dalvi as he details new developments in the...
Test Estimation in the Face of Uncertainty
Anyone who has ever attempted to estimate software testing effort realizes just how difficult the task can be. The number of factors that can affect the estimate is virtually unlimited. The keys to good estimates are understanding the primary variables, comparing them to known standards, and normalizing the estimates based on their differences. This is easy to say but difficult to accomplish because estimates are frequently required even when we know very little about the project—and what we do know is constantly changing. Throw in a healthy dose of politics and a bit of wishful thinking,...
Web UI Testing with Playwright in Python
NewEverybody gets frustrated when web apps are broken, but testing them thoroughly doesn't need to be a chore. Playwright, a new open-source browser automation tool from Microsoft, makes testing web apps fun! Playwright offers a slew of nifty features like automatic waiting, mobile emulation, and network interception. Plus, with isolated browser contexts, Playwright tests can set up *much* faster than traditional Web UI tests. In this tutorial, we will build a Python test automation project from the ground up. We will automate web search engine tests together step-by-step using Playwright for...