什么是OpenSTF?
OpenSTF(Smartphone Test Farm)是一个web端移动设备管理平台,可以从浏览器端远程调试、远程管理设备。其实有点类似于我们现在很火热的云测平台,如:testin、百度MTC等等。并且这个项目在Github上开源:https://github.com/openstf/stf, 遵循Apache License 2.0开源协议。很多公司内部团队现在都开始通过STF建设自己的平台。
先看看项目的运行效果截图(摘抄自官网)
支持的功能
Android 2.3 ~ Android 9.0 (IOS目前不支持)
手机不需要root
实时屏幕演示(刷新速率可达30-40fps)
远程控制(包括点击、输入数据、复制粘贴)
安装、卸载应用
执行shell命令
支持chrome远程调试工具
文件资源管理器访问设备文件系统
......
安装部署(虚拟机+Docker)
官方推荐用Linux系统或者Mac系统来部署STF环境,因为Windows下adb连接不是很稳定。由于我个人PC安装的是Windows,所以只好通过虚拟机来搭建这样一套环境。现在STF支持通过Docker来安装,要比传统安装方式省事很多,所以也推荐大家用Docker安装方式。
虚拟机安装Ubuntu系统
选用Vmware Workstation或者VitualBox都可以,个人选用的是Vmware,安装的Ubuntu版本是16.04 LTS,这一步大家可以从网上搜索到很多教程,就不再赘述。
Vmware设置网络桥接模式
安装Docker
$ sudo apt-get update # 更新软件包
$ sudo apt-get install docker-ce docker-ce-cli containerd.io # 安装Docker
拉取STF相关镜像
$ sudo docker pull openstf/stf:latest # STF镜像
$ sudo docker pull sorccu/adb:latest # adb 镜像
$ sudo docker pull rethinkdb:latest # rethinkdb 镜像
$ sudo docker pull openstf/ambassador:latest # ambassador 镜像
$ sudo docker pull nginx:latest # nginx 镜像
查看所有的镜像
sudo docker images
启动镜像
$ docker run -d --name rethinkdb -v /srv/rethinkdb:/data --net host rethinkdb rethinkdb
--bind all --cache-size 8192 --http-port 8090 # 启动rethinkdb数据库
$ docker run -d --name adbd --privileged -v /dev/bus/usb:/dev/bus/usb
--net host sorccu/adb:latest # 启动adb
$ docker run -d --name stf --net host openstf/stf stf local
--public-ip 192.168.140.129 # 启动stf 启动的时配置的IP地址通过ifconfig命令查询到的结果
查看运行中的容器
$ sudo docker ps -a
最后在虚拟机里的浏览器或者本地PC端浏览器输入:http://192.168.140.129:7100 即可访问
默认用户名密码用任意字符串即可登录上