博客
关于我
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吊打Excel?屁!那是你不会用!
    查看>>
    Python合并两张图片 | 先叠透明度再合并 (附Demo)
    查看>>
    python各进制的表述与转换
    查看>>
    python各种库安装
    查看>>
    python可视化matplotlib_如何使用Python中最强大的可视化工具Matplotlib?
    查看>>
    python可维护性_使用这7大神器,让你的Python 代码更容易于维护
    查看>>
    Python只运行一次while循环
    查看>>
    python变量的详细教程_Python零基础入门教程之语法入门[变量](第二期)
    查看>>
    Python变量命名方法-ChatGPT4o作答
    查看>>
    Python变量与运算符
    查看>>
    Python变量/运算符/函数/模块/string
    查看>>
    python发送邮件的时候出现 error (535, b‘5.7.3 Authentication unsuccessful‘) 解决方法
    查看>>
    python系列【仅供参考】:python flask框架 debug功能
    查看>>
    python发送notes邮件_使用python在Lotus Notes中发送邮件
    查看>>
    Python双版本下创建一个Scrapy(西瓜皮)项目
    查看>>
    Python双版本下No module named 'requests'
    查看>>
    python及pycharm2018软件安装教程
    查看>>
    python去重txt文本_Python实现的txt文件去重功能示例
    查看>>