簡體   English   中英

如何在 Cucumber IntelliJ 插件中從類路徑 (jar) 鏈接 StepDefination 類

[英]How to link StepDefination classes from Classpath (jar) in Cucumber IntelliJ Plugin

我想使用來自 maven jar 依賴項的現有步驟定義類。

如果從 Runner Class(使用包膠)和 mvn CLI 運行,我的 cucumber 測試有效。 但問題在於來自 jar 的步驟的 IntelliJ Cucumber 插件。在我使用的來自 jar 的功能文件步驟中顯示為“未定義的步驟參考:...”。 我什至無法直接從功能文件運行。

有沒有一種方法可以配置 cucumber 插件以使用類加載器/jar 中的步驟定義?

發布解決方案對我有用:

  • 使用 IntelliJ 2020.1 +
  • 在 cucumber 運行配置: select 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>

  • 在其他項目中添加依賴項並確認源是從 repo 下載的

文件 -> 項目結構 -> 庫 -> Select 工件 -> 源,確保它不是紅色的。

  • 更新 IntelliJ 以使用最新版本,對我來說 IntelliJ 版本 2019 不起作用,但 2020.1 能夠找到步驟定義。

PS:我使用 Java8 和 Lambda exp,我可以確認它有效。

將 Intellij 從版本 2019.3 更新到 2022.2 解決了這個問題而沒有改變任何其他東西。 我的項目在Java 8

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM