• Airtest IDE 自动化测试5—断言存在(assert_exists)和断言不存在(assert_not_exists)


    前言

    Airtest IDE 提供了四种快捷断言的方式

    • assert_exists 断言存在
    • assert_not_exists 断言不存在
    • assert_equal 断言相等
    • assert_not_equal 断言不相等

    断言存在(assert_exists)

    assert_exists(*args,**kwargs)设备屏幕上存在断言目标

    参数

    • v 要检查的目标
    • msg 断言的简短描述,它将被记录在报告中
    • AssertionError 如果断言失败

    返回

    • 目标坐标

    支持平台:Android,Windows,IOS

    示例:assert_exists(Template(r"a.png","assert exists")

    使用示例,断言“我的”页面存在“登录/注册”按钮

     运行用例后查看测试报告

     断言不存在(assert_not_exists)

    assert_not_exists 跟上面的assert_exists 用法一样

    断言我的页面不存在“新课推荐”

     断言失败 AssertionError

    当断言失败的时候,会抛出AssertionError异常,程序不会继续往下走了

    在我的页面,查找“新课推荐”,断言会失败

     

    关于查找超时

    当页面上找不到元素的时候,不会立马断言失败,此时会有个timeout时间,默认是20秒

    ST.FIND_TIMEOUT 是在setting.py文件配置的,默认查找超时是20s

    #airtest.core.setting.py
    class Settings(object): DEBUG = False LOG_DIR = None LOG_FILE = "log.txt" RESIZE_METHOD = staticmethod(cocos_min_strategy) # keypoint matching: kaze/brisk/akaze/orb, contrib: sift/surf/brief CVSTRATEGY = ["mstpl", "tpl", "surf", "brisk"] if LooseVersion(cv2.__version__) > LooseVersion('3.4.2'): CVSTRATEGY = ["mstpl", "tpl", "sift", "brisk"] KEYPOINT_MATCHING_PREDICTION = True THRESHOLD = 0.7 # [0, 1] THRESHOLD_STRICT = None # dedicated parameter for assert_exists OPDELAY = 0.1 FIND_TIMEOUT = 20 FIND_TIMEOUT_TMP = 3 PROJECT_ROOT = os.environ.get("PROJECT_ROOT", "") # for ``using`` other script SNAPSHOT_QUALITY = 10 # 1-100 https://pillow.readthedocs.io/en/5.1.x/handbook/image-file-formats.html#jpeg # Image compression size, e.g. 1200, means that the size of the screenshot does not exceed 1200*1200 IMAGE_MAXSIZE = os.environ.get("IMAGE_MAXSIZE", None) SAVE_IMAGE = True

     判断元素不存在,查找超时时间是FIND_TIMEOUT_TMP=3

  • 相关阅读:

    ATM三层架构思路
    一个项目的从无到有
    re模块
    logging模块
    物联网公共安全平台软件体系架构
    本科生怎样发表自己的论文
    Cloud Native 云化架构阅读笔记
    实验5 Spark SQL编程初级实践
    云计算环境下计算机软件系统架构分析
  • 原文地址:https://www.cnblogs.com/canglongdao/p/15521983.html
Copyright © 2020-2023  润新知