4 Replies Latest reply on Mar 17, 2013 6:03 AM by dboeckli

    Arquillian and Websphere

    dboeckli

      Recently I added some enhancements to the Websphere part of Arquillian:

      - Deployment to Websphere Environment with Deploy Manager and Nodes running in a Cluster

      - Support for Shared Library

      - Support for ClassLoading (e.g Parent Last)

       

      Those Enhancements have been testes on Websphere AS 8.5

       

      If there are interests for those features I would like to contribute to the community.

       

      Currently we have the problem that the deployment of a arquillian test takes approx 100 Seconds before the tests start. Does anybody has some tips to speed up this process.

      So far we did the following to speed up:

      - enhanced arquillian to support shared libraries. So we don't need to package third party libraries into the arquillian deployment artefact.

      - increased memory of deploy manager and nodes (each 1 GB).

      - arquillian tests in the continuous integration platform are only triggered in a nighly build job

       

      any help is highly appreciated

        • 1. Re: Arquillian and Websphere
          gpoul

          dominique boeckli wrote:

           

          Recently I added some enhancements to the Websphere part of Arquillian:

          - Deployment to Websphere Environment with Deploy Manager and Nodes running in a Cluster

           

          What's the reason for doing this? This will make the deployment slower and cause a number of additional complexities that shouldn't really matter for code testing.

           

          - Support for Shared Library

          - Support for ClassLoading (e.g Parent Last)

           

          These are very specific extensions and it depends on how these are implemented. It should be able to set those application settings by using proprietary IBM descriptors, so I'd think that this would rather belong into an extension in Shrinkwrap instead of in Arquillian.

           

          Currently we have the problem that the deployment of a arquillian test takes approx 100 Seconds before the tests start. Does anybody has some tips to speed up this process.

          So far we did the following to speed up:

          - enhanced arquillian to support shared libraries. So we don't need to package third party libraries into the arquillian deployment artefact.

          - increased memory of deploy manager and nodes (each 1 GB).

          - arquillian tests in the continuous integration platform are only triggered in a nighly build job

           

          It depends on what exactly is slow. There is an enhancement in the pull request at https://github.com/arquillian/arquillian-container-was/pull/8 that allows you to disable archvie uploading. But this might conflict with the deployment you're performing through dmgr.

          • 2. Re: Arquillian and Websphere
            dboeckli

            The Reason for the deployment through a deployment manager is the following:

            The environment where the automated tests are done (via Jenkins) is a 1:1 copy of the productive environment. Therefore it consist of a deploy manager and 2 app-server which forms a cluster.

             

            Support for shared libraries does not slow down the deployment. It speeds up the deployment because those libraries are not packaged in the test module. This way you can just assume they are

            provided by websphere as a shared library. The same library we use as well in the Prod environment, so it can be considered as a given feature from the container.

            As a consequene of the added feature to the arquillian websphere enhancement, you should be able to influence the classloading (eg. parent last), to avoid conflicts with ibm libraries.

             

            Many thanks for your tip about the archive uploading. The archive which is deployed by arquillian consist only of few kb.

             

            Appart from the enhancement for deployment through deploy manager, i agree with you: the other enhancement should be in a shrinkwrap websphere part. But, is there any container specific

            part in the shrinkwrap project?

            • 3. Re: Arquillian and Websphere
              gpoul

              dominique boeckli wrote:

               

              Appart from the enhancement for deployment through deploy manager, i agree with you: the other enhancement should be in a shrinkwrap websphere part. But, is there any container specific

              part in the shrinkwrap project?

               

              I can't really answer that question authoritatively, but there seem to be container-specific extensions in the project list at https://github.com/shrinkwrap

              • 4. Re: Arquillian and Websphere
                dboeckli

                Hmmm....unfortunately there is not shrinkwrap extension for Websphere at all.