使用断言式测试在Python中隔离单元测试的规范方法是什么?
发布时间:2020-12-20 13:42:48 所属栏目:Python 来源:网络整理
导读:我最近问了这个 question,并意识到我也想知道是否有办法通过断言式测试实现’期望’隔离.我复制并粘贴了一个关于’期望’隔离的简单例子. 我是Python的新手,来自Ruby / JavaScript,并且像Rspec和Jasmine这样的测试库让我能够在测试单个函数时隔离’期望’.因
我最近问了这个
question,并意识到我也想知道是否有办法通过断言式测试实现’期望’隔离.我复制并粘贴了一个关于’期望’隔离的简单例子.
我是Python的新手,来自Ruby / JavaScript,并且像Rspec和Jasmine这样的测试库让我能够在测试单个函数时隔离’期望’.因为似乎没有一个主动维护的’期望’风格的Python库,我想知道是否有办法用unittest或pytest实现等效的测试风格(我理解的两个最流行的Python测试库) ). foo.py class Foo(): def bar(self,x): return x + 1 展望风格/描述,它 test_foo.py describe Foo: describe self.bar: before_each: f = Foo() it 'returns 1 more than its arguments value': expect f.bar(3) == 4 it 'raises an error if no argument is passed in': expect f.bar() raiseError 单元测试/断言风格 test_foo.py class Foo(): def test_bar(x): x = 3 self.assertEqual(4) x = None self.assertRaises(Error) 解决方法
unittest模块是标准库的一部分.
class TestFoo(unittest.TestCase): def setUp(self): self.f = Foo() def test_bar(self): self.assertEqual(self.f.bar(3),4) def test_missing_argument(self): self.assertRaises(TypeError,self.f.bar()) (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |