Tag: jenkins

在通过Jenkins作为Windows服务运行时无法最大化浏览器

通过Windows运行测试脚本时,由于脚本失败,无法最大化浏览器窗口, 尝试了这个线程中提到的所有可能的方法,但没有使用无法通过Jenkins中的Selenium为Chrome浏览器设置大小(增加大小)? 有没有办法最大化窗口? 任何帮助表示赞赏。 提前致谢。

系统中发现了selenium元素,但在Jenkins中找不到

我和我的团队最近开始使用Selenium Web Driver和JUnit开发自动化脚本。 我正面临一个问题,而我完全没有关于如何继续的想法。 任何建议都会有用。 问题出在这里:我有一个页面,我在表单中上传两个excel,然后按提交按钮确认上传。 上传完成后,它会使用数据填充数据库,下一页确认每个Excel的行数。 我正在尝试获取确认上传的元素,这是一种“标签”类型。 所有这些都可以在我的电脑上成功地在本地工作(Windows 7,firefox webdriver)。 上传我的代码时,当jenkins构建/执行它时,我得到一个“未找到元素”,测试失败。 由于我无法直观访问jenkins运行的内容,因此我使用getPageSource()替换了元素确认(在jenkins上失败getPageSource() 。 getPageSource()返回我希望看到的页面,我想要找到的元素(本地和jenkins)。 关于可能发生的事情的任何想法? 笔记: 有两个10sec thread.sleep。 一个在上传每个Excel时,一个在点击提交后,以确保加载下一页并成功提交excel。 我尝试使用xpath定位元素。 事实上,我使用了Firefox中的Firebug和Chrome中的Web开发人员给我的xpath。 只是为了确保xpath没有任何问题。 两个xpath都在我的本地机器上成功定位元素,但在jenkins上失败。 执行测试(本地和Jenkins)我可以看到数据库填充它应该。 请原谅我缺乏代码,但我可以分享的内容受到限制。

Jenkins插件中的变量替换

我正在开发一个新的Jenkins插件,该插件将在Jenkins作业的构建阶段执行,并且要求允许用户在插件的作业配置中指定变量名称(而不是文字值)。 目的是当作业执行时,用户指定的变量名称将替换为与变量关联的实际值,然后插件将在运行perform方法时使用此实际值。 例如,如果具有值myValue的变量MY_VARIABLE被作业的另一部分注入到构建环境中,并且在我的插件的作业配置中指定了值${MY_VARIABLE} ,那么我希望该插件替换${MY_VARIABLE}使用myValue变量的实际值。 做了一些研究后,我理解Jenkins不会自动用作业配置中的变量替换它们各自的值,这必须由插件处理。 我无法解决的是在我的插件中执行替换的最佳方法。 到目前为止我找到的唯一解决方案是解析从作业配置传递的字符串,看它是否与变量的正确模式匹配,然后在我的代码中查找值。 我的问题是Jenkins API是否提供了一个更好的解决方案,允许我的插件替换具有实际值的变量?

如何使用jenkins将spring boot jar文件部署到EC2?

我正在尝试将Spring启动应用程序部署到AWS EC2实例。 我已经看到很多博客和教程完全解释了部署过程,这是可以理解的。 我正在努力如何在jenkins中进行持续部署或交付,其中主要function是春季启动应用程序名称或jar文件名称更改该时间。 我的管道 pipeline { agent any tools{ maven ‘localmaven’ } stages { stage(‘Build’) { steps { sh ‘mvn clean package’ } post { success { echo ‘Now Archiving…’ archiveArtifacts artifacts: ‘**/target/*.jar’ } } } stage(‘Deliver’) { steps { sh ‘scp -v -o StrictHostKeyChecking=no -i /var/lib/jenkins/secrets/mykey target/*.jar ubuntu@00.00.00.00:/home/ubuntu’ sh “sshpass -p password ssh […]

如何按特定顺序运行maven测试?

我有一个maven项目和几个测试类。 我希望使用插件surefire以特定顺序运行这些测试。 例如,我有: ClassTest1.java ClassTest2.java ClassTest3.java ClassTest4.java 我想运行Class 1,然后是2,然后是3,最后是4。 如何在pom.xml中指定它?

下载工件时,Maven构建会重置连接

我们有一个maven构建,在亚马逊ec2实例中的jenkins中运行。 总构建需要20-30分钟,并且大致每隔一次运行失败,因为它无法从maven中心下载工件。 这是日志的失败部分: [DEBUG] Lifecycle default -> [validate, initialize, generate-sources, process-sources, generate-resources, process-resources, compile, process-classes, generate-test-sources, process-test-sources, generate-test-resources, process-test-resources, test-compile, process-test-classes, test, prepare-package, package, pre-integration-test, integration-test, post-integration-test, verify, install, deploy] [DEBUG] Lifecycle clean -> [pre-clean, clean, post-clean] [DEBUG] Lifecycle site -> [pre-site, site, post-site, site-deploy] [DEBUG] Using transporter WagonTransporter with priority -1.0 for https://repo.maven.apache.org/maven2 [DEBUG] […]

Groovy Classpath上的Jenkins包?

当使用Groovy Jenkins插件(不是Groovy Post Build Plugin,这是一个不同的东西)作为Post Step时,我无法解析hudson.model包中的类。 我是否需要将Jenkins .war添加到类路径中,或者这些包是否已经存在? 脚本: import hudson.model.*; import hudson.util.*; AbstractBuild currentBuild = (AbstractBuild) Thread.currentThread().executable; def mavenVer = currentBuild.getMavenArtifacts().getModuleRecords()[0].mainArtifact.version; println mavenVer; ParametersAction newParamAction = new hudson.model.ParametersAction(new hudson.model.StringParameterValue(“MAVEN_VERSION”, mavenVer)); currentBuild.addAction(newParamAction); 输出: [Common] $ /home/tester/tools/Groovy_1.8.3/bin/groovy /home/tester/workspace/Common/hudson8369102960709507246.groovy org.codehaus.groovy.control.MultipleCompilationErrorsException: startup failed: /home/tester/workspace/Common/hudson8369102960709507246.groovy: 8: unable to resolve class AbstractBuild @ line 8, column 15. AbstractBuild currentBuild = […]

Jenkins管道和java.nio.file。*方法的问题

我试图使用java.nio.file。*中的方法在Jenkins管道中执行一些基本的文件操作。 无论代码存在于哪个节点块,代码都在主节点上执行。 在管道中,我已经validation了各种节点块是正确的 – 它们唯一地标识特定节点。 但是,pathExists(以及移动,复制或删除文件的其他代码)始终在主节点上执行。 任何想法发生了什么或如何解决它? import java.nio.file.* String slavePath = ‘C:\\Something\\only\\on\\slave\\node’ String masterPath = ‘D:\\Something\\only\\on\\master\\node’ def pathExists (String pathName) { def myPath = new File(pathName) return (myPath.exists()) } stage(‘One’) { node (‘slave’) { bat returnStatus: true, script: ‘set’ println (pathExists(slavePath)) // Should be true but is false. println (pathExists(masterPath)) // Should be false […]

Ant / Maven:“javadoc:warning – 获取URL时出错”

我最近设置了我的构建服务器(Jenkins)来为Ant构建生成Javadocs。 但是,无论我做什么,我都无法包含外部库的链接。 当我尝试使用在线链接时,Ant返回: [javadoc] javadoc: warning – Error fetching URL: http://docs.oracle.com/javase/6/docs/api/package-list 当我使用脱机链接并引用包列表的本地副本时,它不会发出警告,但也不会生成链接。 这种情况发生在我尝试链接的每个库中,而不仅仅是Java SE。 以下是我的build.xml中链接的相应行: 和: 值得一提的是,服务器的互联网连接没有特别不寻常的配置。 经过一番研究后,我发现我收到的警告在使用代理时很常见,但我找不到在直接连接的服务器上返回的任何情况。 我还想提一下,我已经validation我的离线包列表位于正确的位置,并且可以通过构建文件的相对路径访问。 编辑#1:这显然也是Maven的一个问题,这表明Javadoc工具本身已被破坏。 编辑#2:值得一提的是我正在使用JDK 1.6 update 45进行编译。

Continuum作为Jenkins的替代品?

在我们公司,我们正在仔细研究Java Development / QA street中的产品。 我们正在研究的产品之一是Apache Continuum。 具有Continuum经验的人(最好还有Jenkins经验)可以解释Apache Continuum的优点和缺点(特别是关于Jenkins)吗? 我的第一印象是: 优点: 更适合分组构建和项目(从UI角度来看)。 缺点: 没有明确的仪表板。 一个相对较小的社区。 没有插件(对吗?)。