这是一个专门针对 Python 中的单元测试的通用问题。将 20 个或一些输入作为键在字典中进行测试是否可以接受,其中值是函数的预期结果输出?
我在网上搜索后找不到答案。我读到的几乎所有内容都是玩具示例,例如添加数字以获得总和或连接名字和姓氏。以下是另一个以简单方式描述我的问题的玩具示例。
import unittest
import some_module
class SomeModuleUnitTest(unittest.TestCase):
def test_some_function(self):
input_output_dict = {
1: 1,
2: 4,
3: 9,
4: 16,
5: 25,
6: 36,
7: 49,
.
.
.
20: 400
}
for input_case, output_expected in input_output_dict.items():
output_actual = some_module.some_function(input_case)
self.assertEqual(output_expected, output_actual)
如果这被认为是过时的,那么用于测试多个输入的 Pythonic 解决方案是什么?