Java自动化环境搭建笔记(3)

自动化测试

自动化的环境已经基本搭建完成,后续可对BaseTester基类以及工具类进行扩展。下面便是持续集成的环境的搭建:

  • Jenkins安装
  • git安装
  • 源码上传github
  • 配置构建

1. Jenkins安装

jenkins安装通过war包的方式,下载地址:http://mirrors.jenkins-ci.org/
其余安装方式下载地址:https://bitnami.com/stack/jenkins/installer

依赖:

1.1 安装

  1. 将下载的war包直接放置到tomcat的webapps目录。
  2. 启动或重启tomcat(windows下运行startup.bat)。
  3. 复制tomcat启动过程中打印的密钥,在第一次启动配置jenkins用,如图:1-2,或从tomcat log目录下catalina.日期.log文件中复制。
    注:也可根据第一次启动jenkins的界面提示去找该密钥。
  4. 查看tomcat conf目录server.xml配置文件中的tomcat端口,如图1-3所示。
  5. 根据配置文件中的端口,使用浏览器打开jenkins界面:http://127.0.0.1:8080/jenkins ,第一次运行可能需要等待一会。

1-1 webapps目录

1-2 启动tomcat

1-3 tomcat的端口

1.2 首次运行配置Jenkins

  1. 等待界面第一次打开后,输入密钥。

1-4 密钥输入

1-5 选择安装插件
  1. 等待插件自动安装完成,创建一个管理员账户。

1-6 管理员账户
  1. 设置实例配置,首次启动安装完成。

1-7 实例配置

1.3 插件安装

  1. Manage Jenkins -> Manage Plugins -> 可选插件:搜索Maven Integration,勾选并点击直接安装,需安装插件列表如下。

    • Maven Integration
    • Allure Jenkins Plugin
      多分支构建用:
    • Pipeline
    • Blue Ocean

插件安装
  1. 安装完成后,重启tomcat。

1.4 全局工具配置

  1. Manage Jenkins -> Global Tool Configuration配置工具

  2. 新增JDK

JDK
  1. 新增Maven

maven
  1. 配置maven配置文件路径

maven配置文件
  1. 重新下载一个allure:下载地址,项目.allure目录下的本地启动服务的时候用,jenkins集成的时候就不好用了

Allure

2. 代码上传GitHub

2.1 安装git

windows版本到官网下载了,根据提示安装就好了:下载地址

2.2 IEDA配置

  1. File | Settings | Version Control | Git 检查配置git信息

IDEA git配置
  1. File | Settings | Version Control | GitHub 路径下添加GitHub用户名密码。

添加账户

2.3 代码上传

  1. 第一次上传代码需要:

第一次上传代码

配置项目名称与描述

上传项目
  1. 非第一次上传需要按照:add -> commit -> push的步骤。

    2.1 选中项目鼠标右键。
    2.2 add
    2.3 Commit Directory
    2.4 Repository -> push

Git栏

提交3步

3. 项目构建

3.1 添加maven构建工程

  1. 新建Maven构建项目。

构建一个Maven项目
  1. 配置源码管理方式,这里用的就是Git。

源码管理

添加凭证
  1. 这里是示例,构建触发器就不写了。
  2. 构建命令, 也就是本地执行mvn进行构建的命令。

构建命令
  1. 构建后操作,调用allure来生成报告的,这里如果allure的默认结果目录没有修改就使用推荐的配置就好了。

构建后操作

3.2 构建运行

注:构建需要 2+ 才能查看到历史数据。

  1. 点击运行构建
  2. 等待运行结果
  3. 查看结果

结果界面

结果统计信息

历史数据

3.3 Pipeline多分支工程构建

  1. 创建Jenkinsfile放到项目根,提交github,内容如下:
pipeline {
agent any
stages {
stage('Build') {
steps {
bat 'mvn -Dmaven.test.failure.ignore=true clean verify site'
}
}
stage('reports') {
steps {
script {
allure([
includeProperties: false,
jdk: '',
properties: [],
reportBuildPolicy: 'ALWAYS',
results: [[path: 'target/allure-results']]
])
}
}
}
}
post {
always {
deleteDir()
}
failure {
slackSend message: "${env.JOB_NAME} - #${env.BUILD_NUMBER} failed (<${env.BUILD_URL}|Open>)",
color: 'danger', teamDomain: 'qameta', channel: 'allure', tokenCredentialId: 'allure-channel'
}
}
}
  1. 使用Blue Ocean的方式创建构建工程

打开Blue Ocean
  1. 创建流水线,根据提示创建,会自动查找根目录下的Jenkinsfile并根据该文件创建流水线。

创建多分支结构

3.4 构建运行

经典界面构建进度

分支显示

构建完成

返回经典界面查看结果:

报告首页

Blue Ocean分支流程定义界面

