appium自动化测试(五)

网友投稿 340 2022-08-26


appium自动化测试(五)

1. 页面封装——理性判断

2. basepage——定位表达式的判断——要加上移动端的,加上上下左右滑动封装、toast可以封装、webview切换操作

3. 页面当中,所有元素定位——更换——移动端的定位表达式

4. 页面当中,函数名字不需要改——函数的实现修改为移动端的用法

修改和新增功能;

5. 测试数据适当修正

6. 优化启动会话——appium——配置数据太多了,每一个测试文件都必须经历这个步骤

7. 测试用例——步骤修改——验证的条件修改

1. 是否有欢迎页面,如果有就要一步步滑下去进入首页

2. 登录用例:是否需要记住用户状态

1) 记住—要把登录成功的用例放到最后

2) 不记住—登录失败的用例

3. app自动化—有一堆配置信息—再启动

toast信息—配置信息要变:UiAutomator2

其它的用例—用默认的就好

新增一些别的配置

BaseDriver—专门来处理启动信息

—yaml来存储配置数据(设备信息+服务信息)

—通过参数来判断是否需要修改automationName

登录用例:

1. 登录成功—默认的driver

2. 密码错误—默认的driver

3. 用户名未注册—需要加上toast处理—配置中要加上UiAutomator2

不同的测试用例—要使用不同的初始化内容—setup有区别?

单元测试—在一个测试类当中,setup所有测试用例通过

pytest—conftest.py—定义各种setup、teardown,在测试用例当中,是可以每个测试用例指定调用哪一个fixture

0. basepage:新增了滑动、toast处理

1. yaml来管理配置数据

2. basedriver—用来启动driver会话,并且处理了是否重置,是否换automationName

3. 测试用例:

conftest—fixture功能

default-fixture

toast_fixture

login_fixture:不记住用户的状态—多次运行脚本

所有fixture中:是否要处理欢迎页面—activity的名字

test_login 使用了login_fixture

一. YAML

YAML是一种简洁的非标记语言

YAML以数据为中心,使用空白,缩进,分行组织数据,从而使得表达更加简洁

基本规则:

1. 大小写敏感

2. 使用缩进表示层级关系

3. 禁止使用tab缩进,只能使用空格键

4. 缩进长度没有限制,只要元素对齐就表示这些元素属于一个层级

5. 使用#表示注释

6. 字符串可以不用引号标注

三种数据结构:

1. 字典

使用冒号(:)表示键值对,同一缩进的所有键值对属于一个map

#Yaml 方式一 (注意冒号后的空格)

platformName: Android

platformVersion: 5.1

#Yaml 方式二

{platformName: Android, platformVersion: 5.1}

2. 列表

使用连字符(-)表示,注意-后的空格

- hello

- world

#方式二

[hello, world, 12, 13]

3. scalar 纯量

二. python库

1. PyYAML

2. ruamel.yaml

PyYAML安装:

pip命令:pip install PyYaml

读取yaml文件的数据,并转换成python对象

1. 打开yaml文件

2. 使用yaml的load()函数

注意数字类型的转成字典是数字类型,如果需要字符串,则用str转换成字符串,如platformVersion的值被转成了float类型(5.1),需要str(5.1) 才是"5.1"

示例代码:

fs = open(os.path.join(caps_dir, "caps.yaml"))

datas = yaml.load(fs)


版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:解决pycharm运行Flask指定ip、端口更改无效
下一篇:解决:YAMLLoadWarning: calling yaml.load() without Loader=... is deprecat(解决好谁来扶的问题,坚持)
相关文章

 发表评论

暂时没有评论,来抢沙发吧~