问题标签 [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.

0 投票
1 回答
2403 浏览

react-native - 点击 SectionList 组件的子视图

我有 SectionList 呈现多行。我正在尝试点击 renderItem 中的视图。但我无法通过其 ID 访问该视图。

我用它来点击整个行视图。

关于如何实现这一点的任何建议?谢谢!

0 投票
2 回答
580 浏览

react-native - iOS:两次运行相同测试后出现 Earlgrey/Detox 错误

两次运行相同的测试第二次失败。

重现步骤:

该测试通过:

这失败了:

Detox、Node、Device、Xcode 和 macOS 版本

  • 设备:iPhone 6 iOS 11.1(模拟器)

设备和详细排毒日志

关于可能是什么问题的任何想法?

0 投票
0 回答
335 浏览

circleci - 排毒+循环CI

如果我能有办法在 CircleCI 上运行排毒,那就太好了。我看到了一些关于在 Travis 上运行的帖子,但因为我是 CI 的新手。所以我仍然不确定在 CircleCI 上设置和运行测试的好方法是什么。

0 投票
1 回答
442 浏览

detox - 模拟器启动应用前超时,instrumentationProcess 因收到 null 信号而终止

当我运行排毒测试时,我的应用程序正在安装在 android 模拟器中,然后出现错误:

instrumentationProcess 由于收到信号 null 而终止

1)“首先”钩子

0 通过 (2m) 1 失败

1)“首先”钩子:错误:超过 120000 毫秒的超时。对于异步测试和钩子,确保调用了“done()”;如果返回 Promise,请确保它已解决。

child_process.js:635 抛出错误;^

错误:命令失败:node_modules/.bin/mocha e2e --opts e2e/mocha.opts --configuration android.emu.debug --loglevel verbose
at checkExecSyncError (child_process.js:592:13) at Object.execSync (child_process. js:632:13) 在 runMocha (/Users/housing/housing-app/node_modules/detox/local-cli/detox-test.js:56:6) 在 Object. (/Users/housing/housing-app/node_modules/detox/local-cli/detox-test.js:36:5) 在 Module._compile (module.js:624:30) 在 Object.Module._extensions..js (module.js:635:10) 在 Module.load (module.js:545:32) 在 tryModuleLoad (module.js:508:12) 在 Function.Module._load (module.js:500:3) 在 Function .Module.runMain (module.js:665:10)

我正在使用:Detox 版本 - 5.10.0,react-native - 0.44.0,Node - v8.6.0,设备 - android 模拟器,macOS - Sierra

我该如何解决这个问题?有什么建议么...

0 投票
1 回答
887 浏览

ios - 排毒:iOS 模拟器如何在键盘上按 Next

输入用户电子邮件地址后,我希望 Detox 按下一步移动到密码字段。

我试图通过元素 ID 查找密码字段并要求.tap()焦点,但键盘部分遮挡了密码字段,并且未能通过 75% 的可见性标准。

知道如何解决这个问题吗?我正在使用 detox 来测试一个 react-native 应用程序。

谢谢。

0 投票
0 回答
884 浏览

android - React Native Detox e2e 测试,在滚动视图上尝试 .scroll 会在 3 次尝试后触发错误执行点击

我不知道是将其设置为问题还是在这里询问,这仅在android中进行了测试,我在嵌套stacknavigator(堆栈上的各种滚动视图,只有一个可见)内的屏幕中有滚动视图,我是试图向下和向上滚动,而它会引发下一个错误

这是代码

我尝试通过标签和.atIndex()获取它,也失败了,尝试了刷卡和滚动到,并且都失败了,刷卡只是失败说刷卡无法完成

我会很感激任何支持

0 投票
4 回答
7082 浏览

ios - 排毒:iOS 模拟器如何确认警报信息

我正在使用来自 react-native 的警报。

如何排毒以按警报消息上的“注销”按钮?

在此处输入图像描述

我尝试使用await element(by.text('Log out')).tap();

但我得到“多个元素匹配”错误。大概它会找到 3 个具有相同标签的元素。带有“注销”标签的原始按钮用于触发警报消息、警报消息标题和我要排毒的警报消息按钮。

我想一种方法是使用.atIndex(),但这意味着每次发生变化时我都需要使用索引来确定正确的元素。

没有更好的方法来解决这个问题吗?

谢谢。

0 投票
1 回答
568 浏览

ios - 在 Travis 中安装 fbsimctl

我正在开发一个新的构建 travis,它在 iOS 上集成了 e2e 测试,但我在安装fbsimctl. 我想使用detox,这是使用它的先决条件之一。

这是尝试安装时的日志:

我授予的缓存权限如下:

但我不知道我还需要什么。

谢谢

0 投票
0 回答
790 浏览

ios - typeText 停止排毒线程

我有 typeText() 的问题

这些说明有效:

但这些没有:

使用 typeText,该字段被填充,但键盘保持可见,焦点仍然在该字段上。此时排毒线程停止,直到超时。

我必须做一些特别的事情才能使用 typeText 吗?

编辑:

在我的应用程序的第二部分,我必须使用文本区域中的键盘来触发操作:

就像登录一样,测试线程通过 typeText() 停止

在此处输入图像描述

谢谢

0 投票
1 回答
992 浏览

ios - React Native detox 记录测试脚本的用户交互

我正在使用detox来测试 iOS 中的 react native 应用程序。(排毒写在EarlGrey 之上)。

我更喜欢使用 Detox 的by.id 匹配器,它使用 React Native 的 testID(iOS 的可访问性 ID)

我遇到的问题是在我的应用程序的每个页面上找到正确的 testID 以编写测试用例所需的时间。有没有办法记录我的用户交互,以便我可以快速生成排毒测试脚本?我主要在模拟器中单击各种按钮。或者,有没有办法在运行时快速查看反应本机应用程序中的 testID?

我尝试了以下方法,但发现速度很慢:

  1. 当 detox 测试用例失败时,它会在日志中打印带有 UI 层次结构的错误日志。虽然有帮助,但我发现这是一种查找测试 ID 的缓慢方法。
  2. React Native 检查器允许我通过单击页面上的各种 UI 元素来查看它们。不幸的是,它没有列出 testID,所以我必须扫描代码以查看作为 testID 传递的值。