`

Jenkins部署项目到远端的TOMCAT下并自动化测试

阅读更多
    使用Jenkins做项目打包和部署,在上一篇文章写的有,本文主要讲在部署到TOMCAT SERVER上以后,项目正常运行,然后我执行自动化测试时,遇到下面的问题

09:58:43.947 INFO - Checking Resource aliases
09:58:43.955 INFO - Command request: getNewBrowserSession[*firefox /usr/bin/firefox, http://XXXXXXXX:8080/TEST-GUI/, , addCustomRequestHeaders=true] on session null
09:58:43.960 INFO - creating new remote session
09:58:43.981 WARN - Caution: '/usr/bin/firefox': file is a script file, not a real executable.  The browser environment is no longer fully under RC control
09:58:43.997 INFO - Allocated session 7553cfee1b99480a8b03895157dd1790 for http://XXXXXXXX:8080/TEST-GUI/, launching...
09:58:44.383 INFO - Preparing Firefox profile...
09:59:04.653 ERROR - Failed to start new browser session, shutdown browser and clear all session data
java.lang.RuntimeException: Timed out waiting for profile to be created!
        at org.openqa.selenium.server.browserlaunchers.FirefoxChromeLauncher.waitForFullProfileToBeCreated(FirefoxChromeLauncher.java:360)
        at org.openqa.selenium.server.browserlaunchers.FirefoxChromeLauncher.populateCustomProfileDirectory(FirefoxChromeLauncher.java:120)
        at org.openqa.selenium.server.browserlaunchers.FirefoxChromeLauncher.launch(FirefoxChromeLauncher.java:90)
        at org.openqa.selenium.server.browserlaunchers.FirefoxChromeLauncher.launchRemoteSession(FirefoxChromeLauncher.java:412)
        at org.openqa.selenium.server.browserlaunchers.FirefoxLauncher.launchRemoteSession(FirefoxLauncher.java:114)
        at org.openqa.selenium.server.BrowserSessionFactory.createNewRemoteSession(BrowserSessionFactory.java:381)
        at org.openqa.selenium.server.BrowserSessionFactory.getNewBrowserSession(BrowserSessionFactory.java:125)
        at org.openqa.selenium.server.BrowserSessionFactory.getNewBrowserSession(BrowserSessionFactory.java:86)
        at org.openqa.selenium.server.SeleniumDriverResourceHandler.getNewBrowserSession(SeleniumDriverResourceHandler.java:811)
        at org.openqa.selenium.server.SeleniumDriverResourceHandler.doCommand(SeleniumDriverResourceHandler.java:437)
        at org.openqa.selenium.server.SeleniumDriverResourceHandler.handleCommandRequest(SeleniumDriverResourceHandler.java:407)
        at org.openqa.selenium.server.SeleniumDriverResourceHandler.handle(SeleniumDriverResourceHandler.java:151)
        at org.openqa.jetty.http.HttpContext.handle(HttpContext.java:1530)
        at org.openqa.jetty.http.HttpContext.handle(HttpContext.java:1482)
        at org.openqa.jetty.http.HttpServer.service(HttpServer.java:909)
        at org.openqa.jetty.http.HttpConnection.service(HttpConnection.java:820)
        at org.openqa.jetty.http.HttpConnection.handleNext(HttpConnection.java:986)
        at org.openqa.jetty.http.HttpConnection.handle(HttpConnection.java:837)
        at org.openqa.jetty.http.SocketListener.handleConnection(SocketListener.java:243)
        at org.openqa.jetty.util.ThreadedServer.handle(ThreadedServer.java:357)
        at org.openqa.jetty.util.ThreadPool$PoolThread.run(ThreadPool.java:534)
09:59:04.662 INFO - Got result: Failed to start new browser session: Error while launching browser on session null
09:59:14.752 INFO - Command request: shutDownSeleniumServer[, ] on session null


在LINUX上面已经安装了Firefox,并且使用VNC可以连接上去,在上面已经有运行的1
-rw-r--r-- 1 root root 4512 Aug  2 17:46 Test-Jenkins:1.log
-rw-r--r-- 1 root root    6 Aug  2 11:47 Test-Jenkins:1.pid
-rw------- 1 root root    8 Aug  2 10:26 passwd
-rwxr-xr-x 1 root root  352 Aug  2 11:47 xstartup
-rwxr-xr-x 1 root root  654 Aug  2 11:20 xstartup_bk_original

然后我用下面命令,发现firefox可以运行的。
$>export DISPLAY=:1
$>firefox


最后的原因是jenkins在安装的时候,会创建一个jenkins,它使用jenkins运行FIREFOX导致错误出现,解决办法是把jenkins改成root,在/etc/sysconfig/下面有一个jenkins文件
## Type:        string
## Default:     "jenkins"
## ServiceRestart: jenkins
#
# Unix user account that runs the Jenkins daemon
# Be careful when you change this, as you need to update
# permissions of $JENKINS_HOME and /var/log/jenkins.
#
#JENKINS_USER="jenkins"
JENKINS_USER="root"

然后service jenkins restart 再次运行就OK了。



错误:



正确:




  • 大小: 74.2 KB
  • 大小: 63.2 KB
分享到:
评论

相关推荐

    CentOS7下svn tomcat9.0 maven3.3 jenkins实现web项目自动构建与远程发布

    5. Jenkins:Jenkins是一个开源的持续集成工具,它用于自动化各种任务,包括构建、测试和部署软件。Jenkins可以通过各种插件来扩展其功能,如自动部署。 6. 自动构建与自动部署:Web项目的自动构建与自动部署是将源...

    jenkins项目配置说明

    Jenkins,作为一款开源的持续集成和持续交付工具,是Java开发的重要辅助平台,它能够自动化各种任务,如构建、测试和部署软件。本指南将详细解析如何配置Jenkins项目,以提升开发效率并确保代码质量。 ### 一、安装...

    jenkins安装部署.docx

    Jenkins 是一个基于 Java 的自动化服务器,主要用于自动化测试和自动化部署。该指南将详细介绍 Jenkins 的安装、配置和部署过程。 Jenkins 安装 1. 下载 Jenkins war 包,下载地址为 https://jenkins-ci.org/。 2....

    java+maven+tomcat+jenkins打包安装.7z

    6. 自动化部署:利用Maven的`deploy`目标,配合Jenkins的构建后操作,可以实现应用的自动部署到Tomcat服务器。这样,每次代码更新,都能快速得到验证和部署,实现了完整的CI/CD流程。 通过以上步骤,用户将能成功...

    idea自动部署linux服务器

    在IT行业中,自动部署是一项关键任务,特别是在持续集成和持续交付(CI/CD)流程...对于Spring Boot项目,你还可以考虑集成Jenkins、GitLab CI/CD或Azure DevOps等自动化工具,以实现更复杂的持续集成和持续部署流程。

    部署文档1

    6. **持续集成与部署**:在实际生产环境中,通常会采用自动化工具如Jenkins或GitLab CI/CD进行持续集成和部署,以实现快速迭代和自动化测试。 综上所述,这个部署过程涉及了服务器基础配置、Java开发环境搭建、Web...

    java项目转web项目插件

    8. **持续集成/持续部署(CI/CD)**:插件可能与Jenkins、Travis CI等CI/CD工具对接,自动化构建和部署Web项目的过程。 在实际操作中,开发者需根据自己的项目需求选择合适的插件,并理解其工作原理和转换规则,以...

    考试类精品--Spirng Boot+Mybatis+Vue在线考试系统后端代码(前后端分离项目);本项目为前后端分.zip

    在本项目中,Spring Boot作为主框架,负责管理服务、配置、依赖等,提供了自动配置、内置Tomcat服务器、健康检查等功能,大大降低了项目的复杂性。 二、Mybatis持久层框架 Mybatis作为数据库操作的首选框架,它将...

    在线考试项目(java)

    通过Jenkins或GitLab CI/CD,实现代码自动化构建、测试和部署,提高开发效率。 总的来说,在线考试项目(Java)是一个综合运用多种技术的复杂系统,涉及到前后端开发、数据库设计、网络安全等多个方面,对于开发者...

    北大青鸟ACCP MyOFFCE系统S2sh+Extjs+sql20000

    9. **部署与运维**:可能涉及Tomcat、Jenkins等服务器和持续集成工具,实现应用的自动部署和监控,确保系统能够高效、稳定地运行在生产环境中。 综上所述,北大青鸟ACCP MyOFFCE系统是一个综合运用了现代Java技术、...

    运维管理系统.pdf

    7. **自动化运维**:虽然文档没有明确提及,但在实际运维工作中,通常会使用自动化工具如Ansible、Chef或Jenkins来自动化部署流程,提高效率,减少人为错误。 8. **版本控制**:在更新程序时,对WAR包的管理和版本...

    最新在线视频网站开发+jsp.zip

    以及**持续集成/持续部署(CI/CD)**流程,如Jenkins,自动化构建和部署项目。 通过这个项目,你将全面掌握Java Web开发的基本流程,提升项目实战能力,并对视频网站的运营和管理有更深入的理解。同时,这也是一个很...

    springboot322疫情期间高校人员管理.zip

    10. **持续集成/持续部署(CI/CD)**:利用Jenkins、GitLab CI/CD等工具,可以自动化构建、测试和部署应用,提高开发效率,确保系统的稳定性和一致性。 综上所述,"springboot322疫情期间高校人员管理"项目运用了...

    Java程序员最全面的学习路线图

    - Maven、Nexus、Jenkins:工程化专题涉及的工具,实现项目构建、依赖管理和自动化部署。 4. 后端高级技术:在掌握了基础后端技术后,Java程序员需要进一步学习高级后端技术以提升能力: - Tomcat、Weblogic:...

    利Android AQuery中ajax访问SSH搭建的后台Java Web服务器

    你可以使用如Apache Maven或Gradle等构建工具,配合Jenkins等持续集成工具,通过SSH连接到服务器,自动部署你的Java Web应用。 对于SSH搭建的Java Web服务器,你需要确保服务器已安装了Tomcat、Jetty或其他Web容器...

    Parking:基于微信小程序的智能车锁项目

    10. **持续集成/持续部署(CI/CD)**:项目可能采用Git进行版本控制,结合Jenkins或GitHub Actions等工具实现自动化构建和部署,以提高开发效率和软件质量。 综上所述,"基于微信小程序的智能车锁项目"涵盖了移动...

    我的应用程序

    它们都能自动化构建过程,包括编译、测试、打包和部署。 4. **IDE支持**:Java开发者常用集成开发环境(IDE)如Eclipse、IntelliJ IDEA或NetBeans来提高效率。这些IDE提供了代码提示、调试、自动格式化等功能,使得...

    iuhyiuhkjh908u0980

    23. **Cobertura覆盖率工具**:用于测试覆盖率,可以与Tomcat结合使用,但需要解决部署和运行时的问题。 24. **JSPX和Struts2**:JSPX试图提供一个开发者友好的框架,而Struts2则是一个成熟的MVC框架,两者在Java ...

Global site tag (gtag.js) - Google Analytics