會(huì)不會(huì)搭建測(cè)試平臺(tái)是一般測(cè)試工程師和高級(jí)測(cè)試工程師分水嶺 ----tobecrazy
我們項(xiàng)目有現(xiàn)成的測(cè)試平臺(tái),使用的是selenium grid+testng+ant+jenkins+VM
但是我平時(shí)用的是selenium+testng并未體驗(yàn)過使用ant 和jenkins,心血來潮嘗試使用一下jenkins.
Jenkins簡(jiǎn)介:
Jenkins是一個(gè)開源框架
Jenkins可執(zhí)行重復(fù)的jobs,主要使用在兩方面
1.可持續(xù)build或test project
2.監(jiān)控外部執(zhí)行的jobs
自動(dòng)build發(fā)郵件。。。。。
了解更多看https://wiki.jenkins-ci.org/display/JENKINS/Meet+Jenkins
首先安裝Jenkins,下載windows平臺(tái)的版本
由于安裝比較簡(jiǎn)單,這里不再介紹
安裝ant,下載ant zip文件,解壓到C:Program Filesapache-ant-1.9.4
在系統(tǒng)變量添加ANT_HOME
之后再CMD運(yùn)行ant -version
若顯式:Apache Ant(TM) version 1.9.4 compiled on April 29 2014
說明ant 配置成功
1. 使用ant 編譯工程,必須有一個(gè)xml文件,默認(rèn)build.xml
2. 每個(gè)build文件配置一個(gè)default target,執(zhí)行ant命令會(huì)執(zhí)行這個(gè)target
首先了解一下簡(jiǎn)單使用ant
使用note pad 寫一個(gè)class,保存為Test java
在cmd嘗試編譯:javac Test.java
如官方?jīng)]有報(bào)錯(cuò),恭喜你,可以進(jìn)行下一步
使用ant所做的操作和命令行輸入是一樣的,只不過所有的命令轉(zhuǎn)換為xml標(biāo)簽:
這次配置如下:
每個(gè)target是一個(gè)操作,clean是刪除build目錄,compile是編譯,run是執(zhí)行java class
之后在命令行輸入ant(cmd切換到該目錄)
結(jié)果如下:
D:AntTest>ant
Buildfile: D:AntTestuild.xml
[echo] The base dir is: D:AntTest
clean:
[delete] Deleting directory D:AntTestuild
compile:
[mkdir] Created dir: D:AntTestuildclasses
[javac] D:AntTestuild.xml:11: warning: 'includeantruntime' was not set, d
efaulting to build.sysclasspath=last; set to false for repeatable builds
[javac] Compiling 1 source file to D:AntTestuildclasses
run:
[echo] Compile dir is: D:AntTestuildclasses
[java] This ANT HOME
[java] C:Program Filesapache-ant-1.9.4
BUILD SUCCESSFUL
Total time: 1 second
為了配合使用selenium webdriver打開eclipse創(chuàng)建名為Demo的項(xiàng)目
接下來是使用Jenkins,如果你的Jenkins安裝成功,打開http://localhost:8080/會(huì)顯示Jenkins主頁
點(diǎn)擊新建->輸入項(xiàng)目名->選擇“構(gòu)建一個(gè)自由風(fēng)格的軟件項(xiàng)目”->構(gòu)建->增加構(gòu)建步驟->選擇invoke ANT
接下來配置如下:
此時(shí)準(zhǔn)備ant build.xml放到工程的根目錄
build.xml內(nèi)容如下,testng 和selenium的jar包需要加載,所以設(shè)置
<path id="run.classpath">
由于項(xiàng)目使用的UTF-8編碼,在編譯時(shí)報(bào)錯(cuò)所以添加
<javac srcdir="src" destdir="build/classes" debug="on" encoding="UTF-8">