美文网首页
Appium+python+unittest自动化框架设计

Appium+python+unittest自动化框架设计

作者: M文涛 | 来源:发表于2019-07-29 23:26 被阅读0次

昨晚被空调吹冻感冒,一早上起来就头痛发烧,在社区医院开了点药之后,回来睡了一觉好很多,所以今天把自己所搭建的雏形框架的说明大概讲一下,基本涵盖了所有自动化功能,而且也可以使用到很多项目中,不用改变结构,只要更改逻辑层和测试用例即可

一.自动化测试框架

Appium+python+unittest测试框架目前使用的公司很多,但是总是觉得缺少一些回归的东西

二.自动化框架所涉及的功能以及层级

1.测试包管理(涉及被测APP包管理)

2.业务逻辑功能的封装(操作流程)

3.日志管理(涉及自动化测试用例执行的日志管理)

4.测试用例管理(unittest进行case管理)

5.错误截图管理(涉及一些错误截图、关键步骤截图管理)

6.断言管理(对于测试执行的判断)

7.数据驱动管理(对一些输入的参数进行配置管理,类似于excel文件、csv文件….)

8.配置文件管理(类似一些配置文件以及一些初始化配置信息)

9.自动化测试报告管理

四.自动化测试实战

1.自动化测试环境准备

appium版本 V1.13.0

python版本 V3.7.2

真机Android版本9

APP一起长大家长端(公司的产品,家里有孩子的可以了解一下)

2.自动化测试用例场景

登录模块:

用例描述涉及两条:

(1)正确的账号,错误的密码,登录失败

(2)正确的账号、正确的密码,登录成功

 3.自动化框架设计图 (所有自动化测试可能最重要的一步,根据Pageobject设计思想,对框架进行设计并画图展示,这一步在自动化评审阶段尤为重要)

图1

4.各个模块代码实现

a)测试包管理(模块名字可随意定义)

这个模块主要放置测试所使用的APP包

b)基础视图模块(Baseview)

  该模块封装了一个类baseview,该类封装最基本的方法,主要功能为:

       初始化driver

        基础方法封装

代码如下:

图2

c)公共模块

包含一个公共方法封装、driver驱动封装、测试用例执行前后的封装等

公共方法代码:

图3

driver方法代码:

图4

Unittest用例执行前后操作代码:

图5

d)业务逻辑模块(businessView)

所有被测APP的业务逻辑层全部放置在该模块中(目前只涉及登录模块的逻辑,所以只包含了登录的逻辑,其他模块可以依次按照逻辑新增逻辑层),代码如下:

图6

e)配置文件模块

测试所用到的日志配置文件、启动参数yaml文件等,我这边只配置了框架所需的两项,分别为log.conf以及启动参数配置

其中log.cof代码:

图7

启动参数配置:

图8

f)数据驱动模块

该模块只是针对一些测试数据的存放,目前的项目是以CSV的方式进行储存,所以获取CSV数据的方法放在的common方法中

g)日志储存模块

主要存放每次运行测试所产生的日志信息

h)自动化测试报告模块

主要存放每次运行测试之后产生的自动化测试报告文件

i)screenshots截图模块

主要存放错误截图以及重要模块截图文件等

j)测试用例模块

存放测试用例的模块,用于整个测试用例的编辑,代码如下:

图9

k)测试入口

用于执行自动化测试用例,该模块涵盖了测试报告的指定目录、自动化测试用例的执行入口、以及配置测试报告等,代码如下:

图10

备注:

目前还没做持续集成,还在完善框架当中,完善框架所用到的方法,完善其他模块的业务逻辑以及测试用例,还是觉得测试场景是自动化测试的关键,未完待续.........

相关文章

  • 自动生成测试用例

    之前带领小组其他成员完成了第一阶段的自动化测试,包括框架(appium+python+unittest)搭建、编写...

  • Appium+python+unittest自动化框架设计

    昨晚被空调吹冻感冒,一早上起来就头痛发烧,在社区医院开了点药之后,回来睡了一觉好很多,所以今天把自己所搭建的雏形框...

  • 自动化脚本断言越精确越好吗?

    使用的框架 jmeter+ant+spring boot; 接口自动化用例设计 接口自动化用例设计主要来源功能测试...

  • 如何设计一个自动化测试框架

    在进行自动化框架设计之前我们先来看两个问题,什么是自动化框架,设计的时候应该注意什么原则,然后该怎么做?本文会以一...

  • 从零开发接口自动化框架

    从零开发接口自动化框架 方法论:掌握测试框架设计和开发的思路 自动化用例封装 测试用例分层 参数化数据驱动 命令行...

  • 自动化设计

    自动化测试模型可以看作自动化测试框架与工具设计的思想。随着自动化测试技术的发展,演化为以下几种模型: 线性测试 模...

  • 自动化框架设计

    自动化设计的框架如下图所示 框架的说明 data:excel表格存放测试数据 log:记录执行日志 page:主要...

  • 通用的UI自动化测试框架(2)----常用公共函数封装

    介绍 在上一篇文章链接?里我们讲了如何设计通用的UI自动化测试框架,这篇文章我会举几个例子,在UI自动化框架里,如...

  • UI自动化面试题

    1.你是如何搭建ui自动化框架的? 在搭建ui自动化框架,使用的是po设计模式,也就是把每一个页面所需要 操作的元...

  • Python selenium:模型(框架)

    自动化测试模型 自动化测试模型可以看作自动化测试框架与工具的设计思路,自动化不仅仅是单纯的写脚本运行就可以了,还需...

网友评论

      本文标题:Appium+python+unittest自动化框架设计

      本文链接:https://www.haomeiwen.com/subject/cbrwrctx.html