Skip to content

Detox

Automated end-to-end test framework that runs tests on real mobile devices or simulators, mainly for React Nat

Stars
12.1k
Forks
1.9k
Licence
MIT
Language
JavaScript
Last update
4 days ago
Type
Library

What it is

Detox is a testing framework for mobile apps. It runs your app on a device or simulator and drives it the way a user would, tapping buttons and typing into fields, then checks that the expected screens appear. The README says it is designed to reduce flaky tests by monitoring the app's asynchronous operations, and it is written mainly for React Native projects in JavaScript.

  • Write a login-flow test that types into fields, taps a button and checks that a welcome label is visible
  • Run the same end-to-end test suite on both Android and iOS from one JavaScript codebase
  • Run mobile end-to-end tests automatically in a continuous integration pipeline

Great for

  • Teams building React Native apps for Android and iOS who want automated end-to-end tests
  • Developers who want tests that wait for the app to finish background work before checking results
  • Projects that run tests on CI systems such as Travis CI, Circle CI or Jenkins
  • Developers already using Jest, since the README says it integrates with Jest out of the box

Not ideal for

  • Native-only apps with no React Native code, since the README focuses on React Native support and does not describe other stacks
  • Teams on React Native versions outside the listed range, since the README says older or newer versions are not officially supported or thoroughly tested
  • Non-developers looking for a no-code testing tool, because tests are written in JavaScript
Step-by-step guide: how to use DetoxInstall, first run, examples, tips and FAQs

How to get it

  1. 1

    Install with a package manager

    You'll need: Node.js · A React Native project · Android or iOS simulator/emulator or device

    Clone the repository

    git clone https://github.com/wix/Detox.git
  2. 2

    Run it

    • Follow the Getting Started guide at https://wix.github.io/Detox/docs/introduction/getting-started
    • Set up Detox in your React Native app following the guide's steps for Android and iOS
    • Write a test file using the describe, it and element/by API shown in the README example
    • Run the test on a simulator or device using the commands in the guide
  3. 3

    Get the most out of it

    • Use the Jest integration that the README says comes out of the box
    • Follow the design principles page to understand why Detox uses gray box testing
    • Run tests in CI, since the README highlights CI support as a goal
    • Check the contribution guide if you want to report issues or help with the project

Downloads

Strengths

  • Written in JavaScript with async-await, so breakpoints in tests behave as expected according to the README
  • Monitors asynchronous operations in the app to reduce flaky test results, per the README
  • Open source under the MIT license with an active project, a documentation site and a Discord community

Trade-offs

  • Built around React Native; the README lists supported RN versions (0.77 to 0.84) and says others are not officially supported
  • The README notes running on a real device is not yet supported on iOS, so some setups may be limited
  • Setup requires mobile development tooling, and the README points to a getting-started guide rather than summarizing the full setup

How it compares

ProjectStarsTypeLevelUpdatedBest for
Detox (this)12.1kLibraryintermediate4 days agoTeams building React Native apps for Android and iOS who want automated end-to-end tests
react-native-elements25.9kLibraryintermediate6 months agoReact Native developers who want ready-made UI components
NativeBase20.4kLibraryintermediate9 months agoTeams maintaining an existing app already built on NativeBase
mockito15.5kLibrarybeginner8 days agoJava developers writing unit tests for classes with external dependencies
react-native-calendars10.3kLibrarybeginner20 days agoReact Native developers who need a calendar or date picker screen
react-native127kFrameworkintermediate4 days agoWeb developers who already know React and want to build mobile apps

Stats synced from GitHub. The assessment above was drafted with AI from the project's README on 2026-10-29 and may miss recent changes — check the README before relying on a command. MIT licence: free to use, modify and distribute, including commercially, as long as you keep the copyright notice.