问题标签 [detox]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
react-native - 排毒:如何测试多行 TextInput
我正在尝试使用 detox 在我的 react-native 应用程序中测试表单。
表单中的输入之一具有multiline={true}
.
我正在尝试运行以下测试:
该测试未能通过 75% 的可见性标准,因为键盘隐藏了提交按钮。
通常对于 TextInput ,multiline={false}
您只需附加\n
到输入字符串即可自动移动到下一个阶段,但对于多行输入\n
,只需添加一个新行。
我该怎么做才能通过这个排毒测试?
react-native - 如何判断 Detox 正在运行测试?
我正在使用Detox在我的 React Native 项目中运行端到端测试。我还在使用predicter.js 来模拟我的API 请求,我正在努力寻找一种方法来了解应用程序当前是否处于“测试”模式。
我正在向下传递一个 env 变量(并使用babel-transform-inline-environment-variables
)来告诉我是否应该模拟请求,但这会破坏shim.js
我们的发布版本。
有什么方法可以告诉 Detox 启动了应用程序并在 JS 中运行测试?理想情况下,我正在寻找在测试时设置的某种变量或从命令行(TESTING=true react-native start
或__TESTING__
)传递的东西
react-native - 排毒 - 按数字键输入
我想知道如何使用本机键盘输入数字,然后使用“\n”在 Detox 上的普通字符串上像 typeText 一样输入它
// await typeText('${screen_id}_screen_question_${question_id}_answer_input_', '\n');
我怎样才能用数字实现这一点?
每当我执行 typeText ('n') 时,它都会给我GREYKeyboard: No known SHIFT key was found in the hierarchy.
.
在我的假设中,因为小键盘键没有 Enter 键。但仍然不确定它为什么要寻找 Shift 键。
谢谢
react-native - Wix Detox E2E 测试 - 提高速度
我的 E2E 测试目前需要大约 8 分钟进行 24 次测试——它们是非常简单的场景,不应该花费时间。
很多时间都花在点击元素上(我猜它正在等待在 UI Hierarchy 中搜索元素)
有关如何提高性能的任何提示 - 演示似乎非常快,因此我正在做的事情可能是不正确的。
您的 E2E 需要多长时间?当您搜索元素时,您是进行层次搜索还是 id-search?
排毒版本:6.0.2 RN 版本:0.50.4 XCODE:9.2 模拟器:10.3
react-native - 如何使用 jest 和 detox 生成代码覆盖率报告?
我使用 jest 进行单元测试,并使用 detox 进行一些自动化(使用 jest 作为测试运行器)。这是我的设置package.json
我想查看合并后的代码覆盖率,我该怎么做?
testing - 排毒 - 无法在屏幕上找到元素
我试图解决Detox - Enter on Numpad的问题,从而导致了这个问题。
根据屏幕,我有一个带数字的输入字段。所以没有回车键或 typeText '\n' 来输入它。所以我想到了点击标题以隐藏键盘的解决方案。但是,即使标题在那里。使用 testID = {..._screen_header_}
它仍然给我一个错误
"Recovery Suggestion" : "检查元素是否存在于下方打印的UI层级中,如果存在,调整匹配器,使其准确匹配元素。" }
Steps to Reproduce 只有一个标题或任何元素,因为这个问题发生在一个地方,它也无法找到屏幕。这意味着排毒框架无法找到该项目。
Detox、Node、Device、Xcode 和 macOS 版本 Detox:5.10 节点:8.7.0 设备:iPhone 7 Xcode:9.1 macOS:10.13.2
react-native - 当元素不存在时,期望元素不存在超时
我正在尝试验证一个元素不存在。但是当我这样做时:
我收到“错误:超过 240000 毫秒的超时。对于异步测试和挂钩,请确保调用了“done()”;如果返回 Promise,请确保它已解决。”
排毒:5.10.0 节点:5.6.0 设备:iPhone 6s plus(模拟器) Xcode:9.2 macOS:Sierra 10.12.6
设备和详细排毒日志
排毒动词 ws 发送:{"type":"invoke","params":{"target":{"type":"Invocation","value":{"target":{"type":"Invocation", "value":{"target":{"type":"EarlGrey","value":"instance"},"method":"detox_selectElementWithMatcher:","args":[{"type":"Invocation", "value":{"target":{"type":"Class","value":"GREYMatchers"},"method":"detox_matcherForAccessibilityLabel:","args":[{"type":"NSString", "value":"Saldo de conta-corrente"}]}}]}},"method":"atIndex:","args":[{"type":"NSInteger","value":0}]}},"method":"performAction:","args":[{"type":"Invocation","value":{"target":{"type": "Class","value":"GREYActions"},"method":"actionForTap","args":[]}}]},"messageId":10}
排毒动词 ws onMessage: {"type":"invokeResult ","messageId":10,"params":{"result":"(GREYElementInteraction)"}}
排毒动词 wsactionForTap","args":[]}}]},"messageId":10}排毒动词 ws onMessage: {"type":"invokeResult","messageId":10,"params":{"result":" (GREYElementInteraction)"}}排毒动词 wsactionForTap","args":[]}}]},"messageId":10}排毒动词 ws onMessage: {"type":"invokeResult","messageId":10,"params":{"result":" (GREYElementInteraction)"}}排毒动词 ws
排毒动词 ws 发送:{"type":"invoke","params":{"target":{"type":"Invocation","value":{"target":{"type":"Class", "value":"GREYCondition"},"method":"detoxConditionForNotElementMatched:","args":[{"type":"Invocation","value":{"target":{"type":"EarlGrey", "value":"instance"},"method":"detox_selectElementWithMatcher:","args":[{"type":"Invocation","value":{"target":{"type":"Class", "value":"GREYMatchers"},"method":"detoxMatcherForBoth:and:","args":[{"type":"Invocation","value":{"target":{"type":"Class","value":"GREYMatchers"},"method":"detox_matcherForAccessibilityLabel:","args":[{"type":"NSString", "value":"Erro"}]}},{"type":"Invocation","value":{"target":{"type":"Class","value":"GREYMatchers"},"method ":"matcherForNotNil","args":[]}}]}}]}}]}},"method":"waitWithTimeout:","args":[{"type":"CGFloat","value" :0.8}]},"messageId":11}"args":[{"type":"NSString","value":"Erro"}]}},{"type":"Invocation","value":{"target":{"type":"类","值":"GREYMatchers"},"method":"matcherForNotNil","args":[]}}]}}]}}]}},"method":"waitWithTimeout:","args" :[{"type":"CGFloat","value":0.8}]},"messageId":11}"args":[{"type":"NSString","value":"Erro"}]}},{"type":"Invocation","value":{"target":{"type":"类","值":"GREYMatchers"},"method":"matcherForNotNil","args":[]}}]}}]}}]}},"method":"waitWithTimeout:","args" :[{"type":"CGFloat","value":0.8}]},"messageId":11}","args":[{"type":"CGFloat","value":0.8}]},"messageId":11}","args":[{"type":"CGFloat","value":0.8}]},"messageId":11}
1) Saldo conta corrente排毒动词 ws send: {"type":"cleanup","params":{"stopRunner":false},"messageId":12}
排毒动词 ws onMessage: {"type":"cleanupDone","messageId": 12,"params":{}}
排毒动词 ws0 通过 (4m)
1 失败咨询 Saldo
conta corrente:错误:超过 240000 毫秒的超时。对于异步测试和钩子,确保调用了“done()”;如果返回 Promise,请确保它已解决。
react-native - 使用 React-native detox 覆盖权限
在 react-native android 上使用 detox。了解如何在 android 上为应用程序允许覆盖权限会很有帮助。
jestjs - 如何将 Jest globalSetup 与 Detox 一起使用
我想将globalSetup
和globalTeardown
from Jest 与 Detox 一起使用,以便 detox 设置只发生一次,但如果 init 不是 beforeAll,则 Detox 似乎会失败。
有什么建议么?
开玩笑版:22.0.4 排毒版:6.0.4
配置: