About this project
Saucery is an open-source .NET library that handles all the plumbing required to integrate automated tests with SauceLabs, a cloud-based testing platform. It simplifies the process by letting developers specify what they want to test, while Saucery manages the technical details of connecting to SauceLabs and running tests across various real and emulated platforms for Appium and Selenium 4+.
The project offers multiple packages tailored to popular test frameworks:
- **Saucery.Core**: The core library providing the DesiredOption factory and platform configuration.
- **Saucery**: Integration for NUnit.
- **Saucery.XUnit**: Integration for XUnit.
- **Saucery.TUnit**: Integration for TUnit.
- **Saucery.XUnit.v3**: Integration for XUnit v3.
- **Saucery.NuGet**: A global .NET tool for managing NuGet package upgrades and version relationships.
Key features include:
- **Platform Range Expansion**: A unique feature allowing tests to run across a range of browser versions without specifying each individually. For example, `new DesktopPlatform(SauceryConstants.PLATFORM_WINDOWS_11, SauceryConstants.BROWSER_CHROME, "100->119")` tests on Windows 11 Chrome versions 100 through 119.
- **Real Device Support**: Saucery supports testing on real devices in addition to emulated platforms.
- **Project Templates**: Quick-start templates for each test framework, enabling easy setup with `dotnet new` commands.
- **CI/CD Integration**: Supports running tests from GitHub Actions pipelines using environment variables or secrets for SauceLabs credentials.
Setup requires a SauceLabs account and setting environment variables (SAUCE_USER_NAME and SAUCE_API_KEY) for local testing or GitHub secrets for pipeline execution. The project has been developed for over 12 years and is actively maintained, with its own tests run on SauceLabs.
Comments
0 people shared their preference · Deer Point appears after 10 participants
Sign in to join the discussion.