Olivier, so the two projects that I'll upload are example of a failing situation. The awkwardly named compiler-plugin-simple-annotation-processor is an annotation processor that will generate a .txt file in the with the same directory structure as the annotated class, that is a class annotated with @SimpleAnnotation. The other project is compiler-plugin-annotation-test that has a compile dependency on the former, and a test that checks if the .txt file was indeed created.
If you were to do it on command line using standard java tools you would first compile the sources with javac (including compiler-plugin-simple-annotation-processor.jar and junit.jar) at this point javac would detect the annotation processor and it would create the .txt file (in current directory if no -s option was given). Then you would use java org.junit.runner.JUnitCore org.apache.maven.plugin.AnnotationProcessorTest with classpath pointing to the output of javac (that would include the generated .txt file).
With maven project directory structure and conventions, i.e. source output of annotation processors is target/generated-sources/[test-]annotations, and the fact that current maven compiler plugin does not forward the target/generated-sources/[test-]annotations to compileSourceRoots fails the test. The build helper workaround mentioned above helps, but I think that proper solution is for maven compiler plugin to include the sources it generated (via annotation processors) in classpath for other plugins to have.
This is very similar to my original use case - in which I was generating resources (AspectJ inter type declarations) to be considered by the another plugin after maven compiler plugin (AspectJ maven plugin), that needs these generated resources in classpath. But I imagine that there are other use cases for this as well.
I don't know it this is what you were thinking by a failing test, but I hope it helps.