| 万叶集 |
|---|
| 隐约雷鸣,阴霾天空。 |
| 但盼风雨来,能留你在此。 |
前言:
✌ 作者简介:渴望力量的哈士奇 ✌,大家可以叫我 哈士奇 ,一位致力于 TFS - 全栈 赋能的博主 ✌
CSDN博客专家认证、新星计划第三季全栈赛道 top_1 、华为云享专家、阿里云专家博主
如果文章知识点有错误的地方,请指正!和大家一起学习,一起进步
人生格言:优于别人,并不高贵,真正的高贵应该是优于过去的自己。
如果感觉博主的文章还不错的话,还请关注、点赞、收藏三连支持一下博主哦
专栏系列(点击解锁) 学习路线指引 知识定位 Python全栈白皮书 零基础入门篇 以浅显易懂的方式轻松入门,让你彻底爱上Python的魅力。 语法进阶篇 主要围绕多线程编程、正则表达式学习、含贴近实战的项目练习 。 自动化办公篇 实现日常办公软件的自动化操作,节省时间、提高办公效率。 自动化测试实战篇 从实战的角度出发,先人一步,快速转型测试开发工程师。 数据库开发实战篇 更新中 爬虫入门与实战 更新中 数据分析篇 更新中 前端入门+flask 全栈篇 更新中 django+vue全栈篇 更新中 拓展-人工智能入门 更新中 网络安全之路 踩坑篇 记录学习及演练过程中遇到的坑,便于后来居上者 网安知识扫盲篇 三天打鱼,不深入了解原理,只会让你成为脚本小子。 vulhub靶场漏洞复现 让漏洞复现变得简单,让安全研究者更加专注于漏洞原理本身。 shell编程篇 不涉及linux基础,最终案例会偏向于安全加固方向。 [待完结] WEB漏洞攻防篇 2021年9月3日停止更新,转战先知社区等安全社区及小密圈 渗透工具使用集锦 2021年9月3日停止更新,转战先知社区等安全社区及小密圈 点点点工程师 测试神器 - Charles 软件测试数据包抓包分析神器 测试神器 - Fiddler 一文学会 fiddle ,学不会倒立吃翔,稀得! 测试神器 - Jmeter 不仅是性能测试神器,更可用于搭建轻量级接口自动化测试框架。 RobotFrameWork Python实现的自动化测试利器,该篇章仅介绍UI自动化部分。 Java实现UI自动化 文档写于2016年,Java实现的UI自动化,仍有借鉴意义。 MonkeyRunner 该工具目前的应用场景已不多,文档已删,为了排版好看才留着。
文章目录
- 什么是 Capability
- Capability 配置讲解
- Capability 配置讲解 - 公共部分
我们在 app 自动化测试和 web自动化测试之间,很大的一个区别就是启动方式上的不同。 Selenium 在启动 web自动化的时候只需要一个 driver 即可,但是 app 自动化的时候就需要很多的设备信息。(就像上一章节我们实现访问通讯录的案例一样,在访问通讯录之前,设定了很多的启动参数,其实这些就是 appium 启动的时候需要携带的 Capability 的设备信息。)
根据 Capability 的样式我们可以发现它就是一个字典数据样式,如下:
desired_caps = {} # 定义 desired_caps 变量,用以赋值很多的启动信息
desired_caps['platformName'] = 'Android' # 设备名称、系统为 "Android"
desired_caps['platformVersion'] = '7.1.2' # 这里是在夜神模拟器的设置中心查看安卓版本是 "7.1.2" ,后续会告诉大家如何切换版本
desired_caps['deviceName'] = '127.0.0.1::62001' # 这里如果是真机的话填写的是设备名称;因为我们用的是模拟器,填写的是IP端口号
desired_caps['appPackage'] = 'com.android.contacts' # APP 的包名;这里我们使用的是通讯录
desired_caps['appActivity'] = '.activities.PeopleActivity' # 启动的界面的名字(也或者叫启动名,默认是 "." 开头的)
desired_caps['automationName']='UiAutomator1'
也或者可以直接将其理解为一个配置文件的模式,那么 Capability 到底是什么?里面又有着怎样的信息呢?这就是今天章节需要学习的内容。
我们在 app 自动化测试和 web自动化测试之间,很大的一个区别就是启动方式上的不同。 Selenium 在启动 web自动化的时候只需要一个 driver 即可,但是 app 自动化的时候就像哟很多的设备信息。(就像上一章节我们实现访问通讯录的案例一样,在访问通讯录之前,设定了很多的启动参数,其实这些就是 appium 启动的时候需要携带的 Capability 的设备信息。)
根据 Capability 的样式我们可以发现它就是一个字典数据样式,如下:
desired_caps = {} # 定义 desired_caps 变量,用以赋值很多的启动信息
desired_caps['platformName'] = 'Android' # 设备名称、系统为 "Android"
desired_caps['platformVersion'] = '7.1.2' # 这里是在夜神模拟器的设置中心查看安卓版本是 "7.1.2" ,后续会告诉大家如何切换版本
desired_caps['deviceName'] = '127.0.0.1::62001' # 这里如果是真机的话填写的是设备名称;因为我们用的是模拟器,填写的是IP端口号
desired_caps['appPackage'] = 'com.android.contacts' # APP 的包名;这里我们使用的是通讯录
desired_caps['appActivity'] = '.activities.PeopleActivity' # 启动的界面的名字(也或者叫启动名,默认是 "." 开头的)
desired_caps['automationName']='UiAutomator1'
也或者可以直接将其理解为一个配置文件的模式,那么 Capability 到底是什么?里面又有着怎样的信息呢?这就是今天章节需要学习的内容。
什么是 Capabilityps:说白了 Capability 就是做 app 自动化启动设备的一些必要信息。
其实啊,对于那些已经熟悉了自动化的工程师来说,都非常的了解这个配置对于自动化测试的重要性。这就好比一个导火索的引线,只有把它配置好,才能进行后续自动化测试的相关操作。
简单来说, Capability 的功能就是配置appium的 会话。它的说明就是告诉 appium 想要配置自动化的平台和应用程序。而 Capability 本质上来说是一组设置的集合。其中设置的键值对应设置的名称,例如:"paltformName:Android" ,"deviceName:p9 等。
其主要的功能就是通知 appium 服务器建立需要的session。appium 的客户端与服务端之间的通信连接都是建立在有 session 的基础上进行的。客户端发起通信的时候先发送一个叫做:“capability” 的json对象给服务器。服务器接收到 json 数据后,会自动创建一个 session 并将id返回值客户端。之后客户端识别后用该 session 的 id 发送后续的命令。
Capability 配置讲解关于 Capability 的配置,其主要就分成了三部分:公共部分、android部分、ios部分。 相对应的就是配置 android ,就连接 android,配置 ios 则连接 ios。相关配置的介绍 appium 的官网给出了很详细的说明。我们可以详细的去了解相关配置的作用与说明。
接下来我们主要针对一些常用的配置进行介绍与说明。
Capability 配置讲解 - 公共部分| 关键字 | 描述 | 实例 |
|---|---|---|
| automationName | 自动化测试的引擎 | 默认就是 appium (一般也不会可以区设置) |
| platformName | 你要测试的手机操作系统 | Android 或者 IOS |
| platformVersion | 手机操作系统的版本 | 例如 7.1.2, 4.2.1 |
先欠着,后面补上…



