2

以下步骤:

  1. 创建新的 Maven Java 项目
  2. 下载了 JBehave JAR 文件版本 3.6.8 并将其添加到配置构建路径 > 添加外部 jars 并添加了 JUnit4
  3. 从帮助 > 安装新软件安装 Eclipse 插件
  4. 在我的工作区的测试源文件夹下创建了一个名为 SampleTests 的包
  5. 在上述包 (Login.story) 中创建了一个 JBehave 故事
  6. 在上述包(LoginTest.java)中创建了一个Java类
  7. 在上述包中创建了一个Java类(LoginTestSteps.java)
  8. 在我的 Java 类中导入 Given、Named、Then、When 注释
  9. 在我的 JBehave 故事文件中编写了两个不同的场景

故事已成功映射到步骤,并将 maven 和 selenium 依赖项添加到 Pom 文件,因为我已经在测试 NG 中转换了项目,想使用测试 NG 运行它。是否需要以 Junit 身份运行。并且还在构建路径中添加了 TestNG 的库。

我只是想知道在我的 Maven 项目中设置 jbehave 时错过了什么以及如何运行我的故事。

请建议

提前致谢!

4

1 回答 1

1

我不知道您是否找到了解决方案,也不知道 TestNg,但如果您想使用 JUnit 运行它,请确保您具备以下条件:

你的 java 故事类应该扩展org.jbehave.core.junit.JUnitStory.
除非配置正确,否则 JBehave 在类路径中查找带有故事类名称的故事文件。如果您的故事类是“LoginTest”,它将寻找“login_test.story”。在故事类中放置这个方法:

@Override
    public InjectableStepsFactory stepsFactory() {        
        // varargs, can have more that one steps classes
        return new InstanceStepsFactory(configuration(), new LoginTestSteps());
    }

然后从 Eclipse 将其作为 JUnit 测试运行。

于 2015-04-16T02:55:28.757 回答