Javascript 排毒测试适用于Android,但不适用于iOS
说明Javascript 排毒测试适用于Android,但不适用于iOS,javascript,cucumberjs,detox,Javascript,Cucumberjs,Detox,说明 "detox": { "configurations": { "android.emu.debug": { "binaryPath": "android/app/build/outputs/apk/debug/app-debug.apk", "build": "cd android && ./gradlew assembleDebug assembleAndroidTest -DtestBuil
"detox": {
"configurations": {
"android.emu.debug": {
"binaryPath": "android/app/build/outputs/apk/debug/app-debug.apk",
"build": "cd android && ./gradlew assembleDebug assembleAndroidTest -DtestBuildType=debug && cd ..",
"type": "android.emulator",
"name": "Pixel_2",
"session": {
"server": "ws://localhost:8099",
"sessionId": "androidDebug"
}
}
}
}
解毒测试挂在Android emulator上的init
调用上。该应用程序安装在模拟器上,但从未启动。相同的测试在iOS模拟器上的相同应用程序上执行。我正在为测试运行程序使用Cucumber
,只是在BeforeAll
钩子中调用init
函数
hooks.js
const {Before, BeforeAll, AfterAll} = require('cucumber');
const detox = require('detox');
const detoxConfig = require('../../../package.json').detox;
BeforeAll({timeout: 60 * 1000}, async () => {
await detox.init(detoxConfig);
});
package.json
"detox": {
"configurations": {
"android.emu.debug": {
"binaryPath": "android/app/build/outputs/apk/debug/app-debug.apk",
"build": "cd android && ./gradlew assembleDebug assembleAndroidTest -DtestBuildType=debug && cd ..",
"type": "android.emulator",
"name": "Pixel_2",
"session": {
"server": "ws://localhost:8099",
"sessionId": "androidDebug"
}
}
}
}
解毒、节点、设备和macOS版本
MBP-55EE:detox-android$ detox run-server
detox-server info 12:14:32: server listening on localhost:8099...
detox-server wss 12:14:48: role=tester login (sessionId=androidDebug)
detox-server wss 12:14:48: role=tester action=loginSuccess
(sessionId=androidDebug)
detox-server wss 12:14:53: role=tester action=isReady
(sessionId=androidDebug)
detox-server wss 12:14:53: role=testee not connected, cannot fw action
(sessionId=androidDebug)
detox-server wss 12:15:48: role=tester disconnect
(sessionId=androidDebug)
排毒:7.3.3
节点:8.9.4
仿真器:Android Studio默认w/API 24(7.0)
macOS:High Sierra版本10.13.3
反应本机:0.55.2
反应:16.0.0
清除服务器日志
MBP-55EE:detox-android$ detox run-server
detox-server info 12:14:32: server listening on localhost:8099...
detox-server wss 12:14:48: role=tester login (sessionId=androidDebug)
detox-server wss 12:14:48: role=tester action=loginSuccess
(sessionId=androidDebug)
detox-server wss 12:14:53: role=tester action=isReady
(sessionId=androidDebug)
detox-server wss 12:14:53: role=testee not connected, cannot fw action
(sessionId=androidDebug)
detox-server wss 12:15:48: role=tester disconnect
(sessionId=androidDebug)
让我印象深刻的是,在iOS上,测试已经完成,但我仍然看到被测试者没有连接,所以我不知所措
除了在iOS模拟器上以XCode 9运行外,其他条件都相同
MBP-55EE:detox-android$ detox run-server
detox-server info 10:53:28: server listening on localhost:8099...
detox-server wss 10:54:27: role=tester login (sessionId=debugSession)
detox-server wss 10:54:27: role=tester action=loginSuccess
(sessionId=debugSession)
detox-server wss 10:54:44: role=tester action=isReady
(sessionId=debugSession)
detox-server wss 10:54:44: role=testee not connected, cannot fw action
(sessionId=debugSession)
detox-server wss 10:54:49: role=testee login (sessionId=debugSession)
detox-server wss 10:54:49: role=testee action=loginSuccess
(sessionId=debugSession)
detox-server wss 10:54:49: role=testee action=ready
(sessionId=debugSession)
detox-server wss 10:54:49: role=tester action=invoke
(sessionId=debugSession)
detox-server wss 10:54:49: role=testee action=invokeResult
(sessionId=debugSession)
detox-server wss 10:54:49: role=tester action=invoke
(sessionId=debugSession)
detox-server wss 10:54:50: role=testee action=invokeResult
(sessionId=debugSession)
detox-server wss 10:54:50: role=tester action=invoke
(sessionId=debugSession)
detox-server wss 10:54:50: role=testee action=invokeResult
(sessionId=debugSession)
...
有没有关于为什么iOS能像预期的那样工作的想法,但安卓却没有 你用安卓系统尝试过更新版本的排毒吗?