def acquisition_required(method):
def wrapped_method(self, *args, **kwargs):
result=some complex code
if not result:
some code is here
else:
return method(self, *args, **kwargs)
return wrapped_method
我想为此编写一个单元测试 例如。
assertEqual, assertTrue..
但是我不知道如何进行测试,我已经对返回一些值或True / False的函数进行了单元测试。
我不想要任何代码只是概念
答案 0 :(得分:0)
如果您的函数将成功,则返回值将成为get方法的参考。这意味着您可以使用unittest模块的assertEqual方法。如下所示:
import unittest
import your_module
class ConfigParserTestCases(unittest.TestCase):
def test_return_method(self):
self.assertEqual(your_module.acquisition_required(method), method)
if __name__ == "__main__":
unittest.main()
注意:如果您的实现包含异常(例如:错误处理的try-except),则可以使用unittest模块的“ assertRaises”方法测试异常情况。来自Official Python documentation。
例如。在您的情况下(如果要测试ValueError异常):
with self.assertRaises(ValueError):
self.assertRaises(your_module.acquisition_required(method))
答案 1 :(得分:0)
尝试一下:
with self.assertRaises(ValueError):
self.assertRaises(your_module.acquisition_required(method))