Help us improve
Share bugs, ideas, or general feedback.
From tauri-skills
Guides writing and configuring Detox E2E tests for React Native mobile apps, including setup, matchers, actions, and CI integration.
npx claudepluginhub partme-ai/full-stack-skills --plugin vue-skillsHow this skill is triggered — by the user, by Claude, or both
Slash command
/tauri-skills:detoxThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Use this skill whenever the user wants to:
Automates mobile app testing on iOS simulators/Android emulators using Appium, Detox, XCUITest, Espresso, Maestro. Validates UI interactions, gestures, navigation, and platform behaviors.
Guides test-driven development workflow for React Native using Jest, React Native Testing Library, and Detox in Red-Green-Refactor cycle. For new features, bug fixes, refactoring.
Guides mobile app testing strategies: unit tests with Jest/XCTest/JUnit, UI automation/integration with Detox/Espresso/Appium, E2E flows. For test setup, device farms, flaky tests.
Share bugs, ideas, or general feedback.
Use this skill whenever the user wants to:
.detoxrc.js, ensure Xcode/Android SDK are readyelement(by.id(...)), tap(), typeText(), and expect()detox build then detox testmodule.exports = {
testRunner: { args: { config: 'e2e/jest.config.js' } },
apps: {
'ios.debug': {
type: 'ios.app',
binaryPath: 'ios/build/MyApp.app',
build: 'xcodebuild -workspace ios/MyApp.xcworkspace -scheme MyApp -configuration Debug -sdk iphonesimulator',
},
'android.debug': {
type: 'android.apk',
binaryPath: 'android/app/build/outputs/apk/debug/app-debug.apk',
build: 'cd android && ./gradlew assembleDebug',
},
},
devices: {
simulator: { type: 'ios.simulator', device: { type: 'iPhone 15' } },
emulator: { type: 'android.emulator', device: { avdName: 'Pixel_6' } },
},
configurations: {
'ios.sim.debug': { device: 'simulator', app: 'ios.debug' },
'android.emu.debug': { device: 'emulator', app: 'android.debug' },
},
};
describe('Login Flow', () => {
beforeAll(async () => {
await device.launchApp();
});
it('should login successfully', async () => {
await element(by.id('username-input')).typeText('testuser');
await element(by.id('password-input')).typeText('secret');
await element(by.id('login-button')).tap();
await expect(element(by.id('welcome-message'))).toBeVisible();
});
});
# Build the app
detox build --configuration ios.sim.debug
# Run tests
detox test --configuration ios.sim.debug
# With artifacts on failure
detox test --configuration ios.sim.debug --artifacts-location ./artifacts
testID props for stable element identification; avoid matching on text or animationsdetox, React Native, E2E, end-to-end testing, mobile testing, iOS simulator, Android emulator, testID, synchronization, Wix Detox