jenkins maven testng selenium自动化持续集成
生活随笔
收集整理的這篇文章主要介紹了
jenkins maven testng selenium自动化持续集成
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
準(zhǔn)備環(huán)境
首先我們新建一個(gè)maven的工程,并且在pom.xml中配置好我們依賴的一些jar包
<dependencies><dependency><groupId>org.seleniumhq.selenium</groupId><artifactId>selenium-java</artifactId><version>2.46.0</version></dependency><dependency><groupId>org.testng</groupId><artifactId>testng</artifactId><version>6.9.6</version></dependency><dependency><groupId>org.seleniumhq.selenium</groupId><artifactId>selenium-api</artifactId><version>2.46.0</version></dependency></dependencies>編寫我們selenium腳本
public class NewTest {private WebDriver driver;@BeforeTestpublic void beforeTest(){driver = new FirefoxDriver();driver.manage().timeouts().pageLoadTimeout(10, TimeUnit.SECONDS);driver.manage().window().maximize();driver.get("http://www.baidu.com");}@AfterTestpublic void afterTest(){driver.quit();}@Testpublic void f(){System.out.println("heloo");By inputBox = By.id("kw");By searchButton = By.id("su");//智能等待元素加載出來intelligentWait(driver, 10, inputBox);//智能等待元素加載出來intelligentWait(driver, 10, searchButton);driver.findElement(inputBox).sendKeys("中國(guó)");driver.findElement(searchButton).click();}/**這是智能等待元素加載的方法*/public void intelligentWait(WebDriver driver,int timeOut, final By by) {try {(new WebDriverWait(driver, timeOut)).until(new ExpectedCondition<Boolean>() {public Boolean apply(WebDriver driver) {WebElement element = driver.findElement(by);return element.isDisplayed();}});} catch (TimeoutException e) {Assert.fail("超時(shí)L !! " + timeOut + " 秒之后還沒找到元素 [" + by + "]", e);}} }再來還要配置下我們的testng.xml文件
<?xml version="1.0" encoding="UTF-8"?> <suite name="Suite" parallel="false"><test name="Test"><classes><class name="com.saii.NewTest"><methods><include name="f" /></methods></class></classes></test> </suite>工程配置已經(jīng)結(jié)束了,我們來進(jìn)行jenkins的一些配置吧。進(jìn)入jenkins的系統(tǒng)配置?
配置全局屬性的鍵值對(duì)?
這個(gè)地方一定要配置,因?yàn)槿绻慌渲贸蓇tf-8的話,jenkins從git上拉下來的文件編碼格式不是utf-8的格式,這樣子就會(huì)導(dǎo)致文件中的一些中文直接變成了亂碼,到時(shí)候直接影響到腳本的運(yùn)行?
進(jìn)行maven的項(xiàng)目配置?
這里是配置maven的編碼以及防止oom還有是maven的本地倉(cāng)庫(kù)以及maven的安裝地址
新建一個(gè)projce后,在構(gòu)建中新建一個(gè)構(gòu)建步驟 invoke-top-level Maven targets?
這里只需要配置正確pom就可以了。
運(yùn)行結(jié)果?
OK 運(yùn)行成功!
總結(jié)
以上是生活随笔為你收集整理的jenkins maven testng selenium自动化持续集成的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 如何为APK签名?
- 下一篇: 你一写长文章就焦虑拖延?