改进的测试用例类

dectest的Python项目详细描述


改进的测试用例类

LicenseGithubpypiTravis CI

dectest.TestCaseunittest.TestCase的替换 一些附加功能。

使用decorators进行测试、设置和拆卸

可以选择使用@test装饰符标记测试,而不是 用{{CD4}}预处理方法名称。下面的测试用例类 包含两个测试:

fromdectestimportTestCase,testclassMyTest(TestCase):deftest_foo(self):pass@testdefbar(self):pass

可以使用@before@after标记setup和teardown方法。 分别是装修工。一个类可以有多个设置和拆卸 方法:

fromdectestimportTestCase,before,afterclassMyTest(TestCase):@beforedefsetup_stuff(self):pass@beforedefsetup_more_stuff(self):pass@afterdefteardown_all_stuff(self):pass

类内的执行顺序未定义且不应为 依赖于它,可以保证超级类中的setup方法 在子类中的方法之前执行,并在子类中删除方法 在超级类中的teardown方法之前执行:

fromdectestimportTestCase,before,afterclassMySuperTest(TestCase):@beforedefsuper_setup(self):print("setup first")@afterdefsuper_teardown(self):print("teardown second")classMySubTest(MySuperTest):@beforedefsub_setup(self):print("setup second")@afterdefsub_teardown(self):print("teardown first")

补丁支持

dectest.TestCase有一个patch()方法来使用 unittest.mock.patch()。此修补程序在测试期间被删除 拆卸:

fromdectestimportTestCase,testclassMyPatchTest(TestCase):@testdeffoo(self):exit=self.patch("sys.exit")# will be stopped during teardown# call implementationexit.assert_called_with(1)

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java为什么javaassist仅在项目中使用lambda时加载Entitymanager时抛出无效的常量类型:18   java如何识别用户是否在Alexa中首次启动技能?   java maven:如何防止插件更新   java StringBuilder将null追加为“null”   在java中,我可以在画布上绘制画布吗?   java如何在JRadioButton上垂直对齐文本和图像?   java“类是对象的集合”。这个定义是对的还是错的?   java如何用其他字符替换字符串中的1个或多个字符?   Java的HashSet<Double>及其子集的hashcode的唯一性   对象ArrayList的java并发修改错误   多线程Java线程:让EDT函数等待长时间运行的函数离开EDT   java如何重写方法,将一个实例变量和一个局部变量相加,从而生成一个数据类型为Double的新变量?