如何从零开始搭建公司自动化测试框架?

搭建的自动化测试框架要包括API测试,UI测试,APP测试三类。以上三类其实可以简化为两类,那就是:

1)接口自动化测试框架搭建
2)UI自动化测试框架搭建。

没问题,安排,且是手把手教你如何搭建以上两类自动化测试框架。

回到这篇主题,刷到这个问题的测试人员,可能有一部分还是从事"手工测试"的,或是一些是自学测试刚入门。为了让这类读者也能有获得感,所以我将问题拆分下,分为下面4个部分:

1、为什么要搭建自动化测试框架
2、简介如何搭建API接口测试框架
3、简介如何搭建UI自动化测试框架
4、自动化测试框电子书推荐

好,抓好扶手,接下来我们开始正式介绍了。

一、为什么要搭建自动化测试框架

测试如果按照是否手工划分,可以分为“手工测试”和“自动化测试”。

“手工测试”也就是用人力来进行功能测试。相比自动化测试而言执行效率慢,可以进行探索性测试和发散性测试。

“自动化测试”主要是通过所开发的软件测试工具、脚本等来替代人工进行功能测试。相比“手工测试”,不仅能解放人力,且具有良好的可操作性、可重复性和高效率等特点。

具体来说"自动化测试"的优势如下:

(1)自动化测试具有一致性和重复性的特点,而且测试更客观,提高了软件测试的准确度、精确度和可信任度。

(2)自动化测试可以将任务自动化,能够解放人力去做更重要的工作。

(3)自动化测试只需要部署好相应的场景,如高度复杂使用场景、海量数据交互、动态响应请求等,测试就可以在无人值守的状态下自动进行,并对测试结果进行分析反馈;手工测试很难实现复杂的测试。

(4)自动化测试可以模拟复杂的测试场景完成人工无法完成的测试,如负载测试、压力测试等。

(5)软件版本更新迭代后需要进行回归测试,自动化测试有助于创建持续集成环境,使用新构建的测试环境快速进行自动化测试

可见,自动化测试优势非常多,所以最近几年企业疯狂招聘自动化测试人员。高薪的自动化测试不断的涌入,逐步替代低薪的手工测试,直接后果就是测试最近几年的平均薪资一路上涨。

图片


△ 截图来源于职友集,显示最近6年测试薪资一路上涨

自动化测试具体实施流程如下图所示:

图片


自动化测试实施流程图

从上图可以看出,要实施自动化测试是需要搭建测试环境的,也就是要搭建测试框架。

这就是为什么我们要学习"接口自动化测试框架搭建"和"Ui自动化测试框架搭建"的根本原因。

ps:不想从零搭建,想利用现在主流的自动化测试框架,可以狠狠点击这篇文章:

《Android 手机自动化测试工具有哪几种?128 赞同 · 16 评论回答》
https://www.zhihu.com/question/19716849/answer/2930155323

二、简介如何搭建API接口测试框架

在当前企业实际测试技能应用中,功能测试和接口测试应用最广泛。但相比功能测试,接口测试缺口却非常大。且接口测试在测试领域地位非常高,是软件测试工程师初级和中级分界线。

所以我们先来将接口测试框架的搭建,搭建步骤列出如下:

1)选择开发语言
2)选择Pytest作为测试框架
3)设置测试报告
4)选择代码仓库
5)部署持续集成方案
附:两套详细学习视频推荐

步骤步骤讲完之后,我们开始详细阐述每一步该如何操作(尽力能让你照着步骤搭建出来)。

1、选择一门语言

语言我们选择Python。因为相比Java,更容易入门。

python是一门简单易学,容易理解的计算机编程语言。不仅有很多的学习书籍,还有很多的学习视频。Python也早已经成为tiobe语言的No1。

图片

若没有学过Python语言,推荐黑马学习资料如下:

《10天带你玩转python2020版》
本视频b站链接:https://www.bilibili.com/video/BV1jZ4y1s7LC

2、选择PyTest作为测试框架

PyTest是一个非常成熟的全功能的Python测试框架。官方文档详细介绍了它的特点

· 对失败断言语句会进行详细信息展示(无需记住self.assert*名称)
· 自动发现测试模块和功能
· 非常方便管理小型或参数化测试项目
· 可以开箱即用运行单元测试和测试套件
· 丰富的插件架构,超过 800 多个外部插件和蓬勃发展的社区

图片


pytest框架使用5步骤​​​​​​​

#PyTest目录结构apiTestFramework # 项目名称 ├── api # 定义封装被测系统的接口 ├── script # 定义测试用例脚本 ├── data # 存放测试数据文件 ├── report # 存放生成的测试报告 ├── common # 存放通用工具类 ├── config.py # 定义项目的配置信息 └── pytest.ini # pytest配置文件

