一:unittest跑起来

unittest使用,具体使用方式可以查看unittest官网,以下简单做个介绍,在工作中使用最多的

#
第一步:

创建unittest类,且一定要继承unittest.TestCase

class MytestDemo(unittest.TestCase):

 

第二步:

创建你要运行的方法,且一定是用test开头,unittest是检测test开头就会认为有运行方法,如果不用test开头就不用

def test_show():

    print(运行成功)

  

第三步:

运行,使用main入口

if __name__ == '__main__':

    unittest.main()

好了至此,你就已经是使用unittest框架了

但是这样其实在工作中不能满足我们,我们在执行测试方法前都会做一些前置条件,依赖于unittest中的几个方法

二、增加初始化的方法,

在类中,添加,setUp (前置方法,每次运行方法时就会运行),tearDown(运行完后的后置处理,每个方法运行时就会运行)setUpClass(第一次运行类时,开始运行)

#coding=utf-8
import unittest
import requests class MytestDemo(unittest.TestCase):
'''
http: // www.kuaidi100.com / query?type = 快递公司代号 & postid = 快递单号
测试用例
ps:快递公司编码:申通 = "shentong"
EMS = "ems"
顺丰 = "shunfeng"
圆通 = "yuantong"
中通 = "zhongtong"
韵达 = "yunda"
天天 = "tiantian"
汇通 = "huitongkuaidi"
全峰 = "quanfengkuaidi"
德邦 = "debangwuliu"
宅急送 = "zhaijisong"
number=1
'''
@classmethod
def setUpClass(cls):
print("第一次运行类时调用") def setUp(self):
self.url = "http://www.kuaidi100.com/query"
self.headers1 = { 'Connection': 'keep-alive'} def tearDown(self):
print("后面收尾") def test_yuantong(self):
url=self.url+"?type=yuantong&postid=11111111111"
result=requests.get(url=url,headers=self.headers1)
print(result.url)
print(result.text) def test_tiantian(self):
data = "type=tiantian&postid=11111111111"
result = requests.get(url=self.url, params=data,headers=self.headers1 )
print("************")
print(result.url)
print(result.text)
if __name__ == '__main__':
unittest.main()

  我使用了两个方法,一个圆通,一个天天,self.url就是获取在setUp中的url,显示内容:

三、运行

3.1 单个类运行

在类的方法旁边,使用运行,运行单个方法

3.2: 整体运行

在main中运行,

在运行方式中,unittest.main(),还有几种方式表示

使用unittest.TestSuite()集合方式运行,这种方式可以在单个类中运行,也可以在运行多个文件

if __name__ == '__main__':
#unittest.main()
suite = unittest.TestSuite()
suite1 = unittest.TestLoader().loadTestsFromTestCase(MytestDemo)
# 增加文件
suite.addTest(suite1)
unittest.TextTestRunner().run(suite1)

针对TestLoader运行方式有几种,类名,文件名,运行方法名,后续在写一篇

