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. python3 pathlib库中的Path类的使用

    调用库 from pathlib import Path 获取 Path 的文件名 Path.name 参考 https://blog.csdn.net/amanfromearth/article/d ...

  2. ZROI1119 【十一·联考】幸福

    ZROI1119 [十一·联考]幸福 传送门 一道矩阵快速幂. #include<iostream> #include<cstdio> #include<algorith ...

  3. Ansible之playbook的使用

    playbook介绍 一. 为什么引入playbook 我们完成一个任务,例如安装部署一个httpd服务,我们需要多个模块(一个模块也可以称之为task)提供功能来完成.而playbook就是组织多个 ...

  4. Linux搭建Nexus3.X构建maven私服

    备注:linux版本: ubuntu 同时已经部署好JDK8环境 一.linux安装nexus 1.创建文件夹并进入该目录 cd /usr/local && mkdir nexus & ...

  5. 《Linux就该这么学》自学笔记_ch21_使用Git分布式版本控制系统

    <Linux就该这么学>自学笔记_ch21_使用Git分布式版本控制系统 文章主要内容: 分布式版本控制系统 使用Git服务程序 提交数据 移除数据 移动数据 历史记录 还原数据 管理标签 ...

  6. go 语言的一个赋值操作

    最近在看client-go源码,在源码的\tools\caches\store.go文件中有一行代码不得其解(如下标黄内容),它将一个struct赋值给了一个interface type Store ...

  7. Vivado_HLS 编译报错error: AP_STREAM macros are deprecated

    D:/vivado2018.3/Vivado/2018.3/common/technology/autopilot\ap_stream.h:62:2: error: AP_STREAM macros ...

  8. vue截取字符串

    1.vue中截取前11位字符串 <li> <span>立案时间:</span> <p>{{jsyd.TIME.substring(0,10)}}< ...

  9. Python数组操作将一维数组变成二维数组

    一.问题 我们在进行数组操作的时候会遇到将一个低维的数组变成一个高维的素数组 二.解决 第一种方法基本思路就是将低维数组进行等长的循环,在第一次为零的情况下,需要添加一个[]数组,原因是将它的基本框架 ...

  10. 总结:WPF中模板需要绑定父级别的ViewModel该如何处理

    原文:总结:WPF中模板需要绑定父级别的ViewModel该如何处理 <ListBox ItemsSource="{Binding ClassCollection}"> ...