美文网首页
「React Native」UI自动化环境搭建(IOS)

「React Native」UI自动化环境搭建(IOS)

作者: 七月流火_9405 | 来源:发表于2021-02-20 17:17 被阅读0次

一、环境搭建

1.安装xcode
2.安装HomeBrew
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install.sh)"
3.安装 applesimutils
brew tap wix/brew

brew install applesimutils
4.全局安装detox-cli
npm install -g detox-cli
5.局部安装detox
npm install detox --save-dev
6.局部安装jest、jest-cli和jest-circus
npm install jest jest-cli jest-circus --save-dev
7.将Detox初始化为使用Jest
detox init -r jest
8.修改配置

1)删除自动创建的.detoxrc.json 文件
2)配置 package.json 文件,添加 下边代码

 "detox": {
    "test-runner": "jest",
    "configurations": {
      "ios.sim.debug": {
        "binaryPath": "./ios/build/Build/Products/Release-iphonesimulator/testReactNativeDetox.app",
        "build": "xcodebuild -workspace ios/testReactNativeDetox.xcworkspace -configuration release -scheme testReactNativeDetox -sdk iphonesimulator -derivedDataPath ios/build EXCLUDED_ARCHS=arm64 DETOX=1",
        "type": "ios.simulator",
        "name": "iPhone 11"
      }
    }
  }

其中binaryPath: 是APP运行的路径,如果没有build,先run一个app,就会生成build,把项目名称修改成自己的工程即可
build: build项目的时候用的命令,特别注意-sdk后面跟的支持的设备,最好在终端通过

xcodebuild -showsdks

查看当前支持的设备,我本地最终设置为-sdk iphonesimulator14.4。需要排除arm64,在detox build时,一直提示某个库在arm64上不存,排除即可。
name:是选择的模拟器,需要通过

applesimutils --list

查看当前支持的ios设备,然后填入。

9.修改run的scheme
image.png
10.运行测试
detox build
11.执行测试用例
detox test

二、采坑

1.直接根据官网安装,detox build,一直报错,提示在arm 64上,找不到GMObjC。
2.在Debug-iphonesimulator找不到GMObjC
3.未安装jest-circus
4.未修改build的scheme
5.写的iPhone 8 Plus不在支持的设备里
6.需要修改之前支持的最低版本,我默认是8.0,改成高版本之后,即可

三、效果

1.detox build结果
image.png
2.detox test结果
image.png

相关文章

网友评论

      本文标题:「React Native」UI自动化环境搭建(IOS)

      本文链接:https://www.haomeiwen.com/subject/kuhxfltx.html