3秒钟unittest入门使用的更多相关文章

  1. 18年selenium3+python3+unittest自动化测试教程(下)

    第六章 自动化测试进阶实战篇幅 1.自动化测试实战进阶之网页单选性别资料实战 简介:讲解使用selenium修改input输入框和单选框 2.自动化测试之页面常见弹窗处理 简介:讲解使用seleniu ...

  2. 『心善渊』Selenium3.0基础 — 25、unittest单元测试框架

    目录 1.unittest基本简介 2.unittest基本概念 (1)unittest核心的四个概念 (2)如何创建一个测试类 (3)test fixture常用的四个方法 (4)unittest编 ...

  3. selenium+python+unittest实现自动化测试(入门篇)

    本文主要讲解关于selenium自动化测试框架的入门知识点,教大家如何搭建selenium自动化测试环境,如何用selenium+python+unittest实现web页面的自动化测试,先来看看se ...

  4. Python unittest第一篇:基础入门+命令行编译

    unittest单元测试框架最初受JUnit启发,与其他语言的主要单元测试框架具有相似的风格. 它支持测试自动化,支持开启或关闭某个测试,支持结合测试.另外它可以生成各个单元测试的报告.为了实现以上功 ...

  5. python unittest 快速入门

    import unittest def add(x, y): return x + y class TestLearning(unittest.TestCase): def setUp(self): ...

  6. Python中的单元测试模块Unittest快速入门

    前言 为什么需要单元测试? 如果没有单元测试,我们会遇到这种情况:已有的健康运行的代码在经过改动之后,我们无法得知改动之后是否引入了Bug.如果有单元测试的话,只要单元测试全部通过,我们就可以保证没有 ...

  7. python + selenium + unittest 自动化测试框架 -- 入门篇

    . 预置条件: 1. python已安装 2. pycharm已安装 3. selenium已安装 4. chrome.driver 驱动已下载 二.工程建立 1. New Project:建立自己的 ...

  8. unittest单元测试框架入门及应用

    一.简介 unittest是Python单元测试框架.unittest它支持自动化测试,在测试中使用setup(初始化)和shutdown(关闭销毁)操作,组织测试 用例为套件(批量运行),以及把测试 ...

  9. django1.11入门

    快速安装指南¶ 在使用Django之前,您需要安装它.我们有 完整的安装指南,涵盖所有可能性; 本指南将指导您进行简单,最小化的安装,在您完成介绍时可以正常工作. 安装Python¶ 作为一个Pyth ...

随机推荐

  1. ArrayList 与LinkedList 的区别及分别的优缺点

    ArrayList,与LinkedList都是属于实现了List接口的类.首先从名字前缀开始看  ,Array表示数组,Link表示链表. 所以ArrayList底层是基于动态数组的.而LinkedL ...

  2. Welcome to GnuPG 2.2

    Welcome to GnuPG 2.2 Installation Instructions Double click the Install package to install GnuPG 2.2 ...

  3. Codeforces I. Barcelonian Distance(暴力)

    题目描述: In this problem we consider a very simplified model of Barcelona city. Barcelona can be repres ...

  4. 运维笔试Python编程题

    一.用Python语言把列表[1,3,5,7,9]倒序并将元素变为字符类型,请写出多种方法: 第一种方法: list = [1, 3, 5, 7, 9] list.reverse() list2 = ...

  5. C#WinForm无边框窗体移动----模仿鼠标单击标题栏移动窗体位置

    C#WinForm无边框窗体移动方法.模仿鼠标单击标题栏移动窗体位置 这里介绍俩种办法 方法一:直接通过修改窗体位置从而达到移动窗体的效果 方法二:直接伪装发送单击任务栏消息,让应用程序误以为单击任务 ...

  6. C# CefSharp如何在Winforms应用程序中使用

    最近做了一个很小的功能,在网页上面打开应用程序,用vs的debug调试,可以正常打开应用程序,可布置到iis上面却无法运行应用程序,吾百度之,说是iis权限问题,吾依理做之,可怎么折腾也不行.最后bo ...

  7. 数据库连接的配置文件activation节点

    在数据库连接连接不上的时候,一定要查看一下数据库的配置文件,<activeByDefault>这个节点比较关键,表示的是默认的连接数据库节点,当然配置文件中只能有一个这样的节点.否则是会报 ...

  8. JPA注解开发

    JPA注解开发 jpa是sun公司的一个ORM规范,只有接口和注解,没有具体实现. jpa是EJB3中的. 单表常用注解 书写注解,并配置 @Entity @Table(name = "c_ ...

  9. vigil deb 包制作

    前边有写过简单rpm 包的制作,现在制作一个简单的deb 包. deb 包的制作是通过源码编译+ fpm 环境准备 rust curl https://sh.rustup.rs -sSf | sh 配 ...

  10. 19-ESP8266 SDK开发基础入门篇--C# TCP客户端编写 , 连接和断开

    https://www.cnblogs.com/yangfengwu/p/11130428.html 渐渐的看过去,,,好多节了... 这节做一个C# TCP客户端 新建项目啥子的就不详细截图写了,自 ...