我正在为Sudoku Checker编写基本测试,但是测试存在问题。我不确定发生了什么。如果我应该退货。我真的不知道。请帮忙谢谢你。
class Sudoku_Checker(object):
def __init__(self,board):
self.board = board
def board_validater():
checkRows(self.board)
checkCols(self.board)
checkSquares(self.board)
return checkRows() == True and checkCols() == True and checkSquares() == True
# def checkRows:
#
# def checkCols:
#
# def checkSquares:
这是我写的测试。每当我在终端机上运行它们时,它只会显示“在0.000秒内进行了0次测试”。我不知道为什么它不起作用。
from ValidSudoku import *
class TestSum(unittest.TestCase):
def willWork(self):
"""
Check to return True
"""
grid = [ [5, 3, 4, 6, 7, 8, 9, 1, 2],
[6, 7, 2, 1, 9, 5, 3, 4, 8],
[1, 9, 8, 3, 4, 2, 5, 6, 7],
[8, 5, 9, 7, 6, 1, 4, 2, 3],
[4, 2, 6, 8, 5, 3, 7, 9, 1],
[7, 1, 3, 9, 2, 4, 8, 5, 6],
[9, 6, 1, 5, 3, 7, 2, 8, 4],
[2, 8, 7, 4, 1, 9, 6, 3, 5],
[3, 4, 5, 2, 8, 6, 1, 7, 9]]
result = Sudoku_Checker.board_validater(grid)
self.assertTrue(result)
def willWork2(self):
"""
Check to return False
"""
grid = [
[5, 3, 4, 6, 7, 8, 9, 1, 2],
[6, 7, 2, 1, 9, 0, 3, 4, 8],
[1, 0, 0, 3, 4, 2, 5, 6, 0],
[8, 5, 9, 7, 6, 1, 0, 2, 0],
[4, 2, 6, 8, 5, 3, 7, 9, 1],
[7, 1, 3, 9, 2, 4, 8, 5, 6],
[9, 0, 1, 5, 3, 7, 2, 1, 4],
[2, 8, 7, 4, 1, 9, 6, 3, 5],
[3, 0, 0, 4, 8, 1, 1, 7, 9]
]
result = Sudoku_Checker.board_validater(grid)
self.assertFalse(result)
答案 0 :(得分:2)
您应该更改TestSum类中的方法的名称
def willWork(self):
收件人
def testWillWork(self):
您可以在写得很好的Python文档中找到更多信息-https://docs.python.org/3/library/unittest.html