51Testing软件测试论坛

 找回密码
 (注-册)加入51Testing

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 1750|回复: 1
打印 上一主题 下一主题

python unittest 入门

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2018-4-3 14:47:55 | 只看该作者 回帖奖励 |正序浏览 |阅读模式
希望

虽然本人对python的unittest不熟悉,但还是硬着头皮把这篇文章写了,希望写完之后,自己能对这个单测框
架了解的多一些。

资料来源

虽然有很多的中文博客介绍过python的unittest,但都是参考的官方的文档https://docs.python.org/2/library/
unittest.html 我就以最本源的材料作为参考资料,来写这篇文章。

基本概念

python unittest实际上是参考jUnit实现的,甚至连命名都跟java一样都是驼峰命名(这个有点让有强迫症的人
看了隐隐的不爽)

unittest包含4个基本概念

test fixture

代表准备和清理的操作。像setUp testDown 都属于test fixture
test case

代表最基本的测试单元,检查在特定输入的情况下是否有一个特定的输出。通过集成unitest中的TestCase类,
可以快速的写出一个test case
test suite

test suite由一组test case组成,不过其中也可以包含test suite。代表所有的case合集
test runner

test runner运行所有的case,并将结果展现给用户。展现的方式可以是图形或文本,等等。
简单的使用例子

先来个简单的斐波那契

  1. def f(n):
  2.   if n < 2:
  3.     return 1
  4.   return f(n-1) + f(n-2)
  5. 测试代码

  6. import unittest

  7. class TestF(unittest.TestCase):
  8.     def setUp(self):
  9.         print 'setUp'

  10.     def tearDown(self):
  11.         print 'tearDown'

  12.     def test_f(self):
  13.         self.assertEqual(f(3), 2)


  14. if __name__ == '__main__':
  15.     unittest.main()
复制代码


分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
回复

使用道具 举报

本版积分规则

关闭

站长推荐上一条 /1 下一条

小黑屋|手机版|Archiver|51Testing软件测试网 ( 沪ICP备05003035号 关于我们

GMT+8, 2024-11-26 16:40 , Processed in 0.065015 second(s), 23 queries .

Powered by Discuz! X3.2

© 2001-2024 Comsenz Inc.

快速回复 返回顶部 返回列表