无法运行FitNesse示例(无法找到类/构造函数)

时间:2014-05-08 08:57:02

标签: java fitnesse fitnesse-slim

我无法运行FitNesse中最基本的例子。

要么我收到此错误

__EXCEPTION__:java.lang.NoClassDefFoundError: MyTestFixture (wrong name: my/package/MyTestFixture)

或者我收到此错误

Could not invoke constructor for my.package.MyTestFixture

取决于我是否将完整的包名称添加到我的测试表的标题中(参见下面的示例)。

我的FitNesse代码如下所示:

!define TEST_SYSTEM {slim}

!path   D:\tools\FitNesse\
!path   D:\Users\myName\workspace\myProject\target\

!|import|
|my.package|

!|my.package.MyTestFixture|
|TestInt1            |test int 2            |product?            |
|5                   |2                     |10                  |
|10                  |5                     |50                  |
|25                  |0                     |0                   |
|2                   |-2                    |-4                  |
|5                   |0.1                   |1                   |

!define COLLAPSE_SETUP {true}
!define COLLAPSE_TEARDOWN {true}

第一个!路径指向包含fitnesse-20140418.jar的目录,第二个路径指向MyTestFixture.class。

这里是MyTestFixture的java代码:

package my.package;

public class MyTestFixture {
    private int testInt1;
    private int testInt2;

    public void setTestInt1(int number) {
        this.testInt1 = number;
    }

    public void setTestInt2(int number) {
        this.testInt2 = number;
    }

    public int getProduct() {
        return testInt1 * testInt2;
    }
}

我正在使用JDK 1.6和Eclipse + Maven。 FitNesse在本地服务上运行(通过fitness-standalone.jar)。 fitnesse-20140418.jar是Maven的pom.xml中的依赖项,也位于D:\ tools \ FitNesse。我基本上阅读了Google在这些错误上吐出的所有内容,包括Stack Overflow。

我该怎么做才能让这个例子运行?

1 个答案:

答案 0 :(得分:1)

我设法解决了。

这个网站帮助我找到了正确的解决方案: http://www.erikojebo.se/Code/Details/247

而不是!path D:\ Users \ myName \ workspace \ myProject \ target我必须指向D:\ Users \ myName \ workspace \ myProject \ target \ classes(或者只是' bin' if你没有使用Maven)。然后它将通过给定的import语句解析为正确的类子文件夹。

相关问题