Java自动化环境搭建笔记(3)的更多相关文章

  1. Java自动化环境搭建笔记(2)

    Java自动化环境搭建笔记(2) 自动化测试 在笔记一中已经完成了一键构建项目.xml指定规划测试集.数据解耦与allure报告生成的开发.接下来便是: 浏览器驱动通过配置启动 页面元素定位解耦,通过 ...

  2. Java自动化环境搭建笔记(1)

    Java自动化环境搭建笔记(1) 自动化测试 先搭建java接口测试的环境: 使用mvn命令构建项目 测试集通过testNG.xml组织并运行 测试数据解耦,通过Excel等文件提供 基础依赖 创建m ...

  3. Appium TestNg Maven Android Eclipse java自动化环境搭建

    1.环境准备 1)Eclipse + maven + appium + TestNg 确保已经在Eclipse 上面安装maven TestNg的插件 2)打开Eclipse,新建一个maven项目 ...

  4. IDEA+selenium3+火狐/谷歌驱动 JAVA初步环境搭建 笔记

    0 环境 系统环境:win7 selenium驱动 谷歌浏览器以及驱动 火狐浏览器以及驱动 1 驱动地址的下载 1.1 selenium jar包 https://www.seleniumhq.org ...

  5. 黑马程序员_java基础笔记(01)...java的环境搭建

    —————————— ASP.Net+Android+IOS开发..Net培训.期待与您交流!——————————  JavaSE(Java Standard Edtion java标准版)技术概况 ...

  6. iOS自动化环境搭建——macaca

    macaca-java for ios 自动化环境搭建 基础原理解析:https://testerhome.com/topics/6608 一.环境搭建 1.安装eclipse; -----Java开 ...

  7. MAC自动化环境搭建

    UI自动化环境搭建 第一阶段:配置appium环境硬件配置mac系统电脑 java环境sunjiedeMacBook-Air:~ vicent$ java -versionjava version & ...

  8. 基于python的App UI自动化环境搭建

    Android端Ui 自动化环境搭建 一,安装JDK.SDK 二,添加环境变量 Widows:1.系统变量→新建 JAVA_HOME 变量E:\Java\jdk1.7.0 jdk安装目录 2.系统变量 ...

  9. appium ios真机自动化环境搭建&运行(送源码)

    appium ios真机自动化环境搭建&运行(送源码) 原创: f i n  测试开发社区  6天前 Appium测试环境的搭建相对比较烦琐,不少初学者在此走过不少弯路 首先是熟悉Mac的使用 ...

随机推荐

  1. vb.net 获取文件的版本号

    dim strVersion =  Reflection.Assembly.LoadFrom(strFileName).GetName().Version.ToString()

  2. Linux下的串口编程(转)

    https://blog.csdn.net/tigerjibo/article/details/6179291 #include<stdio.h> /*标准输入输出定义*/ #includ ...

  3. c# json序列化不包括某列

    .[Newtonsoft.Json.JsonIgnore]特性:使用Newtonsoft.Json序列化时字段不会被序列化. .[System.Web.Script.Serialization.Scr ...

  4. 记一次Pr字幕模糊问题及解决方法

    目录 问题: 解决: 问题: 1.导出视频后,发现字幕很模糊 2.发现我们导出时的设置如下图,画面大小为432x244 3.即使暴力修改宽度为1080,导出画面的清晰度也不会有什么变化. 解决: 1. ...

  5. Java基础之十六 数组

    数组:可以创建并组装它们,通过使用整型索引值访问它们的元素,并且它们的尺寸不能改变. 16.1 数组为什么特殊 数组与其他种类的容器之间的区别有三方面:效率,类型和保存基本类型的能力. 数组是一种效率 ...

  6. Maven私服配置Setting和Pom文件

    上一遍博客已经在linux服务器上,搭建好nexus私服了 现在就需要配置setting.xml和pom.xml来使nexus作为maven的私服.setting.xml文件在conf下面,pom.x ...

  7. AVLMap平衡二叉树

    public class AVLMap<K, V> implements Iterable<AVLEntry<K, V>> { private int size; ...

  8. 自定义Yaml解析器替换Properties文件

    自定义Yaml解析器替换Properties文件 项目结构 案例代码 配置类SpringConfiguration @Configuration @Import(JdbcCofnig.class) @ ...

  9. centos 7 下 rabbitmq 3.8.0 & erlang 22.1 源码编译安装

    centos 7 下 rabbitmq 3.8.0 & erlang 22.1 源码编译安装 安装前请检查好erlang和rabbitmq版本是否相匹配参考:RabbitMQ Erlang V ...

  10. [终极巨坑]golang+vue开发日记【一】,环境搭建篇

    写在前面 这个golang+vue大部分的内容是基于bydmm(橙卡)大佬的视频学来的,我在这里只是做一下个人开发的笔记,就是图一个乐,毕竟我只是个应届毕业生,如果真的要学请:bydmm的b站空间. ...