Junit 如何在fitnesse中模拟第三方课程

Junit 如何在fitnesse中模拟第三方课程,junit,mocking,fitnesse,fitnesse-slim,Junit,Mocking,Fitnesse,Fitnesse Slim,我写了一篇文章: !define TEST_SYSTEM {slim} !path E:\eclipse\eclipse_workspace\FitnesseDemo\bin 计算器示例 |com.example.qc.fixture.CalcFixture| |pad1|pad2|margin1|margin2|get Padding?|get Margin?| |7|8|8|8|25|26| 在实际代码中,我需要模拟一个第三方类。(三角洲) 我已经为此编写了代码,但如何在fitness

我写了一篇文章:

!define TEST_SYSTEM {slim}
!path E:\eclipse\eclipse_workspace\FitnesseDemo\bin
计算器示例

|com.example.qc.fixture.CalcFixture|
|pad1|pad2|margin1|margin2|get Padding?|get Margin?|
|7|8|8|8|25|26| 
在实际代码中,我需要模拟一个第三方类。(三角洲) 我已经为此编写了代码,但如何在fitnesse中包含该代码

我创建了一个安装页面,其中包含以下内容:

!define TEST_SYSTEM {slim}
!path E:\eclipse\eclipse_workspace\FitnesseDemo\bin
!path E:\Docs\fitnesse\powermock-mockito-1.3.6-full.jar
!path E:\Docs\fitnesse\mockito-all.jar
!path E:\Docs\Junit\powermock-module-javaagent-1.4.10.jar

|Import|
|com.example.DeltaMock|
未调用模拟对象。相反,真正的对象正在被调用。 我的设置页面代码是否错误


首先,我试图用CalcFixture进行模拟,但它总是取真实的对象。 在calc fixture中,我有以下代码

public int getPadding() throws Exception {

    Calc calc = new Calc();

    Delta ref = PowerMockito.mock(Delta.class);

    PowerMockito.whenNew(Delta.class).withNoArguments().thenReturn(ref);

    System.out.println("DeltaMocking.padding(rerf===  )" + ref);

    Mockito.stub(ref.padding()).toReturn(10);

    Padding = calc.addpadding(pad1, pad2);

    return Padding;

}
Addpadding方法具有以下代码:

public int addpadding(int x, int y) {

    int k=0;

    Delta ref = new Delta();

    System.out.println("Calc.addpadding() refff="+ref);

    int z = ref.padding();

    k = x + y + z;

    return k;
}
从未调用增量的模拟对象


请帮助我完成测试。

您的Fitnesse测试不应该关心您是使用模拟对象还是真实对象进行测试。所有工作都发生在
CalcFixture
中-这是您应该使用Mockito模拟所需对象的地方