IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 开发测试 -> 自动化测试项目实战03:弄懂原理 -> 正文阅读

[开发测试]自动化测试项目实战03:弄懂原理

大家好,我是谭叔。

上期,我们一起搭建了自动化测试的项目环境

本期,开始讲原理——搞懂原理,你将更轻松的吃透自动化测试

tips:网盘和github,会根据文章顺序,同步更新代码。

image-20210603110511351

简单认识unittest

创建一个test.py文件,引入unittest包

import unittest

image-20210508165035063

长按ctrl+鼠标左键进入,可获取到unittest的一些信息:

  1. unittest简介
  2. unittest的方法必须以test开头(按规矩办事)
  3. 官方文档链接(支持中文)
  4. 一个简单的demo例子(可以粘贴出来运行)
    在这里插入图片描述

unittest原理

一说“原理“二字,很多人顿觉脑壳痛。

放心,我不会枯燥的讲原理。

贴一张图,换种方式给你讲明白。

image-20210508172155917
回忆下你平时的工作场景。

你领到了一份功能测试任务,开始:

写测试用例(case:TestCase)

image-20210508172155917

写测试用例,得考虑一些环境问题吧。

举个例子,一些用例需要在弱网环境下执行,你得设置测试环境(setUp),然后执行测试用例(run),执行完后,为了不影响其他用例执行,你得恢复测试环境(tearDown)。

so,套用到unittest上,TestCase的作用便是如此,它有三个组件:

  • setUp:在执行测试用例之前,初始化环境

  • run:执行测试用例

  • tearDown:在执行测试用例之后,还原环境

整理测试用例之一(suite:TestSuite)

image-20210508173524213

你在写测试用例的过程中,是按照模块写的吧。

举个例子,拿注册来说,你写了正常注册用例、异常注册用例,这两个用例需要集合到注册模块中,形成一个注册suite(集合);

image-20210508173312909

再拿登录来说,你写了正常登录用例、异常登录用例,这两个用例需要集合到登录模块中,形成一个登录suite(集合)。

而注册suite和登录suite,又可以整理成一个更大的用户鉴权的sutie(套件)。

so,套用到unittest上,TestSuite的作用便是如此——集合用例。

整理测试用例之二(loader:TestLoader)

image-20210508173538890

你在写用例时,不会写一条用例就去执行一条用例,而是写完每一个模块的用例,放到用例集里面,等到执行。

TestLoader的作用便是加载 testcase(测试用例) 到 testsuite(测试用例集) 中,用以后续执行。

执行测试用例(runner)

image-20210508173818943

到这一步,相信聪明的你,不用再让我举例说明了吧。

TextTestRunner执行测试用例(run 方法),将测试结果保存在 TextTestResult 中。

总结下来,简单四步走:

  1. 编写测试用例TestCase(方法必须以test开头)
  2. TestLoader将TestCase加载到TestSuite中
  3. TextTestRunner运行测试集合TestSuite
  4. 运行的结果会保存至TextTestResult中

现在想想,原理难吗?

下期,我们一起写出第一个自动化测试用例!

一如既往,做个总结

01 不管是Python的unittest、pytest,还是Java的JUnit、TestNG,你按照平时做功能测试的思维去理解框架,一点也不复杂;

02 每一类框架都有它的特性,如何运用它们的特性完成你的自动化测试工作,是你在学习并掌握它们后该去思考和探索的。

  开发测试 最新文章
pytest系列——allure之生成测试报告(Wind
某大厂软件测试岗一面笔试题+二面问答题面试
iperf 学习笔记
关于Python中使用selenium八大定位方法
【软件测试】为什么提升不了?8年测试总结再
软件测试复习
PHP笔记-Smarty模板引擎的使用
C++Test使用入门
【Java】单元测试
Net core 3.x 获取客户端地址
上一篇文章      下一篇文章      查看所有文章
加:2021-08-02 11:05:29  更:2021-08-02 11:05:55 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/17 20:42:55-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码