Uploaded image for project: 'Arquillian'
  1. Arquillian
  2. ARQ-556

Allow Arquillian to be used without writing Java code, for XML-based tools like Canoo WebTest

    XMLWordPrintable

Details

    • Feature Request
    • Resolution: Unresolved
    • Major
    • None
    • None
    • None
    • None

    Description

      Hi guys,

      Thanks for all your hard work on Arquillian! I have a small feature request:

      At present Arquillian has a rather 'programmatic' API: you have to write Java code to do anything. This works great for ShrinkWrap, JUnit, HtmlUnit etc (ie. testing CDI, EJB, JMS etc). But it doesn't work so well for non-Java-code tools such as Canoo WebTest (ie. testing JSF).

      In order to support Canoo WebTest, Arquillian should be able to deploy/start/stop the server purely from Maven. Then I can use maven-webtest-plugin to run my webtest.xml (purely from Maven) and I'm done! I find testing XHTML output using an XML-based testing framework good because there is a lower 'impedence mismatch' than when using Java-code to test XHTML output.

      At present I'm able to get what I want using jboss-maven-plugin. It closely mirrors tomcat-maven-plugin and jetty-maven-plugin, which is great. However:

      1. I have to use a fragile 'sleep' to wait until my app has deployed (see http://jira.codehaus.org/browse/MJBOSS-61)
      2. jboss-maven-plugin appears to be unsupported (hasn't been updated to support AS 6 or 7)

      So I'd really like to see Arquillian supersede in this space? There is this: https://github.com/arquillian/arquillian-maven, but apparently it isn't able to act quite like jboss-maven-plugin can: http://community.jboss.org/message/622128#622128

      EXAMPLE PROJECT
      ---------------

      An example of how I currently do this (using jboss-maven-plugin) can be found here:

      https://github.com/metawidget/metawidget/tree/master/integration-tests/faces/forge/pom.xml

      This is a pom.xml which you can do 'mvn install' on, and it'll download/unpack/deploy/start/test/stop. You'll also need the parent poms:

      https://github.com/metawidget/metawidget/tree/master/integration-tests/pom.xml
      https://github.com/metawidget/metawidget/tree/master/pom.xml

      Attachments

        Activity

          People

            Unassigned Unassigned
            kennardconsulting Richard Kennard (Inactive)
            Votes:
            1 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

              Created:
              Updated: