我正在尝试设置jenkins来测试Web应用程序。对于此设置,我有一个gradle构建文件。
apply plugin: 'java'
apply plugin: 'maven'
defaultTasks 'clean','compileJava','test'
group = 'automationtest'
version = '1.1-SNAPSHOT'
description = ""
repositories {
maven { url "http://repo.maven.apache.org/maven2" }
}
dependencies {
compile group: 'org.seleniumhq.selenium', name: 'selenium-java', version:'2.52.0'
compile group: 'org.uncommons', name: 'reportng', version:'1.1.4'
compile group: 'org.apache.velocity', name: 'velocity', version:'1.7'
compile group: 'com.google.inject', name: 'guice', version:'4.0'
testCompile group: 'junit', name: 'junit', version:'3.8.1'
testCompile group: 'org.testng', name: 'testng', version:'6.9.4'
}
test{
useTestNG() {
suites "src/test/resources/BasicTestXML/LoginTesten.xml"
}
}
使用上面的构建文件,如果我有一个运行该应用程序的localhost,我可以在jenkins中完美地运行我的自动化测试。 但是为了减少人工交互的可靠性,我想让jenkins首先构建Web应用程序,然后在构建的Web应用程序上运行自动化测试。 这可能吗?我怎样才能实现这一目标? 我可以从git构建它们还是它们需要在同一位置才能实现? webapp也是一个蚂蚁项目,这会带来什么困难吗?
答案 0 :(得分:1)
如果你想让Jenkins独立,你可以e。 G。使您的Gradle构建触发构建Web应用程序的Ant构建,然后将结果部署到某处,启动要部署的容器。然后在测试完成后,您的gradle构建可以再次停止正在运行的容器。