Workshops at SauceCon Online 2022
Join the Sauce Labs experts for a hands-on workshop on May 3. These fully remote, interactive sessions will equip attendees with new skills to take their testing to the next level.
Purchase a workshop ticket to get access to in-depth training – plus help us donate to a good cause! SauceCon workshops are part of the Sauce Labs Testing for Good series. Net proceeds from ticket sales will be donated to support organizations selected by our workshop instructors.
Mobile App Testing
4 hours | Intermediate
Level up your mobile app testing in this 3-part workshop. Learn how to automate hybrid applications with Appium, how to optimize mobile app distribution and beta testing, and get started with mobile error and crash reporting.
Read More
Mobile App Testing (4 hours | Intermediate)
Level up your mobile app testing in this 3-part workshop. Learn how to automate hybrid applications with Appium, how to optimize mobile app distribution and beta testing, and get started with mobile error and crash reporting.
Automating Hybrid Applications with Appium (2 hours | Intermediate)
When creating a mobile application, organizations have a few options to choose from; mobile web, native or a hybrid application. Where web apps are just websites that can be accessed on the internet via a mobile browser like Chrome or Safari, native apps are applications that are developed for a specific platform such as Android or iOS. Hybrid apps are different because they possess elements from native apps and web apps.
When automating web applications, Selenium commands are used. Nine out of ten times the same automation script can be used for mobile web applications as our desktop web applications. With native apps however, we need to look deeper into the differences between Android and iOS apps before we can use Appium commands.
But how should you automate hybrid apps? Can or do you need to choose one of the two automation strategies or is there also a hybrid approach for automating hybrid apps? That’s what we are going to look at during this workshop.
During this workshop we will be using a demo Hybrid app. After this workshop you can use this app to explore more opportunities and practice your new skillset.
By the end of this workshop, you will have written your (first) hybrid cross platform automation script for Android and iOS hybrid mobile applications.
Learning Outcomes:
- How to detect a hybrid mobile application for Android and iOS
- How to automate a webview
- How to switch between webviews
- How to use the full potential of automating hybrid apps
Workshop Prerequisites
- A Windows, Mac or Linux operating system
- Administrator and/or installation rights on your machine
- Installed NodeJS, this needs to be an even version, so 14 or 16 (No odd versions like 13, 15, 17 which are not stable versions)
- You have downloaded and configured an Android Emulator and/or an iOS Simulator
- Have the latest version of Appium installed on your machine (1.20.0 or higher)
- Some basic JavaScript knowledge
- Please review the full prerequisites and setup instructions here
Workshop Leader
Wim Selles
Lead Solutions Architect, Sauce Labs
Optimizing Mobile App Distribution and Beta Testing (1 hour | Intermediate)
34% of smartphone users claim they would delete an application if they encountered a software bug. User research continues to reinstate the direct impact of customer satisfaction on application adoption, and hence business growth. Yet, preventing bugs from escaping into production and reaching end-users remains a critical challenge for development teams, straddling the balance between faster time to market and delivering the best digital experiences every time. Further, the inherent complexity and remote nature of mobile testing make it harder for developers to understand real user experiences and identify key events that lead to app failures and crashes.
Join Yair Bar-on, co-founder of TestFairy, Sauce Labs mobile beta testing solution, as he shares key insights on how completing your automated testing strategy with mobile app beta testing can help you address these challenges head-on. In this hands-on training session, you will learn the best practices for optimizing mobile beta testing processes, getting critical real-user feedback, and iterating mobile apps faster.
Workshop exercises will cover:
- How to set up a successful mobile beta testing program
- How to quickly deploy beta app versions with streamlined iOS, Android app distribution
- How to find the right beta users, enable faster bug reporting, and boost test insights
- How to utilize video recordings and in-app feedback to uncover quality issues faster
- How to create faster feedback loops for developers to improve mean time to resolution
Learning Outcomes:
- Improve release velocity and mobile app quality by utilizing meaningful feedback and validation with real-world users.
- Shorten your mobile app development and release cycles with faster feedback loops, actionable bug reports, and user behavior insights in your SDLC.
- Maximize your automated testing strategy by combining it with mobile app beta testing.
Workshop Prerequisites
- Access to an Android Device
- If you don’t have an Android phone handy, you can sign up for a Sauce Labs free trial to access our Real Device Cloud
Workshop Leader
Yair Bar-On
Director of Product – TestFairy, Sauce Labs
Test in Production: Getting Started with Mobile Crash and Error Reporting (1 hour | Intermediate)
Finding and fixing mobile app errors is a team sport. Errors and crashes are identified throughout the software development lifecycle (SDLC) by teams or users themselves. However, capturing relevant error and crash data, prioritizing user-impacting application issues, and creating faster feedback loops to help developers triage app errors, are often the biggest challenges teams face in achieving faster detection and resolution of mobile app errors.
In his workshop, Vincent Lussenburg, Technical Product Manager for Backtrace at Sauce Labs, will provide you hands-on training on mobile crash and error reporting and let you experience its value first-hand to drastically reduce the mean time to detection (MTTD) and mean time to resolution (MTTR). You will integrate Error Reporting into a sample Android or iOS apps, submit crashes, errors, and hangs for analysis, customize the system with indexed attributes, and create some saved views to support useful collaboration.
Workshop exercises will cover:
- Understanding the functional and technical differences between errors hangs, memory problems, and crashes
- How to add error and crash collection to your mobile app
- How to use (custom) error reports, error-free sessions, and user metrics to prioritize issues that need your attention
- Understanding how obfuscating and native code requires unmangling and symbolication
- How to debug issues faster by using call stacks, thread dumps, attributes, and breadcrumbs (without the need to download minidump and crash files)
Learning Outcomes:
Learn how adopting the best-in-class error & crash reporting can help you:
- Capture, prioritize, and resolve issues across the software lifecycle: in development, in beta, and in production.
- Roll out new features with confidence by ensuring crash-free statistics are at the right level before a full release.
- Quickly respond to top instability errors, before they impact more users.
Workshop Prerequisites
- The ability to build an Android or iOS app using Xcode, Android Studio or another IDE
- A Backtrace instance
- If you don’t have one, sign up for a trial at http://register.backtrace.io/
- The ability to deploy to a real device since crash reporting for emulators works differently
- If you don’t have access to a real device, you can sign up for a Sauce Labs free trial at https://saucelabs.com/sign-up
Workshop Leader
Vincent Lussenburg
Technical Product Manager – Backtrace, Sauce Labs
Testing for Good
Net proceeds from tickets sales for this workshop will go to support Kika and Dream Doctors.
API Testing & Monitoring
3.5 hours | Intermediate
In this 2-part workshop, learn how to shorten test cycles with data-driven API test automation, supplement or replace UI testing with API test automation, and transform test cases with API testing.
Read More
API Testing & Monitoring (3.5 hours | Intermediate)
In this 2-part workshop, learn how to shorten test cycles with data-driven API test automation, supplement or replace UI testing with API test automation, and transform test cases with API testing.
This Old Test Framework: Improving your test automation approaches using UI, API and Unit testing (2 Hours | Intermediate)
Testing software applications at the UI level is helpful but has drawbacks. Sometimes, tests that may seem to rely on the entire application can be tested at lower levels, such as the application code level and service/API level. In this workshop we’ll walk through different test scenarios and how they can be adapted from end-to-end/UI tests to other approaches that are faster, more stable, and more efficient.
This workshop will be divided into three main sections:
- Replacing a UI test with a unit test
- Replacing a UI test with a service/API test
- Using APIs in UI tests to set state
From this workshop, attendees will:
- See examples of unit, API, and UI level automated tests
- Understand how to replace UI tests with API tests and unit tests
- Understand how APIs can assist in making better UI automation
Workshop Prerequisites
- Sauce login for each participant
- Java JDK 11 or higher
- Android Studio (download here)
- Knowledge of Git (a GitHub account is helpful but not required)
- Knowledge of automated testing tools (Selenium, Appium, JUnit) is helpful but not required
- Knowledge of unit and API testing is useful but not required
Workshop Leader
Josh Grant
Manager, Solution Architects, Sauce Labs
Discover and Close All API Quality Gaps in Any SDLC (1.5 Hours | Intermediate)
Shorter release cycles and increased microservices have made quality-at-speed and SLA compliance more challenging for development, QA/QE, SRE and testing Centers of Excellence. Too often, testing is a bottleneck, testing fails to stop bugs from reaching production, and testing dashboards do not give managers deep visibility into the runtime and historic health of APIs.
In this workshop, Sauce Labs engineers, Julian Vargas and Sangit Patel, will walk attendees through solving API quality gaps in DESIGN, BUILD, TEST, DEPLOYMENT and MONITORING stages.
Workshop exercises will cover:
- DESIGN and BUILD: Learn how to build Quality into your API Design and Builds by extending OpenAPI spec files with highly usable mocks and spec-based contract testing.
- TEST: Learn how to streamline functional and integration (multi-step API flow) testing with highly scalable API test automation that leverages automated test generation and other helpful features. Also earn how to collaborate more efficiently on API tests within teams and across different teams. This lesson concludes with best practices for data-driving API functional and integration tests.
- DEPLOYMENT: Learn how to automate regression testing during a CI/CD pipeline. Instructors will show you how to keep API test non-flaky throughout rapid code and database changes that may not have propogated yet to the CI/CD platform.
- MONITORING: Learn about the critical differences between the different types of API monitoring: Uptime, Functional Uptime and Performance Monitoring. See how reusing API tests as monitors in any environment (including production) can significantly reduce risk and maintain optimal reliability and SLA performance.
- Ending Q&A: Attendees are invited to bring their use cases or issues for hands-on workshopping on how to solve.
Outline
- Introduction
- Survey Report Analysis
- Design and Build
- Test
- Deployment
- Monitoring
- Q&A
Learning Outcomes:
- Reduce risk as early as design with API mocking and contract testing
- Shorten test cycles and reduce rollbacks with data-driven API test automation that captures real world scenarios
- Supplement or replace UI testing with API test automation: eliminate time-consuming UI test cases with instant API test results
- Transform the reliability and SLA performance of internal, partner and open APIs with next-generation API monitoring
- Ensure more effective continuous improvement by giving managers insights into historic trends for API quality throughout the SDLC
Workshop Prerequisites
- You have an active Sauce Labs account and log in successfully, or sign up for a free trial.
- You have set up SauceConnect on your computer by successfully executing Step 2 in Sauce Labs | Tunnel Proxies. As an alternative, you can use ngrok instead of SauceConnect
- You have installed Deno on your computer. This means you can successfully execute `$ $HOME/.deno/bin/deno run https://deno.land/std/examples/welcome.ts`
- You have Git installed in your computer
Workshop Leaders
Julian Vargas
Engineering Manager, Sauce Labs
Sangit Patel
Senior Solutions Engineer, Sauce Labs
Testing for Good
Net proceeds from tickets sales for this workshop will go to support the Ukrainian Crisis Fund and the Thunder Woman Healing Lodge.
Run Your Tests Anywhere
4 hours | Beginner
This workshop will show you great foundations and concepts to run tests in Docker, which you will learn through practical exercises. We will go in detail through the process of putting a test suite in Docker, and cover common pitfalls and best practices to build good Docker images and run stable Docker containers in different environments.
Read More
Run Your Tests Anywhere (4 hours | Basic)
Do you have a few JavaScript or Java tests and you need your colleague to run them for you? Oh, they don’t have Node or Java installed? What to do? Docker is the solution!
Run your tests on your laptop, on your colleague’s laptop, run them on a local or a remote Continuous Integration server (CI). Combine Docker with your tests to avoid the dependency hell and enable anyone, anywhere to run them. Docker is commonly seen as a tool to package and deploy applications to different environments, but it is very useful in testing frontend and backend applications.
Putting your tests inside a Docker image can be daunting at the beginning, but a basic understanding of how Docker works, how to create Docker images and run Docker containers will enable us to run our tests anywhere.
This workshop will show you great foundations and concepts to run tests (and potentially any application) in Docker, which you will learn through practical exercises. We will go in detail through the process of putting a test suite in Docker, from creating the Docker image and running it locally to the point where we run our tests on a complete new CI. We will cover the common pitfalls when using Docker and best practices to build good Docker images and run stable Docker containers in different environments.
Outline
- Introduction and quick environment check
- Docker introduction
- Introduction to our testing application (to be used along the workshop)
- Putting the application in Docker and running it, as a practical exercise
- Writing a few tests to test our sample application and using Docker to run them inside a container
- Run multiple Docker containers via docker-compose to test our application in different environments
- Running tests in a continuous integration pipeline
- Wrap up
Learning Outcomes
- Get insights on how an application can be containerized to make testing easier
- Scale-up test suites by running them in parallel and in different environment combinations
- Orchestrate multiple Docker containers to simplify test setup and execution
- Integrate the different elements from the training to build test setups that fit better your web application testing needs
- Identify and put together all the moving pieces of the test setup to facilitate the configuration of a continuous integration pipeline
Workshop Prerequisites
- Know how to run command-line tools from your workstation (Linux/Windows/macOS)
- Basic programming knowledge and automation testing concepts
- A Sauce Labs account (if you don’t already have an account, sign up for a free trial here: https://saucelabs.com/sign-up)
Technical Setup
- Desired: A GitHub and a GitPad account (GitPod account can be created by signing in with your GitHub account)
- You will be able to follow the whole workshop just by using your browser.
- Optional: (if you want to follow the workshop on your own laptop)
Workshop Leader
Diego Molina
Staff Software Engineer, Sauce Labs
Testing for Good
Net proceeds from ticket sales for this workshop will go to support Cigarra.
Accelerate Your Agile Journey with Low-code Test Automation
3 hours | Beginner
Low code test automation makes it possible for anyone (business users, product owners, manual testers, etc.) to learn how to create and execute automated tests with no programming knowledge. In this workshop, users will get access to the AutonomIQ Sauce Labs Low Code Solution and learn all the steps needed to create end-to-end tests.
Read More
Accelerate Your Agile Journey with Low-code Test Automation (3 Hours | Beginner)
Low code test automation makes it possible for anyone (business users, product owners, manual testers, etc.) to learn how to create and execute automated tests with no programming knowledge. In this workshop, users will get access to the AutonomIQ Sauce Labs Low Code Solution and learn all the steps needed to create end-to-end tests.
Outline
- Why testing is still a bottleneck?
- Who is a tester?
- Unleash the Citizen Tester
- A strategy to remove testing as a bottleneck for all testers
- How to supercharge your organization to higher quality in the shortest time possible
- Best practices for test automation, reducing test debt
Learning Outcomes
Attendees will get access to the AutonomIQ tool and will be able to create test cases and test assets using the low code studio. Learn step-by-step how to build tests using plain English and execute them on Sauce Virtual Machines.
Attendees will learn how to:
- Design a test case strategy that suits your low code needs
- Create projects and test cases using three different methods
- Create and execute low code test suites on multiple browsers and OS combinations
- Reduce manual effort when healing test scripts using AI-powered technology
Workshop Leader
Raj Rao
Chief Strategy Officer – AutonomIQ, Sauce Labs
Testing for Good
Net proceeds from tickets sales for this workshop will go to support the Ukrainian Red Cross Society.
Comprehensive Testing with JavaScript
4 hours | Intermediate
In this workshop you will learn the latest and greatest tools and techniques to improve your ability to test modern web applications.
Read More
Comprehensive Testing with JavaScript (4 hours | Intermediate)
In this workshop you will learn the latest and greatest tools and techniques to improve your ability to test modern web applications. You will focus on a holistic approach of testing front-end, APIs, and back-end. You will analyze risks and prevent those risks with functional testing, API testing, visual testing and a lot more.
This workshop is open to all experience levels. Note that some basic JavaScript programming skills are needed.
Learning Outcomes
- API testing with Cypress
- How to test a React web app using different types of tests
- E2E UI tests with Cypress
- Visual cross-browser + cross-platform tests
- CI/CD with Github Actions
Workshop prerequisites:
- Working knowledge of JavaScript
- Follow the Setup instructions to setup your environment a few days Before the Workshop
Workshop Leader
Nikolay Advolodkin
Senior Solutions Architect, Sauce Labs
Testing for Good
Net proceeds from tickets sales for this workshop will go to support Ecosia’s Trees That Empower Women.
Crafting a Test Framework
4 hours | Advanced
In this workshop, learn how to leverage your framework to minimize flakiness and make it easier to update test code only when needed. We’ll walk through testing a sample real-world application focusing on how each of the components work together.
Read More
Crafting a Test Framework (4 hours | Advanced)
If you have ever maintained a Selenium test suite, you know that the most expensive piece is dealing with the maintenance costs, not the creation or execution costs. There are straightforward ways to leverage your framework to minimize flakiness and make it easier to update your test code only when needed. We’ll walk through testing a sample real-world application focusing on how each of the components work together.
Outline/Structure
- Writing good tests
- Using Test Data
- Working with Page Objects
- Managing Synchronization
- Encapsulating Objects
- Executing Tests at Scale
Key Takeaways
- What to prioritize when developing test tooling
- How different framework components work together
Prerequisites
- Experience with Java
- Git Installed
- IntelliJ installed
- JDK v1.8 or higher installed
Workshop Leader
Titus Fortner
Senior Developer Experience Engineer, Sauce Labs
Testing for Good
Net proceeds from ticket sales for this workshop will go to support the Ukraine Crisis Fund.