A library that extends Apple's UI Testing framework to enable network mocking, file operations, and other dynamic interactions with the app under test.
SBTUITestTunnel is a library that extends Apple's UI Testing framework (XCTest) to enable dynamic interactions between the test runner and the iOS app under test. It solves the problem where the test process cannot directly share data with the app, allowing developers to stub network calls, monitor network activity, manipulate files, and execute custom code in the app target during tests.
iOS developers and QA engineers who write UI tests using Apple's XCTest framework and need advanced capabilities like network mocking, file manipulation, and dynamic app interactions.
Developers choose SBTUITestTunnel because it seamlessly integrates with XCTest, supports parallel testing, and provides a comprehensive set of features for dynamic UI testing that are not available in the standard framework, making tests more robust and flexible.
Enable network mocks and more in UI Tests
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
It's a simple subclass of XCUIApplication, making integration with existing XCTest workflows straightforward without replacing the framework, as stated in the README's philosophy.
Offers network stubbing, monitoring, file operations, and custom code execution—addressing key XCTest limitations like the inability to share data between test and app processes.
Supports parallel testing across multiple simulators, which is explicitly mentioned, helping speed up large test suites in CI/CD environments.
Shown by CI badges, regular version updates via CocoaPods, and detailed documentation for installation and usage, indicating reliable project health.
Requires integrating both app and test targets with separate components, which can be error-prone and adds overhead compared to vanilla XCTest.
Only works for iOS UI testing, with no native support for other Apple platforms like macOS or tvOS, restricting its use in broader ecosystems.
Relies on GCDWebServer and DetoxIPC, which could introduce compatibility issues or breaking changes outside the project's control.