排毒测试 device.disableSynchronization() 适用于 iOS 但不适用于 android
Detox Test device.disableSynchronization() works on iOS but not android
我的测试套件 运行 在 iOS 上运行良好,应用程序有许多后台进程 运行ning 阻止大部分测试在同步模式下工作。在 iOS 模拟器上正确地执行了不同步的命令 运行,但是当我在 android 模拟器上 运行 它们时,就好像我从未调用过 await device.disableSynchronization() .
测试仍然挂起并且控制台记录:
The app is busy, due to:
- Enqueued timers
- Animations running on screen
关于如何解决这个问题有什么想法吗?
进一步查看显示错误信息:
The app has not responded to the network requests below:
奇怪的是列出的网络请求 已经 完成。该应用程序据称未响应的请求是一个按钮推送,该按钮导航到一个新屏幕,这会导致一个有点冗长的网络请求。网络请求完成后,其他进程不断 运行 需要禁用同步。由于 Detox 仍在等待应用程序对按钮点击的一些响应,因此它不会继续进行下一个去同步的操作。有什么方法可以确保 Detox 收到这个 .tap() 的响应?
更深入的调查表明,这可能是由挥之不去的动画引起的,无论出于何种原因 device.disablesynchronization() 在 Android 构建时都会忽略该动画。我现在正在根据 wix 提供的过时文档模拟此文件。
我的测试套件 运行 在 iOS 上运行良好,应用程序有许多后台进程 运行ning 阻止大部分测试在同步模式下工作。在 iOS 模拟器上正确地执行了不同步的命令 运行,但是当我在 android 模拟器上 运行 它们时,就好像我从未调用过 await device.disableSynchronization() .
测试仍然挂起并且控制台记录:
The app is busy, due to:
- Enqueued timers
- Animations running on screen
关于如何解决这个问题有什么想法吗?
进一步查看显示错误信息:
The app has not responded to the network requests below:
奇怪的是列出的网络请求 已经 完成。该应用程序据称未响应的请求是一个按钮推送,该按钮导航到一个新屏幕,这会导致一个有点冗长的网络请求。网络请求完成后,其他进程不断 运行 需要禁用同步。由于 Detox 仍在等待应用程序对按钮点击的一些响应,因此它不会继续进行下一个去同步的操作。有什么方法可以确保 Detox 收到这个 .tap() 的响应?
更深入的调查表明,这可能是由挥之不去的动画引起的,无论出于何种原因 device.disablesynchronization() 在 Android 构建时都会忽略该动画。我现在正在根据 wix 提供的过时文档模拟此文件。