【App自动化测试】(十八)多设备管理平台——openSTF

news2024/11/28 20:52:19

目录

  • 1. openSTF
  • 2. openSTF的安装部署
    • 2.1 MacOS
    • 2.2 Windows
  • 3. STF操作
    • 3.1 基础操作——远程调试虚拟设备
    • 3.2 高阶操作——远程调试真机


1. openSTF

OpenSTF:是一个手机设备管理平台,可以对手机进行远程管理、调试、远程手机桌面监控等操作。

特点:通过无线来进行远程管里、调试、监控

优点:STF的核心就是远程,它比本地多出很多优势,它可以构建一个测试平台的,这个平台可以连接多个设备,这些设备可以把放在同一个局域网内的远程调试。当我们把局域网的一些必要端口(比如说机器远程调试端口5555,openSTF网页端7100等)暴露到公网上,我们就可以实现一个跨地点的设备调试,这样就不用带着多个设备到处跑了。

2. openSTF的安装部署

对于Windows系统openSTF的安装是一个大难点,使用docker安装比较好。

2.1 MacOS

brew install rethinkdb graphicsmagick zeromq protobuf yasm pkg-config

2.2 Windows

  1. 拉取镜像

    docker pull openstf/stf:latest
    docker pull sorccu/adb:latest
    docker pull rethinkdb:latest
    
  2. 启动rethinkdb

    docker run -d --name rethinkdb -v [宿主机目录]:/data --net host rethinkdb  rethinkdb --bind all --cache-size 8192 --http-port 8090
    
    #示例:
    docker run -d --name rethinkdb -v /srv/rethinkdb:/data --net host rethinkdb  rethinkdb --bind all --cache-size 8192 --http-port 8090
    

    注:

    1. rethinkdb一定要最先启动
    2. 要定要挂载目录,把容器目录保存到本地。
    3. 网络模式一定要选择好host模式
  3. 启动stf

    docker run -d --name stf --net host openstf/stf stf local --allow-remote
    

    1. 在rethinkdb后启动
    2. 一定要加参数:--allow-remote
  4. 启动adb:建议把本机的sdk设置成环境变量,不建议使用docker安装的adb

3. STF操作

3.1 基础操作——远程调试虚拟设备

  • 第一步:浏览器访问:localhost:7100
    在这里插入图片描述

  • 第二步:运行一个AVD模拟器

  • 第三步:在stf中可以查看对应模拟器,并进行控制模拟器,进行操作

    • 网页显示已经有可操控的设备。

      示例:
      在这里插入图片描述

    • 点击模拟器后,可以在web端直接控制模拟器或进行其他功能

      示例:
      在这里插入图片描述

3.2 高阶操作——远程调试真机

  • 第一步:真机USB接入进行调试。打开手机的开发者模式。

    示例:多了一个真机设备
    在这里插入图片描述

  • 第二步:打开手机的远程调试端口

    #给手机开了一个5555的远程调试端口
    adb -s [真机名称] tcpip 5555 restarting in TCP mode port:5555
    
  • 第三步:查看真机远程调试IP

    adb -s [真机名称] shell ifconfig
    #注:三星、华为等部分手机没有权限查看ifconfig。
    

    注意:无权限查看ifconfig的话。可以通过手机设置(WIFI)中查看ip地址,再查看本机ip地址,如果两个地址网段相同,可以确认二者属于同一网段,此时手机的IP地址可用。

  • 第四步:连接手机IP

    adb connect [手机IP]:5555
    

    示例:连接手机ip后再查询设备,可以发现列表中多了一个远程远程设备
    在这里插入图片描述

  • 第五步:把真机的USB链接线拔掉,STF仍然会出现机器,此时还可进行远程操作

    示例:拔掉数据先,界面上还有一个真机
    在这里插入图片描述

    注意:真机的USB数据拔掉后,需要重新在连接一下远程IP。主要做以下操作:

    adb connect  远程控制手机的IP:端口号
    

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/572715.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

有关深度学习打标签DIY的五种方式

有关深度学习打标签DIY的五种方式:Labelme、LabelImg、EISeg、Make Sence和CVat等 五种制作Label的方式:1.CVAT(Open Data Annotation Platform)2.EISeg(Efficient Interactive Segmentation)自动标注3.Mak…

中国人民大学与加拿大女王金融硕士国际班——全方位培养金融人才,你心动了吗

中国人民大学与加拿大女王大学中外合作办学的金融硕士项目有国际班(使用英文授课,无工作经验要求)和高管班(使用中文授课,一般需在中国金融行业拥有至少7年以上的工作经验)两个班次,属于滚动式录…

机器学习模型——分类模型

