gpt4 book ai didi

java - 代码从 Eclipse 构建得很好,但从 Jenkins 抛出编译时错误

转载 作者:行者123 更新时间:2023-12-02 01:39:35 25 4
gpt4 key购买 nike

我是 Jenkins 的新手,我有使用 maven 构建的 selenium 代码。当我将 pom.xml 文件作为 maven -> build from Eclipes 运行时,我在 pom.xml 中提到了 maven 的 testng.xml 文件,代码构建良好,甚至生成了项目的 jar 文件。我已将相同的代码集成到 Jenkins 工作中。当我运行该作业时,我观察到 Jenkins 没有从 pom.xml 下载 jars [因为我在 Jenkin 作业控制台中没有看到任何 jar 下载日志],并且抛出错误说找不到包

ajnakir@WKWIN9326287 MINGW64 /c/D/QURATE/LoggingAndAssertExample (master)
$ mvn clean install
[INFO] Scanning for projects...
[INFO]
[INFO] --------------< com.sapient.mercury:PageFactoryFrameWork >--------
------
[INFO] Building PageFactoryFrameWork 0.0.1-SNAPSHOT
[INFO] --------------------------------[ jar ]---------------------------
<小时/>
[INFO]
[INFO] --- maven-clean-plugin:2.5:clean (default-clean) @
PageFactoryFrameWork ---
[INFO] Deleting C:\D\QURATE\LoggingAndAssertExample\target
[INFO]
[INFO] --- maven-resources-plugin:2.6:resources (default-resources) @
PageFactoryFrameWork ---
[WARNING] Using platform encoding (Cp1252 actually) to copy filtered
resources, i.e. build is platform dependent!
[INFO] Copying 5 resources
[INFO]
[INFO] --- maven-compiler-plugin:3.8.1:compile (default-compile) @
PageFactoryFrameWork ---
[INFO] Changes detected - recompiling the module!
[WARNING] File encoding has not been set, using platform encoding Cp1252,
i.e. build is platform dependent!
[INFO] Compiling 4 source files to
C:\D\QURATE\LoggingAndAssertExample\target\classes
[INFO] -------------------------------------------------------------
[ERROR] COMPILATION ERROR :
[INFO] -------------------------------------------------------------
[ERROR] /C:/D/QURATE/LoggingAndAssertExample/src/main/java/
com/banking/resources/BasePage.java:[17,26] package org.testng.asserts
does not exist
[ERROR]

/C:/D/QURATE/LoggingAndAssertExample/src/main/java/
com/banking/resources/BasePage.java:[23,23] cannot find symbol
symbol: class SoftAssert
location: class com.banking.resources.BasePage
[ERROR] /C:/D/QURATE/LoggingAndAssertExample/src/main/
java/com/banking/resources/Browser.java:[16,26] package
org.testng.asserts does not exist
[ERROR]
/C:/D/QURATE/LoggingAndAssertExample/src/main/java/
com/banking/resources/Browser.java:[23,23] cannot find symbol
symbol: class SoftAssert
location: class com.banking.resources.Browser
[ERROR]

/C:/D/QURATE/LoggingAndAssertExample/src/main/java/
com/banking/resources/Browser.java:[23,51] cannot find symbol
symbol: class SoftAssert
location: class com.banking.resources.Browser
[INFO] 5 errors
[INFO] -------------------------------------------------------------
[INFO] -----------------------------------------------------------------
-------
[INFO] BUILD FAILURE
[INFO] -----------------------------------------------------------------
-------
[INFO] Total time: 2.542 s
[INFO] Finished at: 2019-08-14T19:15:25+05:30
[INFO] -----------------------------------------------------------------
-------
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-compiler-
plugin:3.8.1:compile (default-compile) on project PageFactoryFrameWork:
Compilation failure: Compilation failure:
[ERROR]
/C:/D/QURATE/LoggingAndAssertExample/src/main/java/
com/banking/resources/BasePage.java:[17,26] package org.testng.asserts
does not exist

请帮助我我应该如何进行

我进行了交叉检查并确保所有必要的插件和映射(例如 Git hub 存储库 url)均可用。我什至可以运行另一个项目,该项目的源代码来 self 的本地

最佳答案

确保明确添加 TestNG dependency给您pom.xml文件如:

<dependency>
<groupId>org.testng</groupId>
<artifactId>testng</artifactId>
<version>6.14.3</version>
<scope>test</scope>
</dependency>

一般按照Page Object Model Design Pattern最佳实践 你不应该在页面对象类中有任何断言,它们的目标是在 UI 和测试逻辑之间提供一个抽象层,所以你应该只有 WebElements那里有定义和辅助函数,但是 Assertions应仅放置在测试代码中,而不是放置在页面对象中

关于java - 代码从 Eclipse 构建得很好,但从 Jenkins 抛出编译时错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57496730/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com