Spring scanner and the wired test add-on

When building a server add-on a special test add-on is built out of the box for “wired tests”. I’ve noticed spring scanner only appears to work for the main add-on JAR that is built and have yet to find a way to get it working with the test add-on JAR.

Is it possible to use spring scanner with the wired test add-on at this stage, or do you still need to use the old approach of adding <component-import>'s in atlassian-plugin.xml?

2 Likes

We have given up completely on Wired Tests. We have built an extension for Arquillian to allow in-container testing for plugins https://bitbucket.org/Adaptavist/atlassian-arquillian-containers for an example of how to use it see the the Adaptavist reference plugin.

It supports all injection, including scanner annotations, running code inside the application, and outside. We are much much happier with this approach than wired tests and as a bonus it is possible to use webdriver extensions Drone and Graphene. The next phase of development is to support container deployment with Arquillian Cube to allow us to use the selenium docker containers and to start and stop Atlassian applications with real databases in a fully managed way.

As far as I can tell Atlassian have pretty much given up on wired tests, there doesn’t appear to be any progress for quite some time.

2 Likes

We’ve successfully used functest-plugin with atlassian-spring-scanner. The project is public, but it is a bit low on documentation and examples.

@mpaisley, would you recommend Server developers to use functest-plugin?

1 Like

This is interesting, not seen it before. Looking at the docs it feels like it is trying to perform the same kinds of things that Arquillian. It doesn’t appear to solve the dev flow problem as well as Arquillian does, with Arquillian all i have to do is run my test and the new test code will be deployed into the container automatically. Also Arquillian allows you to run some test cases inside the application and some outside which makes it awesome for setting up test fixtures