我试图在两个Fixture测试之间使用一个content.txt文件。一个中间类TestUtility从content.txt文件中获取数据,两个fixture测试调用该实用程序类。但是,我从getText获取NullPointerException。我认为Fitnesse不接受中间测试文件。 有谁知道我怎么能做这个工作?
public class TestUtility extends TableFixture {
@BeforeClass
public void setup() {
System.out.println("in setup");
cellR0C0 = getText(0,0);
cellR1C0 = getText(1,0);
cellR2C0 = getText(2,0);
cellR0C1 = new Double(getInt(0,1));
cellR1C1 = new Double(getInt(1,1));
cellR2C1 = new Double(getInt(2,1));
/**
*
* @param fitnessRows
*/
public void showResults(int fitnessRows){
}
}//end class TestUtility
public class MyTestFixture {
/**
*
* @param fitnessRows
*/
public void showResults(int fitnessRows){
TestUtility testUtility = new TestUtility()
testUtility.setUp();
testUTility.restOfTest()
}
}
content.txt
#!|TestUtility|
!|fitnesse.fixtures.TestUtility|
|ABCDE101|200|
|ABCDE102|300|
|ABCDE103|400|
答案 0 :(得分:2)
您可以使用!include标记将页面包含在另一个页面中。
答案 1 :(得分:1)
当FitNesse测试引擎创建TestUtility
之类的工具时,FitNesse会对其进行初始化,以便您使用getText
等方法从测试页面访问信息。使用new
创建工具时,此信息未初始化,调用getText
将失败,如您所见。
如果要使用其他类中的fixture的信息,可以将信息放入静态字段,这样就可以在另一个类中使用它,而无需使用new
创建新实例。
答案 2 :(得分:1)
最好的方法是创建一个SetUp ..
使用SetUp或SuiteSetUp