STARWEST 2024 - Testing for Developers
Monday, September 23
Test Smarter, Not Harder: How to Design Test Suites for Continuous Delivery
Imagine: 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 the wild. Setting up the pipeline to do just that has become commonplace, but most organizations hit the same stumbling block: just what IS the appropriate battery of tests? Automated build pipelines don't always lend themselves well to the traditional stages of testing. In this hands-on tutorial, Melissa will introduce testers to the key principles of test case and test suite design that apply to...
Testing on the Right: Lessons in Monitoring and Observability
Observability has exploded onto the software engineering zeitgeist over the last five years, and for a good reason. However, it suffers from being misunderstood and sometimes equated with a closely related subject—monitoring. This confusion is compounded by the fact that some of the existing tools and frameworks just adopted a lot of the observability terminology in just the letter of the word, not the intent. Not having a solid grasp on the basics of observability is becoming unacceptable in the world of effective software quality engineering. Kaushal Dalvi shares his experiences in the...
Tuesday, September 24
Supercharge Your Workflow: To GitHub and Beyond
Whether you are new or experienced with GitHub this class is for you! Supercharging your workflow caters to anyone who wants to enhance their Agile and DevOps process with the capabilities of GitHub. GitHub has long been the premier site for open-source projects and is now turning a pivotal corner into becoming the predominant platform for all aspects of the development lifecycle. Some examples of this include; protecting company code through various GitHub Products or curating marketplace actions and workflows prior to use. This tutorial will look at how to leverage GitHub Actions (CI/CD...
Modern Web Testing with Cypress
The web has evolved. Finally, testing has too. Cypress is a modern testing tool that answers the testing needs of modern web applications. It has been gaining a lot of traction in the last couple of years, gaining worldwide popularity. If you have been waiting to learn Cypress, wait no more! Filip Hric will guide you through the first steps on how to start using Cypress and set up a project on your own. The good news is, learning Cypress is incredibly easy. You’ll write your first test in no time, and then you’ll discover how to write a full end-to-end test for a modern web application.
Wednesday, September 25
Engineering Love Stories or Nightmares: Can QA Be Happily Ever After?
Priyanka Halder, VP of QA, will delve into the fascinating journey of quality engineering over the past decade, highlighting the dynamic evolution and innovative strategies that have underpinned the success of billion-dollar health tech and media companies. The talk traces the early days of experimentation with various quality assurance models, both in-house and outsourced, reflecting on the lessons learned and the pivotal decisions that shaped the future of quality in the industry. A significant milestone in this journey was the strategic partnership with the developer experience team and...
The Rise of the Virtual QA Engineer: Harnessing GenAI
In this talk, Dmitriy will delve into the transformative journey of integrating GenAI, into the core of his team's testing and development processes. This integration has not only enhanced their productivity by 15% but also yielded a 20% time saving and a significant cost reduction per test case. Want to know how? The session will explore his team's strategic implementation of GenAI, overcoming security challenges, leveraging diverse (LLMs), and the meticulous design of prompts that culminated in a prompt library. See how tailored extensions for the code editors and corporate chats...
Building and Testing Serverless API Applications with AWS SAM
The primary draw for implementation of AWS serverless applications is the supposed simplicity. Anyone that has attempted to implement testing on a serverless application, however, knows that it is anything but simple. Serverless technologies allow for the faster construction of more complex applications with more complex integrations while also providing new technologies and execution environments, all of which pose a challenge to those used to testing in a more traditional way. This presentation looks at an API-based serverless application as an example and introduces how the application...
Flowstate, Automation, and LLMs: Don’t Let Tests Block Productivity
It is known that developers are most productive when they can stay in flow, but also that delaying or omitting tests can cause disruption, breakage, and security issues down the line. By properly leveraging background automation, team collaboration, and machine learning in your native DevOps workflow, you can get the best of both worlds: productive flowstate AND safe code. In this talk, Jon Peck will take a look at ways to take advantage of asynchronous test notifications, single-pane-of-glass reviews, and GPT-based tools for faster coding, test generation, and vulnerability remediation....
Quality Is More Than Testing—How to Build a Test Team with a Customer-Centric Mindset
PreviewTesters are not part of the process; they don’t have sufficient knowledge of the client’s business to understand the big picture. This failure to understand leads to unsatisfactory outcomes that leave the client with unanswered questions. For a client to feel testing is of value, the software must work seamlessly and exceed their expectations. The solution is to shift testing left towards discovery and include testers early in the process so they have a stake in end-to-end results. Testers must understand the subject matter, ask questions, and be a valued part of the core team....
Cautionary Tales in Integration Testing
Integration tests are often rife with pitfalls that can result in confusing, flaky, or otherwise completely unmaintainable tests. Those pitfalls can often be mitigated by testing in containers, as this usually provides the most straightforward path to creating ephemeral test environments. Containerized tests typically provide isolation and reproducibility, but they can be costly to initially set up, especially if the system under test is not built for a containerized environment. Nonetheless, there are many benefits to containerized testing, even if the system under test won’t ultimately...
BiDi-Powered Selenium: Shaping Tomorrow's Automation
Explore the power of W3C BiDi protocol in Selenium. Join Puja to see how this new-age protocol transforms browser automation, bringing massive performance gains. BiDi taps into the event-driven nature of browsers to expose fine-grained automation functionality. This session will cover: W3C BiDi protocol basics, upgrading current browser automation, new automation possibilities, practical applications of BiDi in action, Selenium's ongoing BiDi journey, and how you can contribute to Selenium's BiDi development. Take a peek into the future of Selenium automation with BiDi, unlocking advanced...
AI in Testing: A Moderated Panel Discussion
Artificial intelligence is the newest trend in software testing. But what is it, and how will it impact the tester's role, both today and in the future? What do you need to do to embrace this emerging technology? Tariq King will moderate this panel discussion to give you an opportunity to hear the opinions of industry leaders about AI in testing. You will have a chance to drive the debate, so come prepared with all your AI questions.
Thursday, September 26
Traffic-Driven Testing—A Primer on Kubernetes Performance Engineering
Migrating your apps to Kubernetes and breaking up monoliths pose a unique set of testing challenges. Container-based testing gives us enormous flexibility and scalability and your testing strategy should take that into account. Waiting for a full environment and simply migrating your test scripts is risky and doesn't take advantage of Kubernetes container management features. Making sure your migrated app can handle normal load as well as spikes requires careful planning. You may also want to compare different clouds. In this talk, Matthew will go through some proven strategies for using...
“Low Code”—Coded Automation Using Free Tools
Using artificial intelligence to generate test code is a hybrid automation strategy that combines the best of both worlds. Tests can be created very quickly by almost anyone using AI, yet the tests are still planned by humans and maintainable by humans. With the right prompts, you can have AI construct traditional test code using open source testing tools that the world is already familiar with (Chai, Mocha, Cypress). As a result, you end up with structured code that is logical and easy to maintain without having to wonder what the AI is testing. In this session, Timothy will look at...
Escape Room—How Skills Needed in Escape Room Challenges Apply to Your Cybersecurity Team
There is tremendous IT turnover today and a lack of skilled resources for some job roles such as threat hunters in a Security Operations Center (SOC). This session will explore how escape rooms can teach IT leadership about building a cybersecurity team. An escape room is an ideal teaching tool that an organization can leverage to address the challenge of assembling a security team and navigating problems together. Success starts with the team and having the right mix of talent and skills which should reveal the clues to the game. Join James to explore the job roles in a SOC and skills...
AI-Assisted Exploratory Testing for Healthcare Software Based on STEEEP Domain of Healthcare Quality
PreviewIn this presentation, the primary objective is to introduce an innovative AI-assisted self-generating exploratory test automation model designed specifically for healthcare software applications. The overarching goal of this platform is to elevate the quality assurance process within the realm of healthcare software by dynamically formulating, executing, and adapting test scenarios. These scenarios are meticulously crafted to align with the crucial STEEEP (Safe, Timely, Effective, Efficient, Equitable, and Patient-Centered) healthcare quality domain, thereby fostering an improvement...
Cloud Testing of Cybersecurity Features in Mobile Apps
In CI/CD pipelines, automated testing services validate functionality of apps across hundreds of real-world mobile devices and OS versions. However, these same automated testing services can use methods and tools that violate security policies such as: emulators, virtualization, resigning, debugging, dual spaces, Magisk and more. Once security protections are added to a mobile app, the security features will trigger and may prevent automated testing. In this session, Karen will discuss how you can eliminate the need to test protected and unprotected builds separately. You will also...
Compile to Combat in 24 Hours—The Death of Regression Tests
As a Quality Engineering Director for a consulting firm delivering innovative data products to the US Department of Defense, Sufyan was faced with a new challenge. The US Government had directed all agencies delivering software solutions to the Department of Defense to provide the ultimate advantage to its warfighters. All software solutions must meet the Compile to Combat (C2C24) directive in that all requests for changes to software being used by the military must be delivered in 24 hours from the point of development to delivery. As a Quality Engineering team, this meant long and...