08 2022 档案
摘要: 
阅读全文
摘要:动态导包 import('') 动态获取属性 __getattribute__和getattr class A: a = 1 def __init__(self): self.b =2 @staticmethod def getname(): print(1) print(A().__getattr
阅读全文
摘要:什么是conftest.py 可以理解成一个专门存放fixture的配置文件 实际开发场景 多个测试用例文件(test_*.py)的所有用例都需要用登录功能来作为前置操作,那就不能把登录功能写到某个用例文件中去了 如何解决上述场景问题? conftest.py的出现,就是为了解决上述问题,单独管理一
阅读全文
摘要:用例执行状态 用例执行完成后,每条用例都有自己的状态,常见的状态有 passed:测试通过 failed:断言失败 error:用例本身写的质量不行,本身代码报错(譬如:fixture不存在,fixture里面有报错) xfail:预期失败,加了 @pytest.mark.xfail() error
阅读全文
摘要:前言 前面一篇讲了setup、teardown可以实现在执行用例前或结束后加入一些操作,但这种都是针对整个脚本全局生效的 如果有以下场景:用例 1 需要先登录,用例 2 不需要登录,用例 3 需要先登录。很显然无法用 setup 和 teardown 来实现了 fixture可以让我们自定义测试用例
阅读全文
摘要:前言 用过unittest的童鞋都知道,有两个前置方法,两个后置方法;分别是 setup() setupClass() teardown() teardownClass() Pytest也贴心的提供了类似setup、teardown的方法,并且还超过四个,一共有十种 模块级别:setup_modul
阅读全文
摘要:前言 与unittest不同,pytest使用的是python自带的assert关键字来进行断言 assert关键字后面可以接一个表达式,只要表达式的最终结果为True,那么断言通过,用例执行成功,否则用例执行失败 assert小栗子 想在抛出异常之后输出一些提示信息,执行之后就方便查看是什么原因了
阅读全文
摘要:前言 目前有两种纯测试的测试框架,pytest和unittest unittest应该是广为人知,而且也是老框架了,很多人都用来做自动化,无论是UI还是接口 pytest是基于unittest开发的另一款更高级更好用的单元测试框架 出去面试也好,跟别人说起来也好,pytest的逼格明显高于unitt
阅读全文
摘要:from collections import Iterator, Iterable class MyListIterator(object): # 定义迭代器类,其是MyList可迭代对象的迭代器类 def __init__(self, data): self.data = data # 上边界
阅读全文
摘要:在模拟手势操作的时候,可以加上wait,避免被误认为是误操作 有时加上pressure参数有意外的收获,pressure值使用的力气大小,默认值为1 from appium.webdriver.common.multi_action import MultiAction action1 = Touc
阅读全文
摘要:元素操作 click() #点击操作也可以用tab实现点击操作 driver.find_element_by_id("com.wuba.zhuanzhuan:id/ae8").click() clear() #清空输入框内容 driver.find_element_by_id("com.wuba.z
阅读全文
摘要:###selenium中的ActionChains 初始化时传入driver ActionChains中存储的所有行为 click(on_element=None) ——单击鼠标左键 click_and_hold(on_element=None) ——点击鼠标左键,不松开 context_click
阅读全文
摘要:Appium元素定位(一) APP元素定位方式与Web元素定位方式大体相同,APP自动化测试中最重要的一部分是对元素进行定位,实现对APP的控制交互。Appium常用的定位方式有Accessibility ID、Class name、ID、Name、XPath、Android UiAutomator
阅读全文
摘要:什么是MQ 消息队列(Message Queue)或者叫事务消息,简称MQ,目前一般公司都使用RabbitMQ,RocketMQ,Kafka,TubeMQ等 左边为发送方,中间为消息队列,右边为消费方,我们需要在发送方哪里,将消息发送到,中间的消息队列中,当程序监听到有新的消息时候,就拿出这条消息进
阅读全文
摘要:使用aapt dump badging xxx. apk查看package name和activity name时报错为: ERROR: dump failed because no AndroidManifest.xml found 解决方法一: 可以尝试将apk存放在非中文路径下再执行命令aap
阅读全文
摘要:Microsoft Windows [版本 10.0.18363.1016] (c) 2019 Microsoft Corporation。保留所有权利。 C:\Users\lnz>appium [Appium] Welcome to Appium v1.15.1 #端口开启 [Appium] Ap
阅读全文
摘要:详情可以参考https://blog.csdn.net/qq_43787743/article/details/125048370 appium简介 appium是一个移动端自动化框架,它采用C/S的设计模式,支持多类开发语言(java python js c#…)、支持多平台(ios androi
阅读全文
摘要:WiFi远程连接: 可以通过数据线连接adb,但是不方便或不想一直用数据线连接的情况 可以先通过数据线连接adb后,在命令行先输入 adb usb 命令后再输入 adb tcpip xxxx(你设置的端口号),端口号设置建议选用不常用未被占用的端口号,查看设备IP地址后同样还是通过 adb conn
阅读全文
摘要:monkey是android 系统自带的一个命令行工具,可以向被测应用程序发送伪随机的用户事件流(如按键、触屏、滑动等操作),实现对应用程序进行测试的目的。 monkey测试也叫猴子测试,是指测试时可以像好奇的猴子一样,不停的对应用程序进行随机操作,以便验证应用程序的稳定性和健壮性。因此,monke
阅读全文
摘要:安装卸载应用程序 adb install 用于安装 - adb install <apkfile> 参数apkfile 为.apk 文件名称 # 安装的时候最好用引号包起来 - adb install -r test.apk 保留数据和缓存文件,重新安装apk - adb install -s te
阅读全文
摘要:一、Android SDK简介 Android SDK(Software Development Kit,软件开发工具包)被软件开发工程师用于为特定的软件包、软件框架、硬件平台、操作系统等建立应用软件的开发工具的集合。它提供了 Android API 库和开发工具构建,测试和调试应用程序。简单来讲,
阅读全文