detox-skill
Generates Detox E2E tests for React Native apps in JavaScript.
Skill by TestMu AI
Install
Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.
npx agentmarket install skill/lambdatest-detox-skill
Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.
Get the weekly diff
The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.
About
Use cases: frontend, testing
Reviews
Write a reviewNo reviews yet. Installed it? Reviews come from verified installers only. How reviews work
Permissions
What this skill can do and what it asks for, from its SKILL.md. Checked Oct 25, 2026.
- Tools
- No tools found
- Secrets
- None asked for
- Install scripts
- None found
Network hosts it talks to 1
codeload.github.com· found in install command
Files it touches
~/.claude/skills/detox-skill
What's inside
- Skill name
detox-skill- Description
- Generates Detox E2E tests for React Native apps in JavaScript. Gray-box testing framework with automatic synchronization. Supports local simulators/emulators and TestMu AI cloud. Use when user mentions "Detox", "React Native test", "element(by.id())", "device.launchApp". Triggers on: "Detox", "React Native E2E", "React Native test", "element(by.id)", "device.launchApp".
- License
- MIT
- Metadata
- author: TestMu AI · version: 1.0
- Instructions
- 233 lines in SKILL.md · view on GitHub
Before installing
- Instructions call the network
Files (3)
- SKILL.md
- advanced-patterns.md · reference/
- playbook.md · reference/
SKILL.md (first lines)
# Detox Automation Skill
You are a senior React Native QA engineer specializing in Detox.
## Core Patterns
### Basic Test
```javascript
describe('Login', () => {
beforeAll(async () => {
await device.launchApp();
});
beforeEach(async () => {
await device.reloadReactNative();
});
it('should login with valid credentials', async () => {
await element(by.id('emailInput')).typeText('user@test.com');
await element(by.id('passwordInput')).typeText('password123');
await element(by.id('loginButton')).tap();
await expect(element(by.id('dashboardTitle'))).toBeVisible();
await expect(element(by.text('Welcome'))).toBeVisible();
});
it('should show error for invalid credentials', async () => {
await element(by.id('emailInput')).typeText('wrong@test.com');
await element(by.id('passwordInput')).typeText('wrong');
await element(by.id('loginButton')).tap();
await expect(element(by.id('errorMessage'))).toBeVisible();
});
});
```
### Matchers (Finding Elements)
```javascript
element(by.id('uniqueId')) // testID prop (best)
element(by.text('Login')) // Text content
element(by.label('Submit')) // Accessibility label
element(by.type('RCTTextInput')) // Native type
element(by.traits(['button'])) // iOS traits
// Combined
element(by.id('list').withDescendant(by.text('Item 1')))
element(by.id('item').withAncestor(by.id('list')))
// At index (multiple matches)
element(by.text('Delete')).atIndex(0)
```
### Actions
```javascript
await element(by.id('btn')).tap();
await element(by.id('btn')).longPress();
await element(by.id('btn')).multiTap(3);
await element(by.id('input')).typeText('hello');
await element(by.id('input')).replaceText('new text');
await element(by.id('input')).clearText();
await element(by.id('scrollView')).scroll(200, 'down');
await element(by.id('scrollView')).scrollTo('bottom');
await element(by.id('item')).swipe('left', 'fast');
await element(by.id('input')).tapReturnKey();
```
### Expectations
```javascript
await expect(element(by.id('title'))).toBeVisible();
await expect(element(by.id('title'))).not.toBeVisible();
await expect(element(by.id('title'))).toExist();
await expect(element(by.id('title'))).toHaveText('Welcome');
await expect(element(by.id('toggle'))).toHaveToggleValue(true);
await expect(element(by.id('input'))).toHaveValue('hello');
```
### Device Control
```javascript
await device.launchApp({ newInstance: true });
await device.reloadReactNative();
await device.sendToHome();
await device.terminateApp();
await device.installApp();
await device.shake(); // Shake gesture
await device.setLocation(37.7749, -122.4194); // GPS
await device.setURLBlacklist(['.*cdn.example.*']); // Block URLs
```
### Anti-Patterns
| Bad | Good | Why |
|-----|------|-----|
| `waitFor().withTimeout()` everywhere | Trust Detox auto-sync | Detox waits automatically |
| No `testID` on components | Add `testID` prop | Stable selectors |
| `device.launchApp()` in every test | `device.reloadReactNative()` | Faster |
| Manual delays | Detox synchronization | Built-in waiting |
### .detoxrc.js Configuration
```javascript
module.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 -derivedDataPath ios/build',
},
'android.debug': {
type: 'android.apk',
binaryPath: 'android/app/build/outputs/apk/debug/app-debug.apk',
build: 'cd android && ./gradlew assembleDebug assembleAndroidTest -DtestBuildType=debug',
reversePorts: [8081],
},
},
devices: {From LambdaTest/agent-skills, MIT.
More from LambdaTest/agent-skills
- 0.804score
rook-skill
LambdaTest
Use rook to test, evaluate, red-team or regression-check an AI agent the user owns, or to interpret saved Rook results.
SkillAFreshness: A★ 377Claude Code +9 - 0.713score
smartui-skill
TestMu AI
Generates SmartUI visual regression test configurations for screenshot comparison on TestMu AI cloud.
SkillBFreshness: B★ 377Claude Code +9 - 0.664score
hyperexecute-skill
TestMu AI
Operates HyperExecute end-to-end for TestMu AI/LambdaTest cloud test execution: analyze projects, create YAML, validate locally, run CLI jobs, debug failures…
SkillCFreshness: C★ 377Claude Code +9 - 0.659score
newman-report-analyzer
TestMu AI
Analyze Newman test run output, JSON reports, and JUnit XML results to summarize failures, diagnose root causes, identify slow requests, and suggest fixes.
SkillCFreshness: C★ 377Claude Code +9 - 0.659score
postman-openapi-converter
TestMu AI
Convert OpenAPI 3.x or Swagger 2.0 specs (YAML or JSON) into complete, import-ready Postman Collection v2.1 JSON files.
SkillCFreshness: C★ 377Claude Code +9 - 0.659score
postman-collection-generator
TestMu AI
Generate complete, import-ready Postman Collection v2.1 JSON files from natural language API descriptions or cURL commands.
SkillCFreshness: C★ 377Claude Code +9 - 0.659score
api-to-testcase-generator
TestMu AI
Automatically generate comprehensive test cases from API definitions, endpoint descriptions, OpenAPI/Swagger specs, Postman collections, or raw HTTP…
SkillCFreshness: C★ 377Claude Code +9 - 0.659score
api-analyzer
TestMu AI
Validates whether an API request is correct based on provided inputs (method, URL, headers, body, auth, query params).
SkillCFreshness: C★ 377Claude Code +9 - 0.659score
api-health-monitoring
TestMu AI
Designs health check endpoints, SLA definitions, alerting rules, observability strategies, and dashboard specs for any API.
SkillCFreshness: C★ 377Claude Code +9 - 0.659score
accessibility-skill
TestMu AI
Adds automated accessibility (a11y) testing to test suites on TestMu AI cloud by enabling WCAG scans through driver capabilities.
SkillCFreshness: C★ 377Claude Code +9 - 0.659score
api-sdk-generator
TestMu AI
Generates client SDK code, API wrapper libraries, request/response models, and language-specific usage patterns for any REST API.
SkillCFreshness: C★ 377Claude Code +9 - 0.659score
api-documentation
TestMu AI
Generate comprehensive, professional API documentation from API designs, endpoint definitions, OpenAPI/Swagger specs, route lists, or raw endpoint descriptions.
SkillCFreshness: C★ 377Claude Code +9
Signals
- Stars
- 377
- Forks
- 74
- Open issues
- 3
- Last commit (this folder)
- Feb 23, 2026 (8 months ago)
From GitHub (fetched Oct 24, 2026).
Details
- Version
- 1.0
- License
- MIT
- Repository
- github.com/LambdaTest/agent-skills
- Website
- agentskillsforall.com/
- First seen
- Oct 24, 2026
- Last checked
- Oct 24, 2026
- Source
- GitHubgithub-graphql
More from TestMu AI
- 0.713score
smartui-skill
TestMu AI
Generates SmartUI visual regression test configurations for screenshot comparison on TestMu AI cloud.
SkillBFreshness: B★ 377Claude Code +9 - 0.664score
hyperexecute-skill
TestMu AI
Operates HyperExecute end-to-end for TestMu AI/LambdaTest cloud test execution: analyze projects, create YAML, validate locally, run CLI jobs, debug failures…
SkillCFreshness: C★ 377Claude Code +9 - 0.659score
postman-openapi-converter
TestMu AI
Convert OpenAPI 3.x or Swagger 2.0 specs (YAML or JSON) into complete, import-ready Postman Collection v2.1 JSON files.
SkillCFreshness: C★ 377Claude Code +9 - 0.659score
accessibility-skill
TestMu AI
Adds automated accessibility (a11y) testing to test suites on TestMu AI cloud by enabling WCAG scans through driver capabilities.
SkillCFreshness: C★ 377Claude Code +9 - 0.659score
postman-collection-generator
TestMu AI
Generate complete, import-ready Postman Collection v2.1 JSON files from natural language API descriptions or cURL commands.
SkillCFreshness: C★ 377Claude Code +9 - 0.659score
api-analyzer
TestMu AI
Validates whether an API request is correct based on provided inputs (method, URL, headers, body, auth, query params).
SkillCFreshness: C★ 377Claude Code +9
Cite this page
detox-skill. Agent Mart. https://agentmart.dev/skills/lambdatest-detox-skill (last updated 2026-10-24)