文章目录 K近邻(KNN)KNN示例KNN距离计算KNN算法代码实现1. 引入依赖:2. 数据加载和预处理:3. 核心算法实现:4. 测试: 逻辑斯谛回归线性回归问题分类边界曲线——逻辑斯谛回归Sigmoid函数(压缩函…

多模块更新,助力模型训练及应用|ModelWhale 版本更新

绿暗红稀,蝉鸣草长。本次更新中,ModelWhale 带来了一系列的功能优化,期待为你提供更好的使用体验。 本次更新中,ModelWhale 主要进行了以下功能迭代: • 优化 模型与人工组合式数据标注(团队版✓ &#xf…

基于stm32F407的hal库,移植FreeRTOS的具体步骤和遇到的问题(看正点原子的视频)

1. 资料准备 因为板子是stm32F407的第二版的,所以开始下的资料是旧版本的,但是旧版本的FreeRTOS工程没有hal库的,都是标准库的,这里是下载stm32F407最新版的资料,进行移植。 资料可以在正点原子官网下载,…

格式化输出Printf总结说明

一,简介 在C语言运行调试过程中,需要使用printf进行打印log信息,本文主要介绍常用的printf打印格式信息,方便提高调试的效率。 二,Printf转换说明 printf函数的转换说明由字符%和跟随其后的最多5个不同的选项构成&a…

PHP快速实战18-PHP使用PHPMailer来发送邮件

文章目录 前言安裝与实现步骤1:下载PHPMailer步骤2:包含PHPMailer文件步骤3:设置SMTP服务器和端口号步骤4:设置发件人和收件人步骤5:设置邮件主题和内容步骤6:添加附件(可选)步骤7&a…

深度学习-第T8周——猫狗识别

深度学习-第T8周——猫狗识别 深度学习-第T8周——猫狗识别一、前言二、我的环境三、前期工作1、导入数据集2、查看图片数目 四、数据预处理1、 加载数据1.1、设置图片格式1.2、划分训练集1.3、划分验证集1.4、查看标签1.5、再次检查数据1.6、配置数据集 2、数据可视化 五、搭建…

GMesh网格选项介绍

GMesh网格介绍 2D mesh algorithm MeshAdapt:这是一种自适应网格算法,可在需要更大的精度或在某些区域需要更密集的网格时自动添加额外的网格。该算法的优点包括较高的收敛性和灵活性,它可以让用户在需要的地方添加更多的网格,但…

隐形黑客潜入美国和关岛关键基础设施而未被发现

微软和“五眼联盟”国家周三表示,一个隐秘的组织成功地在美国和关岛的关键基础设施组织中建立了一个持久的立足点,而没有被发现。 这家科技巨头的威胁情报团队正在以伏特台风(Volt Typhoon)的名义跟踪这些活动,包括入侵后的凭证访问和网络系…

如何实现torna文档生成管理工具api接口从内网到外网的访问?

企业接口文档解决方案,目标是让文档管理变得更加方便、快捷。Torna采用团队协作的方式管理和维护项目API文档,将不同形式的文档纳入进来,形成一个统一的维护方式。下面简单给大家介绍一下torna接口文档管理工具都有哪些功能特性: …

【Java EE 初阶】TCP协议的安全效率机制

目录 1.应用层协议 2.传输层协议 3.UDP协议格式 4.TCP协议格式 5.TCP的安全效率机制 1.确认应答机制 2.超时重传机制 但是,主机A未收到B发来的确认应答,也可能是因为ACK丢失了; 3.连接管理机制 面试题:会不会有可能变成三…

【A卡,Windows】stable diffusion webui下载安装避坑指南

观前提醒 本文内容都是本人亲身经历的,一个一个安装下载测试所感,当然如果你更想用傻瓜式集成包的,那还是跳过这篇文章吧。 当然我不推荐这篇文章的操作,因为我用了差不多1h才有一副图,有N卡,就用N卡&…

jdk14——独立打包工具jpackage

jpackage是jdk14正式加入的一个用于独立打包的工具; 官网简介翻译: jpackage工具将以Java应用程序和Java运行时映像作为输入,并生成一个包含所有必要依赖项的Java应用程序映像。它可以生成特定于平台格式的本机软件包,例如Windo…

【UE】制作可拖动的UI

效果 步骤 1. 新建一个控件蓝图并打开 这里我在画布面板中加了一个垂直框,垂直框内包含一个按钮和一个图像控件 我设置图像控件占垂直框的2/3,按钮占1/3 添加按钮按压事件、松开事件 在控件蓝图的事件图表中添加如下节点,其中“Close”、“…

通达信三重滤网交易系统指标公式(含强力指数指标)

三重滤网交易系统由《以交易为生》的作者亚历山大埃尔德(Alexander Elder)发明的,1986年首次公开,后续又不断改进,增加或者改变了一些细节,但是使用多重时间周期和技术指标进行分析决策的原理没变。 一、强力指数指标 《以交易为…

Taro 项目怎么获取元素的高度和视口高度

最近做小程序,用的Taro,需要设置空状态居中显示,因为空状态出现的地方不一样,所以需要动态设置,那么就需要获取元素的高度来计算 文档翻了一遍也没有找到,原生js获取高度得到的是null,百度了下…

点云拟合平面原理和实现(Halcon)

最近学习了一下拟合平面的原理,看了这篇文章最小二乘拟合平面(C版) - 知乎 讲到了以下几种方法,我这里在halcon中对其一一实现。 一、算法原理 1,直接求解法 2.使用拉格朗日乘子法 3 SVD分解法 二、Halcon实现 1.各方法对比 在halcon中…

Python - 面向对象编程 - 类变量、实例变量/类属性、实例属性

什么是对象和类 什么是 Python 类、类对象、实例对象 类变量、实例变量/类属性、实例属性 前言 只是叫法不一样 实例属性 实例变量 类属性 类变量 个人认为叫属性更恰当 类属性和实例属性区别 类属性,所有实例对象共享该属性实例属性,属于某一…

win10系统如何设置虚拟回环

在日常生活中,人们(特别是IT行业者)通常需要在一台机上进行软件测试,而同一台计算上通常只能使用一个地址,而在需要同时使用两个地址进行测试的时候就显得捉襟见肘。此方法通过配置window10自带的环回适配器,达到上述目的。 win1…