這裏的問題迷你版如何測試和記錄多次-nosetest單元測試 - 蟒蛇
a = [[1,2,3][0,0,0]]
b = [[1,0,1][0,0,0]]
c = [[0,0,0][1,0,1]]
所以如果1級[]和2級爲[[]],然後就是我試圖做的是測試以往的列表,看看是否有級別2的匹配(不管順序),所以在這種情況下,b,c是等價的。
我使用單元測試和nosetests運行它們 如果我想只是測試一個表對另一個我會做這樣的事情:
功能真相()創建我的表
def test_table1_table2(self):
for row in truth(1,3):
self.assertIn(row,truth(2,4))
但我的目標是對照我創建的所有其他表(大約20和增長)測試所有表。有些問題我無法解決(我不確定是否需要閱讀單元測試文檔或nosetest或甚至不需要它們!)
我的猜測是隻使用更多的循環拉出的可能性。但是,使用
>>> nosetest
與
assertIn
只是停止在第一個錯誤,這是不是我想要的。我需要掃描並收集哪些列表相同的信息(無論順序或嵌套列表)。也許我應該創造一些東西,忘記單元測試?
,所以我首選的輸出會是這樣的
table1 and table2 are not equivalent
table1 and table2 are not equivalent
或可能更有用和更短的也只是
table1 and table10 are equivalent
下面是代碼目前,我有,幾乎一切都只是有一個整數期望真值()使真值表(嵌套列表):
114 def test_all(self):$ |~
115 ''' will test all tables'''$ |~
116 for expression in range(self.count_expressions()):$ |~
117 num_var = count_vars(exp_choose(expression))$ |~
118 for row in truth(expression, num_var):$ |~
119 for expression2 in range(self.count_expressions()):$ |~
120 num_var2 = count_vars(exp_choose(expression2))$ |~
121 for row2 in truth(expression2, num_var2):$ |~
122 self.assertIn(row, truth(expression2,num_var2))