3. 测试报告

执行完测试用例后,可以以HTML(网页)方式将执行结果生成报告。我们选择pytest-html。它是PyTest框架生成HTML测试报告的插件。使用方便。

第一步安装:pip install pytest-html

第二步修改配置:addopts = -s --html=report/report.html

轻松搞定。

4. 代码仓库

代码管理肯定是首选git喽。Git 分布式版本控制系统,实现版本控制和多人协同。

图片

​​​​​​​
# 常见的代码托管平台:Github     国外的基于git实现在线代码托管的仓库(企业版收费)     官网:https://github.com/ Gitee     码云,是开源中国免费提供(企业版收费)    官网:https://gitee.com/ Gitlab     类似Github,一般用于企业内部搭建git私服

5. 持续集成方案

图片

Jenkins是基于Java开发的一种开源、跨平台的持续集成工具。他能够持续自动构建/测试软件项目,实现监控定时执行的任务。

我们简单来说明一下jenkins的核心构建步骤。

1) 搭建Jenkins环境

图片

2) 创建任务之后设置源码管理

图片

3) 输入构建命名

图片

4)设置定时构建

图片

5)设置测试报告路径

图片

6)设置构建后发送邮件

图片

7)构建并查看结果

图片

PS: 再详细的文字也不如视频来的生动,接下来推荐两个接口测试框架相关的详细视频:

1)《Python实现接口自动化测试视频》
本视频b站链接:https://www.bilibili.com/video/BV1uz411q7Pg

2)《python实现头条项目接口自动化测试实战》
本视频b站链接:https://www.bilibili.com/video/BV1va4y1i76B

三、手把手教:如何搭建UI自动化测试框架

UI自动化测试框架是有很多的。我们以pytest+selenium+allure+PO模式为例子给大家简要说明一下。搭建步骤有下面几步:

1)工具环境
2)依赖包
3)工程目录
4)脚本书写步骤

1、工具环境

a)  Python解释器b)  Pycharm编码工具c)  Web端:d)  浏览器e)  浏览器驱动程序

2. 依赖包​​​​​​​

a)  Seleniumb)  pytestc)  pytest-html

3. 工程目录​​​​​​

a)  base        基类python packageb)  page        PO封装python packagec)  case       测试用例python packaged)  data         数据文件Directorye)  report      测试报告Directoryf)  log           日志文件Directoryg)  screenshot      截图文件Directoryh)  config.py       项目配置信息文件i)  utils.py        工具类文件

4. 脚本书写步骤

a ) 初始化代码

图片

b ) 一个测试用例脚本编写过程

图片

c ) 引入数据驱动

图片

d ) 引入日志

图片

e ) 生成测试报告

图片

PS: 若没有基础知识铺垫,再详细的文字也可能会让人不知如何下手,接下来推荐多个UI自动化测试框架视频,按照下列视频搭建即可。

--------------Web类自动化框架相关视频---------------

1)《web自动化入门实战》 
本视频b站链接:https://www.bilibili.com/video/BV1ED4y197Nd

2)《8天web自动化入门教程》 
本视频b站链接:https://www.bilibili.com/video/BV1eZ4y1s7BY

--------------App类自动化框架相关视频---------------

1)《0基础入门移动自动化Appium框架》 
本视频b站链接:https://www.bilibili.com/video/BV11p4y197HQ

2)《Appium进行IOS真机自动化测试》
本视频b站链接:https://www.bilibili.com/video/BV1tT4y137bD

在介绍“API接口测试框架”和”UI自动化测试框架”时,我们都反复提到了Pytest测试框架,那有这个框架的学习视频吗?当然有,看下方截图:

图片

Pytest框架学习视频分享如下:
《6天UI自动化_Pytest框架学习-2021版》 
本视频b站链接:https://www.bilibili.com/video/BV18Q4y1y7v3

四、自动化测试框架电子书推荐

这一本书籍相信对你的帮助应该很大--《Web接口开发与自动化测试》

图片

下方有电子书链接分享

附:本电子书免费下载地址:
http://bbs.itheima.com/thread-514629-1-1.html

再推荐一本关于UI自动化测试的书籍--《Python实现Web UI自动化测试实战》

此书主要介绍如何基于Python使用Selenium、unittest、Pytest、GitLab、Jenkins等工具实现Web UI自动化测试,以帮助提升测试水平。

图片

这本书的电子版实在是找不到,若找到的同学也欢迎分享下,可私信我

猜你喜欢

转载自blog.csdn.net/JACK_SUJAVA/article/details/131729018
今日推荐