python专项测试——Android App自动化测试框架
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python专项测试——Android App自动化测试框架相关的知识,希望对你有一定的参考价值。
1 为什么需要框架?
代码混乱,难阅读; 重复编码,效率低;需求变化,难维护;
一 自动化实例
1 准备测试的app;准备测试环境;实现脚本;
2 测试app:只有登录功能
测试环境:
- Appium(Android/IOS);
- Android SDK;
- Appium-Python-Client;
- Selenium(Appium-Python-Client继承于Selenium);
- UIAutomatorViewer
- Pycharm
3 实现脚本
在Pycharm中编写脚本;
用UIAutomatorViewer进行定位;
借助Appium—Python—Client实现的api;
借助Appium—Python—Client的字典实现属性;
运行脚本之前要启动Appium并进行设置,如果出现“新的session无法建立”的错误,请释放资源并重启Appium。
二 测试框架Unittest
1 主要讲解:Test Fixture; Test Case; Test Suite; Test Runner
2 Test Fixture包括准备,执行,清理的过程;对应到脚本上是:setup(), testcase(), teardown()
其他三项已知。
3 脚本
三 数据驱动框架
1 如何使用?准备第三方库——首先安装ddt库,其次在脚本中引入ddt, 然后就OK
具体:
- 到Python 官网下载ddt库;
- 在脚本中导入ddt库的命令:from ddt import ddt, data, unpack
- 在测试类前标注ddt :@ddt
- class MookTestCase(unittest.TestCase) ,说明本次的测试类是使用数据驱动框架
- 测试用例主要分为有参数和无参数,数据驱动主要用于带参数的测试用例
- 对于有一个参数的用例,使用元组存放被测试的数据,并加上data标注:@data(1, -3, 2, 0)
- def testcase(self, value):
- 对于有多个参数的用例,使用元组存放被测试的数据,并加上data标注:@data((3,2),(4,3), (5,3))
- @unpack
- def testcase(self, value1, value2):
2 脚本中应用
3 应用了ddt框架后,单独运行某条case的语句不再适用,但可以加载运行整个测试类。
以上是关于python专项测试——Android App自动化测试框架的主要内容,如果未能解决你的问题,请参考以下文章