Thanks Josep! If there's a new release of the webtest-maven-plugin before
AppFuse's next release (this month), I'll make sure and switch to the
plugin.

On Fri, Oct 29, 2010 at 11:07 AM, Josep García <jgar...@isigma.es> wrote:

> Hello,
> I have succeded in the integration of webtest-maven-plugin into AppFuse
> 2.0.2.
> Below is the diff.
> Beware, where it says 0.6.7-isigma, it means the trunk version of
> webtest-maven-plugin from the cvs repo:
> http://svn.codehaus.org/mojo/trunk/sandbox/webtest-maven-plugin
>
> It seems the webtest-maven-plugin-0.6.7-SNAPSHOT.jar artifact available in
> the maven repo is different from the one generated from a fresh checkout! I
> renamed the version in my local installation to 0.6.7-isigma so there is no
> mix-up.
>
> If you don't use the fresh one, you will get an error:
>
> Embedded error: import requires support in ProjectHelper
> [INFO]
> ------------------------------------------------------------------------
> [INFO] Trace
> org.apache.maven.lifecycle.LifecycleExecutionException:
> ...
>
> With these, you can do a "mvn clean verify site" and you'll get a nice
> Webtest report :-)
> Beware, I have configured it so it does not fail if any webtest fails.
>
> Cheers,
> Josep
>
> Diff:
> diff -r 82ed445c829b pom.xml
> --- a/pom.xml    Fri Oct 29 18:36:06 2010 +0200
> +++ b/pom.xml    Fri Oct 29 18:52:38 2010 +0200
> @@ -686,31 +686,19 @@
>    <reporting>
>          <plugins>
>              <plugin>
> -                <artifactId>maven-changes-plugin</artifactId>
> -            </plugin>
> -            <plugin>
> -                <artifactId>maven-checkstyle-plugin</artifactId>
> +                <artifactId>maven-surefire-report-plugin</artifactId>
> +                <reportSets>
> +                    <reportSet>
> +                        <reports>
> +                            <report>report-only</report>
> +                        </reports>
> +                    </reportSet>
> +                </reportSets>
>              </plugin>
>              <plugin>
>                  <groupId>org.codehaus.mojo</groupId>
> -                <artifactId>cobertura-maven-plugin</artifactId>
> -                <version>2.0</version>
> -            </plugin>
> -            <plugin>
> -                <artifactId>maven-javadoc-plugin</artifactId>
> -            </plugin>
> -            <plugin>
> -                <artifactId>maven-jxr-plugin</artifactId>
> -            </plugin>
> -            <plugin>
> -                <artifactId>maven-pmd-plugin</artifactId>
> -                <configuration>
> -                    <linkXref>true</linkXref>
> -                    <targetJdk>1.5</targetJdk>
> -                </configuration>
> -            </plugin>
> -            <plugin>
> -                <artifactId>maven-surefire-report-plugin</artifactId>
> +                <artifactId>webtest-maven-plugin</artifactId>
> +                <version>0.6.7-isigma</version>
>              </plugin>
>          </plugins>
>    </reporting>
> @@ -733,7 +721,7 @@
>                              <wait>${cargo.wait}</wait>
>                              <container>
>
> <containerId>${cargo.container}</containerId>
> -                                <!--home>${cargo.container.home}</home-->
> +                                <type>${cargo.type}</type>
>                                  <zipUrlInstaller>
>                                      <url>${cargo.container.url}</url>
>                                      <installDir>${installDir}</installDir>
> @@ -765,50 +753,37 @@
>                          </executions>
>                      </plugin>
>                      <plugin>
> -                        <artifactId>maven-antrun-plugin</artifactId>
> -                        <version>1.1</version>
> -                        <configuration>
> -                            <tasks>
> -                                <taskdef
> resource="webtest_base_relaxed.taskdef">
> -                                    <classpath
> refid="maven.test.classpath"/>
> -                                </taskdef>
> -                                <mkdir dir="target/webtest-data"/>
> -                                <!-- Delete old results file if it exists
> -->
> -                                <delete
> file="target/webtest-data/web-tests-result.xml"/>
> -                                <!-- This is so the default will be used
> if no test case is specified -->
> -                                <property name="test"
> value="run-all-tests"/>
> -                                <echo level="info">Testing
> '${project.build.finalName}' with locale '${user.language}'</echo>
> -                                <ant
> antfile="src/test/resources/web-tests.xml" target="${test}">
> -                                    <property name="user.language"
> value="${user.language}"/>
> -                                    <property name="webapp.name"
> value="${project.build.finalName}"/>
> -                                    <property name="host"
> value="${cargo.host}"/>
> -                                    <property name="port"
> value="${cargo.port}"/>
> -                                </ant>
> -                            </tasks>
> -                        </configuration>
> +                        <groupId>org.codehaus.mojo</groupId>
> +                        <artifactId>webtest-maven-plugin</artifactId>
> +                        <version>0.6.7-isigma</version>
>                          <executions>
>                              <execution>
> +                                <id>webtest-test</id>
>                                  <phase>integration-test</phase>
>                                  <goals>
> -                                    <goal>run</goal>
> +                                    <goal>test</goal>
> +                                </goals>
> +                                <configuration>
> +                                    <host>${cargo.host}</host>
> +                                    <port>${cargo.port}</port>
> +
> <sourcedirectory>src/test/resources</sourcedirectory>
> +                                    <sourcefile>web-tests.xml</sourcefile>
> +                                    <target>run-all-tests</target>
> +
> <basepath>${project.build.finalName}</basepath>
> +
> <resultpath>target/webtest/webtest-results</resultpath>
> +                                    <haltonfailure>false</haltonfailure>
> +                                    <haltonerror>false</haltonerror>
> +                                    <loglevel>error</loglevel>
> +                                </configuration>
> +                            </execution>
> +                            <execution>
> +                                <id>webtest-report</id>
> +                                <phase>post-integration-test</phase>
> +                                <goals>
> +                                    <goal>report</goal>
>                                  </goals>
>                              </execution>
>                          </executions>
> -                        <dependencies>
> -                            <dependency>
> -                                <groupId>com.canoo.webtest</groupId>
> -                                <artifactId>webtest</artifactId>
> -                                <version>${webtest.version}</version>
> -                                <!-- groovy-all doesn't have a pom in
> central repo -->
> -                                <!-- exclude groovy to prevent trying to
> fetch pom -->
> -                                <exclusions>
> -                                    <exclusion>
> -                                        <groupId>groovy</groupId>
> -
> <artifactId>groovy-all</artifactId>
> -                                    </exclusion>
> -                                </exclusions>
> -                            </dependency>
> -                        </dependencies>
>                      </plugin>
>                  </plugins>
>              </build>
> diff -r 82ed445c829b src/test/resources/config.xml
> --- a/src/test/resources/config.xml    Fri Oct 29 18:36:06 2010 +0200
> +++ b/src/test/resources/config.xml    Fri Oct 29 18:52:38 2010 +0200
> @@ -1,5 +1,16 @@
> -<config host="${host}" port="${port}" protocol="http"
> -    basepath="${webapp.name}" resultpath="target/webtest-data"
> saveresponse="true"
> -    resultfile="web-tests-result.xml" summary="true">
> +<config
> +    host="${host}"
> +    port="${port}"
> +    protocol="http"
> +    basepath="${basepath}"
> +    saveresponse="true"
> +    haltonfailure="${haltonfailure}"
> +    haltonerror="${haltonerror}"
> +    resultpath="${resultpath}"
> +    resultfile="web-tests-result.xml"
> +    summary="true">
>      <header name="Accept-Language" value="${user.language}"/>
> -</config>
> \ No newline at end of file
> +    <option name="ThrowExceptionOnScriptError" value="false"/>
> +    <option name="ThrowExceptionOnFailingStatusCode" value="false"/>
> +
> +</config>
> diff -r 82ed445c829b src/test/resources/web-tests.xml
> --- a/src/test/resources/web-tests.xml    Fri Oct 29 18:36:06 2010 +0200
> +++ b/src/test/resources/web-tests.xml    Fri Oct 29 18:52:38 2010 +0200
> @@ -3,9 +3,10 @@
>      <!ENTITY login SYSTEM "./login.xml">
>  ]>
>  <project basedir="." default="run-all-tests">
> +    <taskdef resource="webtestTaskdefs.properties" />
>      <!-- Use i18n bundle, 2nd one listed is the default -->
> -    <property file="\${basedir}/target/${webapp.name
> }/WEB-INF/classes/ApplicationResources_${user.language}.properties"/>
> -    <property file="\${basedir}/target/${webapp.name
> }/WEB-INF/classes/ApplicationResources.properties"/>
> +    <property
> file="../../../target/classes/ApplicationResources_${user.language}.properties"/>
> +    <property
> file="../../../target/classes/ApplicationResources.properties"/>
>
>      <!-- runs all targets -->
>      <target name="run-all-tests"
> @@ -215,7 +216,7 @@
>                  <invoke description="click Upload a File link"
> url="/uploadFile.html"/>
>                  <verifytitle description="we should see file upload form"
> text=".*${upload.title}.*" regex="true"/>
>                  <setinputfield description="set name" name="name"
> value="Canoo Test File"/>
> -                <setFileField description="set file" name="file"
> fileName="pom.xml"/>
> +                <setFileField description="set file" name="file"
> fileName="../../../pom.xml"/>
>                  <clickbutton label="${button.upload}" description="Click
> Upload"/>
>                  <verifytitle description="show file data if upload OK"
> text=".*${display.title}.*" regex="true"/>
>                  <verifytext description="verify original filename
> displayed on page" text="pom.xml"/>
>
>   [image: isotipo isigma]
>  Josep García Corral
> Ingeniero de Software
>   isigma, la referencia en firma electrónica
> Tel. +34 932 387 108
> www.isigma.es
>
>  [image: logotipo portasigma]
> ¡Prueba gratis la firma online! <http://www.portasigma.com>
>

Reply via email to