使用detox以不同的方向查看UI(Android)

使用detox以不同的方向查看UI(Android),android,react-native,detox,Android,React Native,Detox,所以我用它来截图我的应用程序。我正在使用一个连接的Android设备。device.takeScreenshot功能正常工作。现在,什么是查看我的应用程序在不同方向上的外观的最佳方式?只有这样才能更改平板电脑方向并再次运行测试吗?或者有更聪明的方法吗?我不完全确定你在问什么,但为了改变方向,你可以使用 只有这样才能更改平板电脑方向并再次运行测试吗 对我来说,这听起来像两个独立的用例(纵向和垂直)。更容易维护 最后,就屏幕截图测试而言,您可能会发现解毒中描述的实践非常有用: 该概念主要用于以快照

所以我用它来截图我的应用程序。我正在使用一个连接的Android设备。device.takeScreenshot功能正常工作。现在,什么是查看我的应用程序在不同方向上的外观的最佳方式?只有这样才能更改平板电脑方向并再次运行测试吗?或者有更聪明的方法吗?

我不完全确定你在问什么,但为了改变方向,你可以使用

只有这样才能更改平板电脑方向并再次运行测试吗

对我来说,这听起来像两个独立的用例(纵向和垂直)。更容易维护

最后,就屏幕截图测试而言,您可能会发现解毒中描述的实践非常有用:

该概念主要用于以快照测试的形式验证设备屏幕上出现的元素的正确视觉结构和布局。即,通过以下概念性步骤:

  • 拍摄一次屏幕截图,并在视觉上手动验证
  • 将其存储为e2e测试资产(即快照)
  • 从那时起,将其作为参考点,与后续测试中截图进行比较
  • const fs=require('fs');
    描述('成员区域',()=>{
    const snapshottedImagePath='./e2e/assets/snapshotted image.png';
    它('应该向成员发出通知',async()=>{
    const imagePath=(从设备上截图);//讨论>如下
    expectBitmapsToBeEqual(图像路径,快照图像路径);
    });  
    });
    函数expectBitmapsToBeEqual(imagePath,expectedImagePath){
    常量bitmapBuffer=fs.readFileSync(imagePath);
    const expectedBitmapBuffer=fs.readFileSync(expectedImagePath);
    如果(!bitmapBuffer.equals(expectedBitmapBuffer)){
    抛出新错误(${imagePath}处的“预期图像”等于${expectedImagePath}处的图像>,但它不同!`);
    }
    }
    
    重要提示:推荐的更实用的方法是使用更高级的第三方图像快照和比较工具,如applitools


    因此,device.setOrientation(orientation)指南中说“目前仅在iOS模拟器中可用”。文件是不是过时了?我希望它能在Android设备上工作(物理)。对此我很抱歉。它应该在Android上也能工作!