Intellij Idea 如何在Cucumber IntelliJ插件中从类路径(jar)链接StepDefination类

oxcyiej7  于 2022-11-21  发布在  其他
关注(0)|答案(2)|浏览(172)

我想使用来自Maven jar依赖项的现有步骤定义类。
我的 cucumber 测试工作,如果从运行类(与胶水包)和mvn CLI运行。但问题是与IntelliJ cucumber 插件的步骤是来自jar。在功能文件的步骤,我正在使用的jar显示为“未定义的步骤引用:..."。我甚至不能直接从功能文件运行。
有没有一种方法可以配置 cucumber 插件使用从类加载器/jar的步骤定义?

kadbb459

kadbb4591#

发布对我有效的解决方案:

  • 使用IntelliJ 2020.1 +
  • 在 cucumber 运行配置中:为类路径选择jar清单
  • 将Jar与源Jar一起部署到Nexus,如下所示

您可以通过将maven-source-plugin插件添加到您的构建中来简单地实现这一点

<build>
            <plugins>
                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-source-plugin</artifactId>
                    <version>3.2.0</version>
                    <executions>
                        <execution>
                            <id>attach-sources</id>
                            <goals>
                                <goal>jar</goal>
                            </goals>
                        </execution>
                    </executions>
                </plugin>
            </plugins>
    </build>
  • 在其他项目中添加依赖项并确认源代码是从存储库下载的

文件-〉项目结构-〉库-〉选择工件-〉源,确保它不是红色的。

  • 更新IntelliJ以使用最新版本,对我来说,IntelliJ版本2019不起作用,但2020.1能够找到步骤定义。
    **PS:**我使用Java8和Lambda exp,我可以确认它是否有效。
368yc8dk

368yc8dk2#

将Intellij从版本2019.3更新到2022.2解决了这个问题,而没有更改任何其他内容。

相关问题