Hi Darren, thanks for the questions!f
-are there specific advantage / disadvantage to using arquillian as the same framework for all the types [unit, web or functional, integration] of testing?
Arquillian builds upon all the tools you mentioned. It uses the strengths of each and helps to fill holes in some of their weaknesses. Arquillian is primarily targeted at functional and integration testing. This isn't to say you couldn't use it for unit testing, but because you'd end up deploying to a container for your tests it isn't well suited for the quick turn around you want to see with unit tests. If you want to know how your application will perform in the container you're going to be deploying to, or test a service as a client then Arquillian makes a lot of sense. You'll be able to see, monitor and test your application in as similar of a production environment as you'd like.
-is there a 'stock' pdf-type of report that combines all the testing activities into an 'executive summary' type of presentation?
Arquillian uses Junit (or TestNG) as the test runner. Any reports you have from those tools or aggregate reports you can build from the output will still work with Arquillian. Arquillian itself doesn't create any reports, however, there is the Report extension
that you could use to create your own custom reports doing what you suggest, there simply isn't any sort of aggregate report out of the box.
-are there additional features, such as code-coverage reports, that integrate all the testing activities into a single code-coverage (i.e. this part was tested by unit testing and service testing, but this part was only tested by service testing)?
Arquillian integrates well with Jacoco using the arquillian-jacoco-extension
. If you're not familiar with it, it is a tool similar to emma or cobertura. You should be able to set it all up and create an aggregate report for your full suite.