I think you're missing what's going on here.  These tests are over the _functionality_ of the _generated_ code.  So, we're compiling code using `@AutoValue` and then running JUnit tests over the result.  So, you need a minimum of 2 separate compilation phases in order for that to work.  Since maven gives you that by default, you can actually hack it to just have the processor run over the test code, but that breaks IDEs pretty badly.  So, I figured that it was just clearer/less broken to pull it into an IT.  If you have a way for an IDE to be able to run an annotation processor on its own project, then I think we can go back to unit tests, but I know of no such magic.