在多个Fitnesse测试之间共享content.txt数据

时间:2015-01-22 16:47:55

标签: java fitnesse

我试图在两个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|

3 个答案:

答案 0 :(得分:2)

您可以使用!include标记将页面包含在另一个页面中。

答案 1 :(得分:1)

当FitNesse测试引擎创建TestUtility之类的工具时,FitNesse会对其进行初始化,以便您使用getText等方法从测试页面访问信息。使用new创建工具时,此信息未初始化,调用getText将失败,如您所见。

如果要使用其他类中的fixture的信息,可以将信息放入静态字段,这样就可以在另一个类中使用它,而无需使用new创建新实例。

答案 2 :(得分:1)

最好的方法是创建一个SetUp ..

使用SetUp或SuiteSetUp