[ 
https://jira.codehaus.org/browse/ARCHETYPE-334?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=237325#comment-237325
 ] 

Herve Boutemy edited comment on ARCHETYPE-334 at 8/16/11 4:53 PM:
------------------------------------------------------------------

yes, I discovered it too when reading source code.
I just improved javadoc in 
[r1004009|http://svn.apache.org/viewvc?rev=1004009&view=rev]: please review

      was (Author: hboutemy):
    yes, I discovered it too when reading source code.
I just improved javadoc in r1004009: please review
  
> Run a build on generated project during integration test
> --------------------------------------------------------
>
>                 Key: ARCHETYPE-334
>                 URL: https://jira.codehaus.org/browse/ARCHETYPE-334
>             Project: Maven Archetype
>          Issue Type: New Feature
>          Components: Plugin
>    Affects Versions: 2.0-alpha-5
>            Reporter: Jesse Glick
>            Priority: Minor
>             Fix For: 2.1
>
>
> Currently it seems that {{archetype:integration-test}} just creates some 
> projects from the archetype with defined parameters and compares their 
> contents to "golden" copies. (By the way 
> http://maven.apache.org/archetype/maven-archetype-plugin/integration-test-mojo.html
>  does not document this in any way; I had to read {{IntegrationTestMojo}} 
> source to find this out.)
> While that might be useful if you happen to have very complex Velocity 
> templates and need to test that property substitution works the right way 
> with different inputs, most archetypes have rather simple templates that just 
> substitute {{artifactId}} and the like, in which case verifying that the 
> created POM matches some fixed text is worse than useless: if you make any 
> changes to the archetype, you are simply going to make identical changes to 
> the test's golden files.
> What would be much more useful in my experience is to check that the newly 
> generated project actually builds. For example, run {{mvn post-clean verify}} 
> and check that at a minimum the build completes normally. This would catch 
> common mistakes you might make when editing archetypes: mistyping a plugin or 
> dependency name, introducing compilation errors into Java sources, etc. It 
> would also be valuable to check that no warnings are emitted - such as the 
> infamous {{File encoding has not been set...}} message when 
> {{project.build.sourceEncoding}} has been forgotten.
> (You could also run {{mvn post-site}}, checking for warnings/errors, and 
> compare {{target/site}} to a golden copy.)
> CI builders running integration tests might also do so with a pristine local 
> repository (plus cache manager mirroring official public repos), which would 
> catch accidental references to unreleased plugin/dependency versions that the 
> archetype developer happened to have in their local repo.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Reply via email to