[CareerCup] 12.3 Test Move Method in a Chess Game 測試象棋遊戲中的移動方法

Grandyang發表於2015-10-25

 

12.3 We have the following method used in a chess game: boolean canMoveTo( int x, int y). This method is part of the Piece class and returns whether or not the piece can move to position (x, y). Explain howyou would test this method.

 

這道題讓我們測試象棋遊戲中的移動方法boolean canMoveTo( int x, int y),這個方法判斷能否把棋子移動到(x, y)位置。這類問題通常有兩種測試方法,極值測試和常規測試。

極值測試:我們需要測試一些壞的情況,可能會引起程式崩潰的值,例如

1. 檢測x和y為負值的情況

2. 檢測當x超過棋盤寬度的情況

3. 檢測當y超過棋盤高度的情況

4. 檢測一個滿棋盤

5. 檢測一個空棋盤,或是近似為空的棋盤

6. 檢測白棋子遠大於黑棋子的情況

7. 檢測黑棋子遠大於白棋子的情況

常規測試:檢測全部情況會非常耗時,所以我們只檢測部分割槽域。

 

相關文章