前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >python接口自动化测试(三)python框架unittest

python接口自动化测试(三)python框架unittest

原创
作者头像
FutureTester
发布2021-12-29 20:58:41
1.3K0
发布2021-12-29 20:58:41
举报
文章被收录于专栏:FutureTester

做测试的大多数都知道测试接口的工具及框架,工具比较常见的有jmeterpostman;自动化框架一般有

unittestpytesttestng,其中unittestpytest是基于python语言的测试框架,testng则是基于Java的测试框架,本系列文章选择unittest框架作为测试框架。

1、什么是unittest

  • 官网是这么解释的:unittest 单元测试框架是受到 JUnit 的启发,与其他语言中的主流单元测试框架有着相似的风格。其支持测试自动化,配置共享和关机代码测试。支持将测试样例聚合到测试集中,并将测试与报告框架独立。
  • 我的理解:其实unittest框架就是有一套自己特有的规格,我们在使用的时候需要遵循这个规格,它能是我们的测试变得更简单,代码更好维护,复用性更强,呈现的结果比原来更好

2、unittest的组成部分

  • 测试脚手架

官网定义:test fixture 表示为了开展一项或多项测试所需要进行的准备工作,以及所有相关的清理操作。举个例子,这可能包含创建临时或代理的数据库、目录,再或者启动一个服务器进程。

其实脚手架包含setupteardown两部分,在具体的测试中我一般会用这两部分来做初始化工作和测试完毕后的垃圾数据清理工作

代码语言:javascript
复制
def setUp(self):
    #初始化
    pass
def tearDown(self):
    #数据清理
    #或者统计
    pass
  • 测试用例

unittest 提供一个基类: TestCase ,用于新建测试用例,我们的测试用例类需要继承TestCase基类

代码语言:javascript
复制
 class demo(unittest.TestCase):
  • 测试套件

test suite 可以一起执行多个用例

代码语言:javascript
复制
if __name__ == "__main__":
    suit = unittest.TestSuite()
    suit.addTest(createCode('test01_createCode'))
    result = unittest.TextTestRunner().run(suit)
  • 测试运行器

test runner 是一个用于执行和输出测试结果的组件。这个运行器可能使用图形接口、文本接口,或返回一个特定的值表示运行测试的结果。

代码语言:javascript
复制
result = unittest.TextTestRunner().run(suit)

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
数据库
云数据库为企业提供了完善的关系型数据库、非关系型数据库、分析型数据库和数据库生态工具。您可以通过产品选择和组合搭建,轻松实现高可靠、高可用性、高性能等数据库需求。云数据库服务也可大幅减少您的运维工作量,更专注于业务发展,让企业一站式享受数据上云及分布式架构的技术红利!
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档