我想在jboss上使用gradle进行selenium测试,并且能够进行所需的配置,并且希望与社区共享。
解决方法如下:
gradle.build:
apply plugin: 'java' apply plugin: 'eclipse-wtp' apply plugin: 'war' apply plugin: 'findbugs' //apply from:'http://github.com/breskeby/gradleplugins/raw/master/emmaPlugin/emma.gradle' apply from: 'emma.gradle' buildDir = 'build' sourceCompatibility = 1.7 version = '' buildscript { repositories { mavenCentral() } dependencies { classpath 'org.gradle.api.plugins:gradle-cargo-plugin:0.6' } } repositories { mavenCentral() mavenRepo url: 'http://repository.primefaces.org' mavenRepo url: 'http://repository.jboss.org/nexus/content/groups/public' mavenRepo url: 'http://repository.jboss.org/maven2' mavenRepo url: 'http://maven.springframework.org/release' mavenRepo url: 'http://repo1.maven.org/maven2' mavenRepo url: 'http://git.solutionstream.com/nexus/content/repositories/thirdparty' } configurations { compileOnly weldEmbeddedTestRuntime { extendsFrom testRuntime } jbossasRemoteTestRuntime { extendsFrom testRuntime, compileOnly } } sourceSets { main { compileClasspath = configurations.compile + configurations.compileOnly } test { compileClasspath = compileClasspath + configurations.compileOnly } selenium { compileClasspath = compileClasspath + configurations.compileOnly } } dependencies { //JSF compile group: 'com.sun.faces', name: 'jsf-api', version: '2.1.22' compile group: 'com.sun.faces', name: 'jsf-impl', version: '2.1.22' compile 'org.ocpsoft.rewrite:rewrite-servlet:2.0.3.Final' compile 'org.ocpsoft.rewrite:rewrite-config-prettyfaces:2.0.3.Final' //Servlet compile group: 'javax.servlet', name: 'jstl', version: '1.2' providedCompile group: 'org.jboss.spec', name: 'jboss-javaee-6.0', version: '1.0.0.Final' compile 'taglibs:standard:1.1.2' compile group: 'org.springframework', name: 'spring-web', version: '3.2.2.RELEASE' //Omnifaces compile 'org.omnifaces:omnifaces:1.5' //Prime Faces compile group: 'org.primefaces', name: 'primefaces', version: '4.0-SNAPSHOT' compile 'org.primefaces.themes:bootstrap:1.0.10' // DB compile group: 'org.springframework.data', name: 'spring-data-jpa', version: '1.3.1.RELEASE' compile group: 'org.springframework', name: 'spring-aspects', version: '3.2.2.RELEASE' compile group: 'mysql', name: 'mysql-connector-java', version: '5.1.9' compile group: 'javax.inject', name: 'javax.inject', version: '1' compile group: 'javax.enterprise', name: 'cdi-api', version: '1.0-SP4' compile 'cglib:cglib-nodep:2.2.2' //Hibernate / JPA compile 'org.hibernate:hibernate-core:4.1.0.Final' compile 'org.hibernate:hibernate-entitymanager:4.1.0.Final' compile 'org.hibernate.javax.persistence:hibernate-jpa-2.0-api:1.0.1.Final' //JSR-303 compile 'org.hibernate:hibernate-validator:4.3.1.Final' // Spring Security compile 'org.springframework.security:spring-security-core:3.1.4.RELEASE' compile 'org.springframework.security:spring-security-web:3.1.4.RELEASE' compile 'org.springframework.security:spring-security-config:3.1.4.RELEASE' //Utility compile 'com.google.guava:guava:14.0.1' compile 'commons-lang:commons-lang:2.6' compile 'org.apache.commons:commons-email:1.3.1' compile 'com.typesafe:config:1.0.0' compile 'joda-time:joda-time:2.2' compile 'org.apache.geronimo.javamail:geronimo-javamail_1.4_mail:1.8.3' compile 'org.slf4j:slf4j-api:1.7.2' compile 'org.slf4j:jcl-over-slf4j:1.7.2' compile 'org.slf4j:slf4j-log4j12:1.7.2' //Mustache Templates compile 'com.github.jknack:handlebars:1.0.0' //Projects //compile project(":ExtraValidators") ////TESTING DEPENDENCIES testCompile 'com.googlecode.jmockit:jmockit:1.2' testCompile group: 'junit', name: 'junit', version: '4.11' testCompile 'com.h2database:h2:1.3.172' //Spring Testing testCompile 'org.springframework:spring-test:3.2.3.RELEASE' /* Selenium */ seleniumCompile 'org.seleniumhq.selenium:selenium-java:2.33.0' seleniumCompile 'junit:junit:4.11' seleniumCompile 'org.slf4j:slf4j-api:1.7.2' seleniumCompile 'org.slf4j:slf4j-log4j12:1.7.2' seleniumCompile 'org.slf4j:jcl-over-slf4j:1.7.2' /* Remote Jboss */ testCompile group: 'org.jboss.arquillian', name: 'arquillian-junit', version: '1.0.0-SNAPSHOT' jbossasRemoteTestRuntime group: 'org.jboss.arquillian.container', name: 'arquillian-jbossas-remote-6', version: '1.0.0-SNAPSHOT' jbossasRemoteTestRuntime group: 'org.jboss.jbossas', name: 'jboss-as-server', classifier: 'client', version: '6.1.0.Final', transitive: false jbossasRemoteTestRuntime group: 'org.jboss.jbossas', name: 'jboss-as-profileservice', classifier: 'client', version: '6.1.0.Final' } task wrapper(type: Wrapper){ gradleVersion = '1.6' } eclipse { classpath { downloadSources=true plusConfigurations += configurations.seleniumCompile } } task selenium(type: Test) { testClassesDir = sourceSets.selenium.output.classesDir classpath = sourceSets.selenium.runtimeClasspath + files('src/selenium/resources-jbossas') + configurations.jbossasRemoteTestRuntime }
您需要手动启动jboss服务器,然后使用命令 gradlew clean selenium