我一直在搜索任何文档,如果这可能与参数化junit4 testing
。如何测试数组与多输入数据的相等性
基本上我已经是两个阶级,GameEntry和记分牌:
public class GameEntry{
private String name;
private int score;
// Constructor and Getters...
}
public class Scoreboard{
private int numEntries = 0;
private GameEntry[] board;
// Constructor
public Scoreboard(int capacity){
board = new GameEntry[capacity];
}
// Add method - Only if entry is higher than current entries
public void add(GameEntry e){
// Code here...
}
// Remove method
// Reset method
}
我读过有关参数的测试,你返回不同的输入数据Passing arrays to Parameterized JUnit的数组,但它是不是很我想什么去做。我有兴趣运行10个不同的测试,我将创建一个带有gameEntries名称,分数值和另一个文本文件的输入文本文件,以获得名称和分数的预期值。我想保留测试类中的所有数据,以防我稍后想要更改数据。在输入和预期的文件被解析后,我只用Assert.assertArrayEquals(expectedResult, result)
来比较这个数组。
如果没有参数化的Junit
测试,我不应该有任何问题,但如果一个测试失败,整个测试将失败。我想我可以保留一个柜台来跟踪输入。我想写一个测试来避免DRY。这可能与Junit
或其他testing framework
?
您可以使用TestNG,其中数据提供者可用于解决这样的问题。尽管即使使用TestNG,如果一个测试用例的测试用例失败,测试也会被中止。 – biziclop