如何测试Python数独类

2024-06-16 10:26:07 发布

您现在位置:Python中文网/ 问答频道 /正文

我写的基本测试,我的数独检查器,但我有一个问题,它的测试。我不知道发生了什么事。如果我要退货的话。我真的不知道。请帮忙谢谢。你知道吗

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)

Tags: andselfboardtruereturndefcheckerresult