尝试采用您尚未提到的第三种方法,即重构代码,以便可以在所有10个测试之间共享该测试的一种实现。
关键是,复制代码几乎总是错误的事情。在此示例中,您可以将检查代码重构为一个名为例如的方法
IsTetrisPieceUnableToMoveLeftBecauseOfAPieceOrAWall。当为单元测试编写一些“共享”功能时,我总是会使用非常具有描述性的方法名称,因为这样可以非常清楚地说明正在执行/测试的内容。

尝试采用您尚未提到的第三种方法,即重构代码,以便可以在所有10个测试之间共享该测试的一种实现。
关键是,复制代码几乎总是错误的事情。在此示例中,您可以将检查代码重构为一个名为例如的方法
IsTetrisPieceUnableToMoveLeftBecauseOfAPieceOrAWall。当为单元测试编写一些“共享”功能时,我总是会使用非常具有描述性的方法名称,因为这样可以非常清楚地说明正在执行/测试的内容。