拓展-移动端测试-sonic平台搭建
1.移动端ui测试框架:Airtest
官网文档:https://airtest.readthedocs.io/zh_CN/latest/
2.云真机测试平台:Sonic
官网文档:https://sonic-cloud.gitee.io/#/Deploy
部署步骤:
1)后端(部署linux环境-参考官网一键部署方式)
2)前端(部署linux环境-参考官网一键部署方式)
3)Agent端部署(必须部署在windows环境下)
a.安装依赖 node.js、npm、jdk16、安卓sdk、appium
b.node.js
自行百度,最后是16.x稳定版,或者参考linux安装方法
c.npm
自行百度,一定要替换安装源,或者参考linux安装方法
d.jdk16
安装自行百度,java jdk 国内下载镜像地址: (1)TUNA镜像 https://mirrors.tuna.tsinghua.edu.cn/AdoptOpenJDK/ (2)HUAWEI镜像 https://repo.huaweicloud.com/java/jdk/ (3)injdk https://www.injdk.cn/ (4)http://www.sousou88.com/spec/java_openjdk.html
e.安装sdk
自行百度,或者参考linux安装方法
f.appium
npm install -g appium@1.19.1
3)Agent端(Ubuntu20.04桌面版)
a.npm安装(官方安装参考档:https://github.com/nodesource/distributions):
步骤:
1)第一步,去 nodejs 官网 https://nodejs.org 看最新的版本号(建议选择稳定版本);
2)第二步,添加源后安装
添加源: curl -sL https://deb.nodesource.com/setup_16.14.0 | sudo -E bash -
下载: sudo apt-get install -y nodejs
验证:
nodejs -v
安装npm: apt install npm
验证npm(无报错就是成功的):
npm -v
设置npm下载源为淘宝的(可以自行换源): sudo npm config set registry https://registry.npm.taobao.org
b.jdk16安装:
方法一(不推荐使用,我搞失败了,直接使用方法二)
1)下载jdk16(在跟目录新建一个java文件夹,下载后放进去)
http://jdk.java.net/archive/
2)解压jdk16
tar -zxvf openjdk-16.0.1_linux-x64_bin.tar.gz
3)配置环境变量
进入系统环境变量设置:vim /etc/profile
添加环境变量
export JAVA_HOME=/usr/share/openjdk-16.0.1_linux-x_bin export PATH=$JAVA_HOME/bin:$PATH export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
重启系统,不要使用source /etc/profile 没有用,我试了
注意点,不知道java安装在哪里了可以使用命令查看:
java -verbose
方法二:
5)直接在ubuntu中下载:
apt install openjdk-16-jre-headless
查看版本
c.安装SDK安装:
方法一(我试过了,最终运行的时候检测不到ANDROID_HOME系统变量,参考我方法二):
apt install android-sdk apt install android-tools-adb apt install android-tools-fastboot
验证(adb):
方法二:
1)下载安卓包
在国内源下载SDK Tools: https://www.androiddevtools.cn/
2)选择目录进行解压,进入到解压目录,使用命令进行升级:
tools/android update sdk --no-ui
3)配置环境变量,vim /etc/profile 目录:
vim进入到/etc/profile后,在末尾加上: export ANDROID_HOME=/home/kemi/android-sdk-linux export PATH=$ANDROID_HOME/tools:$ANDROID_HOME/platform-tools:$PATH
4)重启一下ubuntu,别图省事用source /etc/profile ,我试过了,没得用
d.谷歌浏览器安装:
安装依赖: apt-get install libxss1 libappindicator1 libindicator7
下载谷歌浏览器包: wget https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb
安装浏览器: sudo dpkg -i google-chrome*.deb sudo apt-get install -f
e.谷歌驱动安装:chromedriver.exe
查找对应浏览器的驱动后,在如下网站找到对应驱动并下载: https://registry.npmmirror.com/binary.html?path=chromedriver/98.0.4758.80/
下载下来的包,进行存档 移动: 安装存档依赖:apt-get install unzip 存档:unzip chromedriver_linux64.zip 移动:mv -f chromedriver /usr/local/share/chromedriver
建立软连接: ln -s /usr/local/share/chromedriver /usr/local/bin/chromedriver
f.Appium安装:
下载:
npm install appium -g --registry=https://registry.npm.taobao.org/
若遇到如下问题,说明安装的node.js和npm版本过低导致,需要升级:
升级
升级: 方法一:普通用户 curl -fsSL https://deb.nodesource.com/setup_current.x | sudo -E bash - sudo apt-get install -y nodejs sudo npm install -g npm 方法二:管理员 curl -fsSL https://deb.nodesource.com/setup_current.x | bash - apt-get install -y nodejs sudo npm install -g npm
验证:
j.配置agent:
1)在代理中心生成一个key值:
2)根据文档修改host、key、driver路径
java -jar sonic-agent-xxxx.jar
问题1:
使用python3.6以上版本安装: pip3 install -U "tidevice[openssl]"
问题2:
npm i -g adbkit
开启成功:
4)IOS端设备接入
5)启动agent端服务(linux)
问题1:
解决方案(安装有python3.6以上用如下命令,不是的话看他提供的链接):
pip3 install -U "tidevice[openssl]"
问题2:
npm i -g adbkit
问题3:检测不到appium的js文件信息(怀疑是 自行升级后node.js和npm 之后下载的 appium 有缓存,我这里卸载掉appium 重新下载这个问题没有了。)
卸载: npm uninstall -g appium 安装: npm i -g appium
6)启动agent端服务(windows)
这里不做展示,启动方法与linux一致
7)效果展示
爱折腾的小测试
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律