博客
关于我
Appium--pageobject实践(4)-unittest封装
阅读量:512 次
发布时间:2019-03-07

本文共 1186 字,大约阅读时间需要 3 分钟。

UNLIKELY TEST框架核心要素介绍

TestCase :是单元测试的基本单元,包含完整测试流程:包括setup环境准备、执行测试代码以及teardown环境清理。每个TestCase相当于一个完整的测试单元,可单独运行以验证特定功能是否正确。

TestSuite :是将多个TestCase集合在一起的容器,支持多级嵌套。TestSuite可以通过TestLoader加载到一起。这种层级化结构使得测试管理更加灵活,尤其在大量测试用例存在时能显著提升效率。

TextTestRunner :是执行测试用例的工具,其run()方法可以调用TestSuite或TestCase中的run(result)方法。执行结果会被TextTestRunner记录下来,包括总共执行多少用例、成功、失败的数量等信息。

Fixture :用于为TestCase设置和清理环境,是测试流程中不可或缺的一部分。Fixture可以是简单的资源创建,或者复杂的环境初始化脚本,确保每次测试运行都是在一致的环境条件下进行。

完整测试用例封装过程

前提:需已配置好yaml初始化参数文件和log.conf日志文件。

  • 创建cap.yaml配置文件用户可以自定义的测试设备参数如下:
    • platformName : 设备的运行平台(如"Android")
    • platformVersion : 平台版本
    • deviceName : 设备名
    • app : 测试APK路径
    • packageName : 应用包名
    • appActivity : 主Activity类名
    • unicodekeyboard : 是否启用Unicode键盘
    • resetkeyboard : 是否重新设置键盘
    • noReset : 是否不重置应用(默认False)
    • ip : 替换后的设备IP地址
    • port : 替换后的设备端口
    • uiautomationName : UI自动化引擎名称(如“uiautomator2”)
    1. 定义log.conf日志配置文件可根据需求设置日志格式和存储位置。

    2. 创建app_desired.py模块该模块的作用是启动应用并根据cap.yaml文件配置创建desired_caps字典,返回odium.Remote实例以控制远程设备。

    3. BaseView 基类定义该类主要为自动化脚本提供基本操作功能,包括:

      • Element定位和查找
      • 屏幕尺寸获取
      • 屏幕滑动操作
      • 等待时间控制

      common.py 公共类该类为自动化脚本提供通用功能,如:

      • Element查找
      • 屏幕操作
      • 资源管理等封装测试用例
        以登录模块为例,一个典型测试用例可包含以下步骤:
    4. 启动应用
    5. 定位并处理登录界面元素
    6. 输入正确用户信息
    7. 验证登录成功
    8. 提录操作
    9. 清理环境
    10. 通过将这些步骤系统化,testing.py文件中的TestCase类可实现自动化流程管理。

    转载地址:http://wcnjz.baihongyu.com/

    你可能感兴趣的文章
    python下载_安装_配置_以及第一行python程序---python工作笔记009
    查看>>
    Python不协调机器人消息.内容
    查看>>
    Python与C#之间内存共享互传信息
    查看>>
    python与c语言混合编程_你试过C语言和Python一起混合编程吗?两者相加不是已经无敌了!...
    查看>>
    python与excel
    查看>>
    Python与Excel的完美邂逅:深入浅出,手把手教你轻松玩转Excel数据操作
    查看>>
    python与flask_Python编程中flask的简介与简单使用
    查看>>
    python与图灵机器人交互(WXPY版本)
    查看>>
    python与运算符_python运算符
    查看>>
    python两个列表获取交集,并集,差集
    查看>>
    python两个字典合并,两个list合并
    查看>>
    Python两个版本共存时,命令行升级pip
    查看>>
    Python两个版本共存时,怎么验证是否安装成功 scrapy
    查看>>
    Python两个版本共存时,通过pip安装Scrapy
    查看>>
    python两组变量的相关关系散点图_变量是什么?变量间的两种关系——函数关系和相关关系(小学版)...
    查看>>
    Python中 pass语句的作用
    查看>>
    python中 urllib, urllib2, httplib, httplib2 几个库的区别
    查看>>
    python中 yaml库 & json库 & xmltodict库使用
    查看>>
    python中 将你的名字转化成为二进制并输出
    查看>>
    Python中*args 和**kwargs的用法
    查看>>