摘要:
python unintest单元测试框架提供了一整套内置的断言方法。 1. 如果断言失败,则抛出一个AssertionError,并标识该测试为失败状态。 2. 如果成功,则标识该测试为成功状态。 但存在一个缺点,测试用例中含有多个断言时,一个断言失败,抛出异常,后续断言不再继续执行,也就无从知道 阅读全文
摘要:
1.高阶函数 1.1 定义 变量可以指向函数,函数的参数能接收变量,那么一个函数就可以接收另一个函数作为参数,这种函数就称之为高阶函数。 示例1: def add(x,y): return x + y def sub(x,y): return x - y def orign(x, y, fun): 阅读全文
摘要:
1.1 形参与实参 形参(形式参数):在定义函数阶段,定义的参数称之为形参,粗略的可以认为是变量名。 实参:在调用函数阶段传入的值称之为实际参数,简称实参,粗略的可以认为是变量值。 def ware_info(vendor_name, store_name, sku): return "{}商家下的 阅读全文
摘要:
fixture函数存在意义 与python自带的unitest测试框架中的setup、teardown类似,pytest提供了fixture函数用以在测试执行前和执行后进行必要的准备和清理工作。但是相对来说又比setup、teardown好用。 firture相对于setup和teardown的优势 阅读全文
摘要:
当我们调用 super() 的时候,实际上是实例化了super类。 super 是个类,既不是关键字也不是函数等其他数据结构,该对象就是专门用来访问父类中的属性的(严格按照继承的关系)。 --用法解析: 在子类的__init__方法中使用 super().__init__() , 就相当于把父类的 阅读全文
摘要:
1. android_uiautomator定位 相当于使用 UiAutomator Api 去递归地搜索元素(Android 专属),可以说android uiautomator是终极定位方式,有的时候一些元素不能够很好的定位时,那么就需要采用android uiautomator去定位,他是一种 阅读全文
摘要:
一、常用元素定位方法 appium从selenium中继承了所有的元素定位方法, 并且增加了一些自己的元素定位方式,下方截图分别为selenium和MobileBy包源码: 但是从继承selenium中的定位方法中,一般只会用到id、class_name、xpath这三种方法,总结起来,appium 阅读全文
摘要:
使用appium运行UI自动化代码时,若在脚本中固定写死设备信息,那么每次更换测试设备,就需要在脚本中修改很多东西,比较麻烦, 以下代码可以通过脚本自动获取设备信息:devicesid、deviceName、platformVersion(包含获取单个或多个设备信息)以及包名,具体代码图如下: im 阅读全文
摘要:
在unittest测试用例中,在含有多个断言时,一个断言失败后,测试用例会结束运行,无法知道其他断言是否成功。unittest不同与pytest,在pytest中, 可以使用pytest.assume(表达式),检查点失败继续运行,所以为了解决unittest的这个弊端,本文解决方式: 1)把多个断 阅读全文
摘要:
之前一直用postman调接口比较多,但有时候想要去修改APP的页面展示,造数据又会比较麻烦,此时可以用以下三种方法修改请求参数或修改响应: map Local(本地映射)、Breakpoints(打断点)、Rewrite(重写) MAP重定向: Charles 的map功能,就是将某个请求进行重定 阅读全文