Jenkins搭建自动化测试环境

  • Jenkins的准备

1) 安装 jenkins.io中下载.war包
2) 启动 java -jar jenkins.war --httpPort=8081
3) 访问 192.168.140.152:8081
  根据提示路径,获取密码 vim initialAdminPassword,复制到浏览器
  选择安装插件为:安装建议插件
  创建admin用户:admin/admin
6) 插件安装:
  Manage Jenkins -> Manage Plugins -> 安装rebuilder和safe restart
7) 配置全局安全属性:
  Manage Jenkins -> Configure Global Security -> Authorization -> Matrix-based security -> Add user or group -> 给admin勾选权限
8) 添加用户:
  Manage Jenkins -> Manage Users -> Create User -> test/123
  给test赋权:除Administrator,都选

  • 应用服务器的准备

1) 添加节点
  Manage Jenkins -> Manage Nodes -> New Node -> testEnv/测试环境主机+勾选Permanent Agent
2) 配置路径、IP、用户名、密码
  remote root directory: /root/.jenkins
  launch method: launch agent agents via SSH
  host: 192.168.140.151 应用服务器地址
  credentials: 添加root/root
  save
3) 启动从节点验证linux服务器已经成功注册到jenkins上
  nodes -> TestEnv -> launch agent
  错误1:Key exchange was not finished, connection is closed.
  => host key verification strategy: Non verifying verification strategy
  错误2:Couldn't figure out the Java version of /root/.jenkins/jdk/bin/java
  => advanced - JavaPath: /usr/local/src/java/jdk1.8.0_201/bin/java
4) 新建Job验证Jenkins任务可以远程运行在Linux服务上
  new item -> Restrit where this project can be run -> label expression: TestEnv -> Build: execute shell -> command: ifconfig
  save -> build now -> build history -> console output

  • 应用的准备

1) fork github上的应用,获得代码修改权限
2) 把应用源码clone到本地:git clone git@github.com:princeqjzh/order.git
3) 将本地代码导入IDEA,并编译
  mvn clean install
  mvn clean package
4) 执行sql语句导入应用数据,并配置数据库参数url、username、password
  maven -> order -> plugins -> tomcat7 -> tomcat7:run双击
  浏览器查看数据是否正确
5) commit修改的源码,并push到github服务器
  git status
  git add srcmain esourcesspringapplicationContext.xml
  git status
  git commit -m "update mysql configuration"
  git push

  • 自动化部署任务的开发

1) 简述自动化部署过程,编写deploy.sh
    git同步最新代码 -> maven打包 -> 停止tomcat -> 部署应用 -> 启动tomcat -> 验证结果
2) 创建Jenkins部署任务
    创建Jenkins任务 -> 填写server信息 -> 配置git参数 -> 填写构建语句,实际部署测试环境
3) 运行部署任务
    执行Jenkins部署任务 -> 确定执行结果成功 -> 浏览器访问部署应用程序 -> 确定发布结果的正确性
4) 测试
    修改代码 -> push到github -> build -> 浏览器查看效果

  • 遇到的问题
    • centOS查看22端口时发现netstat命令用不了

      1) yum install net-tools失败:Delta RPMs disabled because /usr/bin/applydeltarpm not installed.
      2) yum install deltarpm -y
      3) yum install net-tools

    • centOS检查是否已联网
      1) ping 114.114.114.114
      2) ping baidu.com
      3) service iptables stop 或 systemctl stop firewalld 关防火墙
      4) service network restart 或 systemctl restart network 重启网络

    • 查看远程连接是否打开
      1) netstat -anp | grep :22 查看22端口是否被sshd监听
      2) service sshd start 或 systemctl start sshd 打开sshd

    • centOS上git的安装与使用
      1) yum intall git 安装
      2) git --version 查看版本
      3) git config --global user.name "wayne" 配置用户名
        git config --global user.email "zs577215@gmail.com" 配置邮箱
        ssh-keygen -t rsa -C "zs577215@gmail.com" 生成公钥和私钥
        ~/.ssh目录下id_rsa和id_rsa.pub即为私钥和公钥
      4) 赋值公钥到github.com的SSH and GPG keys的New SSH key
        ssh git@github.com显示successfully authenticated即为成功

    • linux配置环境变量
      1) vim /etc/profile
        export JAVA_HOME=/usr/local/src/java/jdk1.8.0_201
        export JRE_HOME=/usr/local/src/java/jdk1.8.0_201/jre
        export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib:$CLASSPATH
        export PATH=$PATH:$JAVA_HOME/bin

        export MAVEN_HOME=/usr/local/src/maven3
        export PATH=${PATH}:${MAVEN_HOME}/bin
      2) . /etc/profile 加载配置

    • linux安装配置tomcat
      1) yum install wget
        wget http://mirrors.tuna.tsinghua.edu.cn/apache/tomcat/tomcat-9/v9.0.30/bin/apache-tomcat-9.0.30.zip
      2) yum install unzip
        unzip apache-tomcat-9.zip
      3) chmod a+x -R * 给当前目录下所有文件赋予可执行权限
      4) vim conf/server.xml配置端口

    • Linux系统时间
      1) date 命令查看系统时间
      2) hwclock --show 查看系统硬件时钟
      3) hwclock --hctosys 用硬件时钟同步系统时钟

原文地址:https://www.cnblogs.com/wnzhong/p/12096106.html