当测试具有不同输入的单个函数(某些是默认值)时,最好这样做:
def test_init(self):
page = HTMLGen("test", "path\\goes\\here")
self.assertEqual(page.path, "path\\goes\\here\\index.html")
page_2 = HTMLGen("test", "path\\goes\\here", "cool_page")
self.assertEqual(page_2.path, "path\\goes\\here\\cool_page.html")
或
def test_init(self):
page = HTMLGen("test", "path\\goes\\here")
self.assertEqual(page.path, "path\\goes\\here\\index.html")
def test_init_with_filename(self):
page = HTMLGen("test", "path\\goes\\here", "cool_page")
self.assertEqual(page.path, "path\\goes\\here\\cool_page.html")
答案 0 :(得分:1)
第二种方法更好,因为如果第一次测试失败,第二次测试仍然有机会运行。这可以为您提供更多信息,以便准确地追踪错误发生的位置以及导致错误的原因。
此外,任何清理/拆卸代码都将在测试之间运行,这有助于保证测试是独立的。