为Python2.6的单元模块unittest做hack
2013-01-31 17:06
344 查看
我在Windows上开发Python用的版本是2.7,在Ubuntu上开发的版本是2.6,而在Python的unittest模块中,有几个方法是在2.7才有的,它们是:
为了能让在Python2.7上开发的单元测试代码顺利地在Python2.6上运行,我做了一下hack。
测试顺利通过,默认调用不存在的assert方法时,让它乐观地通过测试吧。
Method | Checks that | New in |
---|---|---|
assertEqual(a,b) | a ==b | |
assertNotEqual(a,b) | a !=b | |
assertTrue(x) | bool(x) is True | |
assertFalse(x) | bool(x) is False | |
assertIs(a,b) | a isb | 2.7 |
assertIsNot(a,b) | a isnotb | 2.7 |
assertIsNone(x) | x isNone | 2.7 |
assertIsNotNone(x) | x isnotNone | 2.7 |
assertIn(a,b) | a inb | 2.7 |
assertNotIn(a,b) | a notinb | 2.7 |
assertIsInstance(a,b) | isinstance(a, b) | 2.7 |
assertNotIsInstance(a,b) | not isinstance(a,b) | 2.7 |
#!/usr/bin/python #coding: UTF-8 """ @author: CaiKnife """ import __init__, unittest def __getattr__(self, name): if name in ("assertIs", "assertIsNone"): statement = "a is b" elif name in ("assertIsNot", "assertIsNotNone"): statement = "a is not b" elif name == "assertIn": statement = "a in b" elif name == "assertNotIn": statement = "a not in b" elif name == "assertIsInstance": statement = "isinstance(a, b)" elif name == "assertIsNotInstance": statement = "not isinstance(a, b)" else: statement = "True" def wrapper(a=None, b=None): return self.assertTrue(eval(statement)) return wrapper unittest.TestCase.__getattr__ = __getattr__ class TestCase(unittest.TestCase): def test_func(self): self.assertHahahaha() if __name__ == '__main__': unittest.main()
测试顺利通过,默认调用不存在的assert方法时,让它乐观地通过测试吧。
相关文章推荐
- python 单元测试的模块 pyUnit(unittest),mock与Python测试
- python的unittest模块实现软件单元测试
- Python Unittest 自动化单元测试框架Demo
- Python中的测试模块unittest和doctest的使用教程
- Python模块——unittest 单元测试
- python unittest单元测试模块 test模块test_support使用
- PYTHON单元测试模块unittest
- Python单元测试unittest加载方式之一:unittestmain()启动单元测试模块
- Python中unittest模块做UT(单元测试)使用实例
- Python unittest 模块
- Python unittest模块用法实例分析
- Python Unittest 自动化单元测试框架Demo
- 【unittest】unittest单元模块做assert
- python-unittest模块【单元测试】
- Python Unittest自动化单元测试框架详解
- 举例如何使用Python unittest 模块进行接口测试
- Python模块――unittest 单元测试
- Python Unittest 自动化单元测试框架Demo
- Python中unittest模块做UT(单元测试)使用实例
- python进阶之Unittest用法(2)