• git&github&代理工具&jenkins&抓包工具


    Django框架

    .1.        数据库

    .1.1.    Django配置数据库

    https://www.jianshu.com/p/d4a9f126ba27

    .1.2.    Django配置数据表

    数据库运行出错处理方式:

    https://blog.csdn.net/lijing742180/article/details/91966031

    git&github

    git是本地的使用的版本管理工具,通过git工具可以提交代码、代码还原等操作;github是远程仓库网站,可以托管各种git库,并提供一个web界面,这样别人可以看到你的代码,这种开源方式方便程序员之间交流和学习;github是一个面向开源及私有软件项目的托管平台,只至此git作为唯一的版本库格式进行托管,github可以建立私有库(需要收费,指定人才有权限操作),免费库都是代码开源的

    https://www.jianshu.com/p/296d22275cdd

    https://blog.csdn.net/tichimi3375/article/details/79844514

    https://www.w3cschool.cn/github/github-68on2q6a.html

    https://blog.51cto.com/13718210/2130849

    git

    git是实现历史版本管理的工具,同时也是合作开发的工具;使用git可以管理局域网内本地代码库

     

    安装git

    l  下载git

    官网httpssh://git-scm.com/downloads下载git

    配置git

    需要设置自己的身份,比如git提交代码的时候要让别人知道什么人提交了代码。

    windows打开GitBash,使用以下命令配置name和邮箱

    $ git config --global user.name "shelry"

    $ git config --global user.email "shelry.liu@sunvalley.com.cn"

    使用git

    创建仓库

    在记录内容的文件夹gittest右键打开gitBash,输入git init;则gittest就是一个仓库即工作区;可以在该工作区编写代码文件等

    提交数据

    工作区的数据需要先提交到暂存区,再由暂存区提交到本地仓库,也可以直接到工作区的数据提交到本地仓库;本地仓库再push到远程仓库,也可以从远程仓库pull数据到本地仓库

    工作区数据提交到暂存区

    l  添加文件到暂存区

    git add 文件1 文件2

    git add .   –添加目录下所有文件到暂存区

    可以添加工作区的文件到暂存区,暂存区的文件可以提交到本地仓库或回退到工作区

    l  删除工作区文件,并将删除提交到暂存区

    git rm 文件1 文件2

    git rm .  –将目录所有删除文件提交到暂存区

    l  改文件名,提交到暂存区

    git mv 原名 新名

    暂存区数据提交到本地仓库

    git commit 命令可以把暂存区的所有数据提交到本地仓库;后面可以接-m “提交说明”

    工作区数据直接提交到本地仓库

    git commit –a  --可以把工作区数据直接提交到本地仓库

    代码回滚

    HEAD表示仓库当前版本,HEAD^表示上一个版本,HEAD^^表示上上一个版本,HEAD~100表示往上100个版本;这里的版本指的是本地仓库中的版本

    l  工作区代码回滚

    工作区代码回滚到暂存区或仓库代码,即工作区代码提交暂存区或仓库后的编写的代码都回滚掉;也就是撤销工作区代码的修改

    git checkout – a.txt  回滚某个文件

    git checkout -- .    回滚全部文件

    l  暂存区代码回滚(取消暂存)

    暂存区的代码回滚,即删除存放在暂存区的代码,并不改变工作区的代码

    git reset HEAD .     回滚全部文件

    git reset HEAD a.txt  回滚某文件

    l  本地仓库代码回滚

    本地仓库的代码可以回滚到指定版本,这个时候工作区的代码也回滚到了本地仓库回滚的版本,暂存区的数据清空了,可以使用git log查看历史版本id,根据id来指定回到那个版本

    git reset –hard commit_id   --根据版本id回到指定版本

    git reset –hard HEAD^   --回到上一个版本

    分支管理

    版本库可以按分支管理,一般我们修改代码等在dev分支,代码稳定后merge到master分支;dev和master分支上的代码互不干扰

    l  创建分支

    git branch 分支名称

    默认执行git init会创建master分支,并且默认当前分支是master

    l  切换分支

    git checkout 分支名称

    l  创建分支同时切换到该分支

    git checkout –b 分支名称

    l  删除分支

    git branch –d 分支名称

    l  分支合并

    git merge 分支名称 ---可以将该分支内容合并到当前分支中

    l  列出本地分支

    git branch –a 查看所有分支

    git branch –r 查看远程分支

    返回结果中标※代表当前分支

    删除本地仓库

    直接删除目录下的.git文件后,再删除对应目录

    git常用命令

    l  git log 查看历史版本

    可以查看到所有提交的版本、修改时间、修改人、修改内容、修改提交的commit id等

    l  HEAD关键字

    git中显示的HEAD代表当前仓库的版本,git log结果中显示的HEAD->master代表此版本为当前master分支上本地仓库的版本

    l  拷贝git仓库到本地

    使用git clone拷贝一个Github到本地,让自己能够查看该项目或进行修改

    git clone url  --其中url是需要克隆项目地址

    例如:git clone git@github.com:schacon/simplegit.git  --克隆Github上的项目;克隆完后,会在当前目录下生成一个simplegit目录

    l  git add

    添加工作区到缓存,可以使用git add . 添加当前目录下所有文件;但有些lib&gen&bin目录百年都不变一次,可以在仓库目录下创建一个名为.gitignore文件,输入以下内容,就可以在add时忽略该文件中的内容

    /gen/

    /bin/

    l  git statu查看修改内容

    查看上次提交之后的更改或者写入缓存的改动;以及显示当前分支

    l  git diff

    是git status的详情命令,显示已写入缓存与已修改但尚未写入缓存的改动的详情

    git diff   显示暂存区和工作区的差异

    git diff –cached [file]  显示暂存区和上一个commit的差异

    git diff HEAD   显示工作区和最新commit的差异

    git diff [first-branch] [second-branch] 显示两次提交之间的差异

    git diff –stat    显示今天写了多少代码

    l  git tag 标签

    给最新一次的提交打上(HEAD) “v1.0”的标签

    git tag –a v1.0   --给最新一次的提交打上v1.0标签

    git log –decorate   --可以看到我们的标签

    git tag –a 标签(v1.0)  commit_id  ---给指定的id追加标签

    git tag  --查看所有标签

    git tag –a 标签  -m ‘标签信息’   --指定标签信息

    l  git pull

    git pull [origin] [分支名]:[本地分支]

    该命令将远程仓库最新内容拉到本地仓库后直接合并,这样可能会产生冲突,需要手动解决

    l  git push

    git push orgin 分支名

    将本地分支仓库代码推送到远程仓库

    l  git fetch

    git fetch origin  [分支名]

    取远程主机的分支代码,fetch只能更新本地仓库[origin->master]指向的代码为最新的,本地[master]的代码还未更新,我们还需要通过git merge origin/master来合并这两个版本,即合并分支一样

    l  git merge

    git merge 分支1   --将分支1的内容合并到当前分支中

    github

    注册github账号

    origin代表远程仓库

    l  github上注册账号

    在github网站(https://github.com/)上注册账户;填写用户名&密码&email&免费使用公开仓库等(experience可以忽略),完成邮箱验证即可

    shelry-liu/shelryliu@163.com/liu&qin123456

    l  配置密钥

    windows上打开gitbash输入命令如下:

    ssh-keygen -t rsa –C shelryliu@163.com   --然后一路按回车即可,会生成id_rsaid_rsa.pub两个文件

    l  配置github ssh key

    登陆GitHub,打开“Account settings”->“SSH Keys and GPG keys”->点New SSH Key,title任意填t,key粘贴id_rsa.pub文件内容,点Addkey

    注:1.配置ssh key,github可以识别确实是你推送的提交,github可以添加多个key,你可以在公司电脑和家里电脑的key都添加到GitHub,这样可以在每台电脑上往GitHub推送

    2.开源GitHub免费托管的git敞开,任何人都可以看到,但只要你自己才能改

    github上创建远程仓库

    右上角点击New repository,输入仓库名称、描述、选择仓库类型为公有或私有、勾选“Initialize this repository with a README”;点击Create;这样仓库就创建成功了

    远程同步

    不存在本地仓库,可以直接克隆远程仓库到本地

    在windows右键gitbash,输入:

    git clone [远程仓库的ssh链接]  

    实例:git clone git@github.com:shelry-liu/test.git   --会在本地创建test仓库,远程test仓库内容拷贝到了本地仓库

    注:远程仓库的ssh连接获取如下:

     

    注:通过克隆的方式,本地仓库和远程仓库建立了连接

    把本地仓库推送到全新的远程仓库

    步骤1:本地仓库与远程仓库建立连接

    git remote add origin [远程仓库的ssh链接]

    步骤2:本地库所有内容推送到远程库

    git push –u origin master   --第一次推送时需要加-u,后续推送直接使用git push就可以了

    注:如果在创建远程仓库时加入了README.md或LICENSE,那么github会拒绝你的push,需要先执行git pull --rebase origin master进行代码合并

    本地库和远程库代码合并

    前置条件:本地库和远程库最开始代码一致,代码状态如图:

     

    场景一:本地库代码有更新,同步到远程库

    git push

    场景二:远程库代码有更新,同步到本地库

    git pull

    场景三:本地库代码修改,远程库代码被别人修改,代码状态如图:

     

    步骤1:git fetch origin 拉取远程仓库最新代码到origin/master分支上

     

    步骤2:git log -p master.. origin/master比较远程仓库和本地仓库的区别,然后手动修复其中的区别

    步骤3:git merge origin/master将origin/master分支合并到master分支

    步骤4:git push origin master将master分支推送到远程仓库

    编译器上配置GitHub

    pycharm上配置github

    l  配置github

    打开pycharm的file->setting-> Version Control-> GitHub->add count,配置github账号,并且勾选ssh

    l  配置git

    打开pycharm的file->setting-> Version Control-> Git配置Path to Git executable值为git.exe的路径

    l  上传项目到github

    PyCharm选择VCS->import into version Control->share project on github,输入New repository name和远程仓库分支名称(默认为origin,master分支),选择要上传的文件就可以了,这个时候会在github新建一个仓库(仓库为用户输入的New repository name值)

    l  pycharm拉取或更新代码

    右侧区右键git,里面存在git的相关命令,相关拉取或更新操作等参考前面的git和github讲解

    代理工具

    代理就是请求会转发到代理服务器,由代理服务器处理后,再发送到请求服务器;请求服务器响应的结果也会发送到代理服务器,由代理服务器处理后,在发送到客户端;代理服务器可以修改请求/返回结果,模拟网速等。

     

    配置代理

    charles开启代理端口:

     

    Charles手工抓包工具

    说明

    charles相当于一个插在服务器和客户端之间的“过滤器”;

    当客户端向服务器发起请求的时候,先到charles进行过滤,然后charles在把最终的数据发送给服务器;

    注意:此时charles发给服务器的数据,不一定是客户端请求的数据;charles在接到客户端的请求时可以自由的修改数据,甚至可以直接Block客户端发的请求;

    服务器接收请求后的返回数据,也会先到charles,经过charles过滤后再发给客户端;

    同理:客户端接收的数据,不一定就是服务器返回的数据,而是charles给的数据;

    正因为上面的原理,所以charles能实现的功能,对前端开发者来说非常有吸引力,相当于请求和响应都可控的,而且charles为了控制更加方面,提供很多简洁的操作;

     

    Charles的主要功能:

    • 抓取 Http 和 Https 的请求和响应,抓包是最常用的了。
    • 重发网络请求,方便后端调试,复杂和特殊情况下的一件重发还是非常爽的(捕获的记录,直接repeat就可以了,如果想修改还可以修改)。
    • 修改网络请求参数(客户端向服务器发送的时候,可以修改后再转发出去)。
    • 网络请求的截获和动态修改。
    • 支持模拟慢速网络,主要是模仿手机上的2G/3G/4G的访问流程。
    • 支持本地映射和远程映射,比如你可以把线上资源映射到本地某个文件夹下,这样可以方面的处理一些特殊情况下的bug和线上调试(网络的css,js等资源用的是本地代码,这些你可以本地随便修改,数据之类的都是线上的环境,方面在线调试);
    • 可以抓手机端访问的资源(如果是配置HOST的环境,手机可以借用host配置进入测试环境)

    安装

    l  下载

    下载地址:https://www.charlesproxy.com/latest-release/download.do

    下载最新的包,点击安装即可

    l  破解

    破解地址:https://www.zzzmode.com/mytools/charles/

    进入该地址,选择对应的版本,生成jar文件后,放到charles安装目录的lib目录,重启charles,查看已破解,如下图:

     

    抓包

    Charles可以抓取手机和PC端所有的网络请求,包括浏览器或app的请求;对于https请求抓取出来是乱码,如果要抓取https请求,需要安装https证书和SSL配置

    PC端http抓包

    l  Proxy设置中的Windows Proxy勾选

    设置charles为网络代理,PC端发生网络请求,就可以被Charles截获到,如果只需要抓取手机请求,则取消勾选这个选项。

     l  抓取pc端浏览器包

    charles默认只代理IE浏览器,IE浏览器上设置代理就可以抓取了;如果要代理谷歌浏览器,需要在谷歌浏览器上设备局部代理

    代理ip/port为charles所在的ip和代理端口

    移动端http抓包

    l  确保手机和电脑在一个局域网内

    l  电脑端配置

    1.关掉电脑防火墙

    2.打开Charles的代理功能

    打开 Proxy->Proxy Settings ,填入代理端口(端口默认为 8888,不用修改),勾选 Enable transparent HTTP proxying

    3.如果不抓取电脑上的网络请求,可以取消勾选Proxy->Windows Proxy

    l  手机端配置

    1.Help->Local IP Address 查看PC端IP地址

    2.设置手机端的wifi代理

    找到连接的wifi(不能用4G),选择手动代理,IP和端口,输入步骤1的ip和代理端口8888,点击连接该wifi

    3.以上配置好后,手机上的任意网络请求,就可以看到Charles弹出手机请求连接的确认菜单(只有首次弹出),点击Allow即可。这样就可以在Charles上进行移动端的抓包

    https抓包

    Charles默认是对http网络抓包,如果要抓https的包,需要安装https证书和SSL配置;如果不配置,https请求都是乱码;

    PC端安装charles证书

    步骤1:点击Help->SSL Proxying->Install Charles Root Certificate,下载证书

    步骤2:安装证书,参考附录中windows安装证书

    移动端安装charles证书

    点击Help->SSL Proxying | Install Charles Root Certificate on a Mobile Device or Remote Browser,弹窗界面的chls.pro/ssl为证书下载路径

    手机端浏览器打开该地址,下载证书,安装即可  --安装方法参考附录中移动端证书安装

    配置SSL

    安装证书后,还需要配置SSL,否则charles上抓到的https请求结果为乱码

    步骤一:开启SSL,

    Proxy->SSL Proxying Settings 弹窗,勾选 Enable SSL proxying

    步骤二:设置需要抓取的https请求

    配置证书和开启SSL代理后,Charles 默认也并不截取 Https 网络通讯的信息,如果你想对截取某个网站上的所有 Https 网络请求,可以在该请求上右击,选择 Enable SSL proxying;也可以手动添加;如添加ip和端口都为*,允许所有https请求;然后刷新页面,重新抓包

    常用功能

    请求出现乱码

    出现乱码是没有配置SSL,请参考配置SSL。

    过滤网络请求

    我们需要对网络请求进行过滤,只监控向指定目录服务器上发送的请求。对于这种需求,以下几种办法

    l  方法一:在Charles主界面的Filter栏中填入需要过滤出来的关键字,例如我们的服务器的地址是:http://yuantiku.com , 那么只需要在 Filter 栏中填入 yuantiku 即可

    l  方法二:在 Charles 的菜单栏选择 “Proxy”->”Recording Settings”,然后选择 Include 栏,选择添加一个项目,然后填入需要监控的协议,主机地址,端口号。这样就可以只截取目标网站的封包了

    l  方法三:在想过滤的网络请求上右击,选择 “Focus”,之后在 Filter 一栏勾选上 Focussed 一项

    注:方法一做一些临时性过滤,方法二做一些经常性的封包过滤,推荐使用方法一

    修改客户端和服务端的请求数据

    Rewrite和Map Local、Map remote可以对请求的request、url、reponse等数据进行修改

    Rewrite

    可以对某些匹配请求的header、host、url、path、response、body等进行数据重写;rewrite工具支持正则表达式的写法,例如Math项的value正则式中的组捕获项在Replace的value值中可以使用$1~$n之类的捕获组

    l  入口

    Charles菜单选择【Tools】->Rewrite

    l  添加请求

    勾选Enable Rewrite,在左侧栏点击【Add】添加(勾选则代表启动该请求)

     

    新增Location信息填写如下:

     

    新增Type和Action如下

     

    总结:这样刷新后,匹配到的接口相关数据就会更改

    Map Local

    Map Local将响应的结果重定向到本地的文件,从而到达更改response值的目的,可以对js、css、html、api接口做重定向

    l  保存请求的response值

    Charles中找到接口,右键选择Save Response,把response保存在文件中

    l  修改response文件

    修改该文件,修改成更改后的值

    l  设置Map Local

    在Tools->Map Local Setiings,勾选Enable Map Local,添加Add,参数项输入如下:

     

    总结:这样刷新后,匹配到的接口返回值为修改后的文件内容

    Map remote

    Map remote将指定的网络请求重定向到另一个网址,Map Remote使用场景:把请求的url替换成另一个url来执行

    l  设置Map remote

    点击Tools->Map Remote,勾选Enable Map Remote,点击Add,参数项如下:



    Breakpoints断点

    Breakpoints是打断点的意思,相当于开发同学的debug功能。在抓包工具Charles里面通过Breakpoints打断点修改数据

    https://blog.csdn.net/chengxu_kuangrexintu/article/details/89807737

    l  找到需要打断点的请求,右键选择Breakpoints

    l  设置断点,Proxy->BreakPoints Settings,弹窗编辑请求

     

    l  重新访问该请求,Charles自动跳转到Breakpoints页面

     

    l  点击Edit Response,切换底部tab至Text,修改所需要的数据,点击执行

    总结

    Rewrite可以使用正则更改请求数据;Map Local只能更改请求的reponse数据,只改变reponse值使用Map Local最好;Map remote可以重定向请求的整个url;BeakPoints断点用作调试临时修改请求数据

    并发和重复执行

    可以使用charles对请求做压力测试;选择需要压力测试的请求,右键选择Repeat Advanced,弹窗设置如下:

     

    这样就可以设置该请求的并发执行次数

    限速模拟

     

    常见问题

    charles启动报java损坏

    定位方法:1.查看java环境变量是否配置ok

                         2.charles是否破解

                   3.java版本是否与charles匹配,如果1-2步骤失败,可以尝试换一个charles版本

    mitmproxy自动化抓包工具

    l  mitmproxy可以使用python脚本截获请求信息进入修改重新发送给服务端;也可以通过截获响应信息,修改返回给客户端/保存数据库/发送邮件等操作;即mitmproxy可以用于开发拦截脚本

    l  mitmproxy可以适时的查、记录截取的请求

     

    安装mitmproxy

    l  使用python来安装

    安装mitmpoxy工具,也可以指安装python的mitproxy包,后者是包含前者的

    pip install mitmproxy

    l  下载exe包来安装

    https://github.com/mitmproxy/mitmproxy/releases/上下载对应的exe安装包

    注:安装完成后,系统将拥有mitmproxy、mitmdump、mitmweb三个命令

    验证安装是否成功:mitmdump –version

    启动mitmproxy

    mitmproxymitmdumpmitmweb命令介绍

    启动mitmproxy用这三个命令中的任意一个即可;这3个命令功能一致的,都可以加载自定义脚本,唯一的区别是交互界面不同

    l  mitmproxy

    不支持在windows系统中运行,启动后,提供一个命令行界面

    l  mitmdump

    启动后提供一个简单的终端输出

    l  mitmweb

    启动后提供一个web界面,用户可以实时看到发生的请求、过滤请求;

    mitmproxy web地址为:http://127.0.0.1:8081/#/flows

    启动mitmproxy

    l  直接启动

     

    注:执行mitmweb命令后,浏览器会自动打开http://127.0.0.1:8081,即mitmproxy提供的web交互界面

    l  常用的启动命令

    -w 文件:指定文件输出打印日志

    -p :指定代理端口

    抓包配置

    windows抓包配置

    环境准备:

    1.设置代理(IP:代理工具所在服务IP,port:代理工具设置的代理端口,协议:http)

    注:可以在googlse使用Proxy SwitchyOmega扩展程序来设置代理,这样就可以在mitmproxy抓包时使用代理,关闭mitmproxy web页面,代理自动取消

    2.安装证书

    浏览器打开mitm.it下载证书(也可以在mitmproxy web页面的右侧点击下载证书);安装证书
    注:不安装证书,访问https会提示“您的连接不是私密连接”;安装后,不会提示

    l  Proxy SwitchyOmega设置说明

    1.打开谷歌浏览器,添加Proxy SwitchyOmega扩展程序

    2.并在该扩展程序选项中新建情景模式(mitmproxy)如下:

     

     

    3.当打开mitmproxy web页面,右上角扩展程序选择Proxy SwitchyOmega->mitmproxy,这样对这个web页面就可以使用代理了。

    手机抓包配置

    环境准备:

    1.手机与电脑连到同一个wifi

    2.获取电脑的ip地址

    3.手机wifi配置代理(IP为步骤2中电脑ip,端口为8080)

    4.安装证书&开启证书

    手机浏览器访问mitm.it,下载证书,然后安装证书(参考Android证书安装)

    5.设置完成后,手机上的网络包,就可以在mitmproxy web页面展示了

    常用功能

    过滤/修改请求/打断点

    直接在mitmproxy web页面过滤请求,修改请求的reponse/request等

    自定义脚本

    编写一个py文件供mitmproxy加载,文件定义了变量addons,addons是个数组,每个元素是一个类实例,这些类中的方法实现了某些mitmproxy提供的事件,mitmproxy会在某个事件发生时调用对应的方法,这些类称为一个个addon

     

    上面代码会在请求request时执行request方法

    启动mitmproxy带自定义脚本

    mitmweb –s addons.py  --addons.py脚本就是自定义的拦截脚本

    mitmproxy事件

    https://www.cnblogs.com/grandlulu/p/9525417.html

     

    jenkins

    https://www.cnblogs.com/wfd360/p/11314697.html

    tomcat部署jenkins

    https://www.cnblogs.com/Durant0420/p/13346411.html

    选择2.190.2的jenkins版本

    tomcat cmd打印乱码解决:修改apache-tomcat-8.5.57conflogging.properties文件中

    java.util.logging.ConsoleHandler.encoding = GBK

    卸载jenkins

    使用war包安装的jenkins,进入到tomcat的webapps目录删除war包,再删除家目录下的.Jenkins文件夹和tomcat下的Jenkins文件夹,这样就彻底删除干净了

    配置jenkins

    安装jenkins插件

    jenkins工具配置有些插件是没有安装的,需要用户手动安装相关插件,如Allure等,否则在工具配置或创建任务时不会显示相应的配置

    全局工具配置

    使用git拉取代码, 需要配置git安装路径;java代码使用maven管理,需要配置maven配置项和安装路径;测试报告使用Allure,需要配置Allure安装路径;前提是这些工具的jenkins插件已安装,否则不会出现对应的配置项;在全局工具配置后,其他节点和创建任务时就可以使用该插件的功能

    构建等和jenkins不是同一服务器

    jenkins构建(指程序打包或执行)默认是在jenkins服务器上执行,也可以使用jenkins构建到远程服务器或其他jenkins节点,以来解决jenkins和自动化程序不在同一个服务器的问题

    jenkins新增节点+jenkins在新增节点运行

    参考jenkins新增slave节点

    jenkis构建+执行ssh到远程服务器

    配置远程服务器

    1.安装如下插件:

    2.配置远程服务器的ssh:

    只能是linux/mac服务器才有ssh登录

    Manage Jenkins->Configure System

    3.创建项目,在项目中的构建设置或构建后设置中可以指定ssh的服务器

    jenkins新增slave节点

    准备工作:

    l  安装SSH Agent插件

    l  启动SSH Server

    l  开启JAVA web启动代理

    JAVA web启动代理是在新增windows节点时需要的,如果不是添加windows节点可以不用开启

    l  节点配置信息说明

    登录jenkins,打开系统管理,点击节点管理,新建节点;新建节点界面相关配置说明如下:

    新增linux节点

    1.新增linux节点,配置信息如下:

    2. 节点服务器上安装服务

    新增的节点默认是离线状态,点击启动代理

    启动成功:

    新增windows节点

    1.新增windows节点,配置项如下:

    指定任务的构建和运行节点

    jenkins上新建任务,设置General页面限制项目的运行节点,这样构建该任务时,该任务就在指定节点上运行

    注:创建节点时需要配置相关工具位置,参考全局工具配置项

    创建任务的配置的说明

    创建任务说明

    创建任务界面有些配置或选项是没有的,需要安装相关插件后,才会有对应的配置,如git配置、ssh等

    参数化构建(这样构建时可以选择tag或分支)

    前提准备:下载Git Prameter插件

    背景:我们的git代码可以有多个分支,也可以有多个tag(即对代码打的不同版本号),当创建任务时选择参数化构建,那么在执行构建时,用户就可以选择tag或分支来构建

    1.添加任务,General配置如下:

    2.源码管理配置如下:

    3.配置其他项创建完任务,在构建如下:

    配置代码地址

    注:如果只需要运行本地的程序,不拉取代码,可以不用配置

    构建环境

    可以设置ssh服务器,在另一个服务器上构建,参考jenkins构建+执行ssh到运行服务器

    构建触发器

    创建任务时,可以设置构建触发器,达到一定条件自动构建任务

    l  定时自动 构建

    l  git代码有提交时,自动构建

    https://www.cnblogs.com/yoyoketang/p/12129847.html

    构建

    可以设置构建时具体做些什么,jenkins流程如下:在指定环境拉取代码后,进行构建(构建可以是对代码打包或执行shell命令或cmd命令)

    l  以构建运行自动化测试为例

    此配置是构建时执行python脚本,需要注意,jenkins环境上执行python脚本,如果该脚本需要的一些依赖包,需要在命令中添加(pip install….);当然前提是确保jenkins环境上有配置运行自动化测试所需要的一些环境(python等)

    构建后操作

    jenkins构建完后的操作,一般有清理环境,生成报告存放等

    构建后ssh到远程服务器上执行

    这个是构建的代码打包后ssh到远程服务器上执行

    构建后归档文件

    构建完成后,会把执行的结果输出保存在归档文件中,在jenkins构建结果中展示归档文件


    构建后发送邮件

    构建完成后,把构建结果发送邮件给指定人

    https://www.cnblogs.com/yoyoketang/p/12174056.html

    构建后生成Allure报告

    配置构建后生成Allure报告,会在构建完成后,构建结果中展示Allure报告

    https://www.cnblogs.com/yoyoketang/p/12173812.html

    jenkins构建自动化全流程

    背景:1.jenkins部署在公司服务器server1

          2.自动化环境部署在server2中,该环境中已经配置好自动化环境所需的配置

          3.jenkins执行完后,需要发送执行结果给相关人员

          4.自动化代码在git上

          5.jenkins执行后生成Allure报告

    准备工作:

    1.参考jenkis构建+执行到远程服务器

    2.参考构建后生成Allure报告

    创建任务:

    https://www.cnblogs.com/Durant0420/p/13329807.html

    知道、想到、做到、得到
  • 相关阅读:
    sql sever 数据字典语法
    端口使用情况
    koa中间件说明
    FLIP动画思想
    跨域下载文件显示文件名
    post方法打开新页面并提交参数
    常用快捷键
    cnpm与npm安装的包不一样
    chrome devTools变量不提示,断点点击去不掉问题
    未修改的模块失效排查方法
  • 原文地址:https://www.cnblogs.com/Durant0420/p/14440478.html
Copyright © 2020-2023  润新知