What if someone were to create a performance testing archetype instance, create some custom tests, custom configuration and run it...
Then someone else wants to use the same tests, but within a different archetype instance having a different server configuration and some additional tests. I just came across this maven guide http://maven.apache.org/guides/mini/guide-attached-tests.html Apparently tests can be isolated and installed in the repository, and then configured to run as part of another project via that projects pom. I would think this would be attractive for ADS... --- Ole Ersoy <[EMAIL PROTECTED]> wrote: > > > --- Alex Karasulu <[EMAIL PROTECTED]> wrote: > > > -----BEGIN PGP SIGNED MESSAGE----- > > Hash: SHA1 > > > > Ole you sure do have a lot of energy :). > > When the people you are writing to are as bright as > everyone on this list, it's easy to get pumped :) > I try to talk to friends and family about how cool > this stuff is, and they all think I have completely > lost it! > > > > > ... > > > > >> Hmmm I see where you're going. You want to > > generate > > >> projects that have > > >> a server.xml that can be customized for the > test > > >> case. What about > > >> having test cases for embedded operation where > > the > > >> server.xml does not > > >> come into play? > > > > > > There can be 2 separate archetypes for these > > cases. > > > > ... > > > > > But, what if it did'nt have everything we wanted > > in > > > the starting point for this project. > > > > > > We just create a maven project using the > archetype > > > plugin, which is passed as a parameter to the > > > archetype:create command and this project > creates > > a > > > project that is the starting point for creating > > other > > > projects of a specific type, just like a .java > > file is > > > a means of creating an object of a specific > type. > > > > So your archetype creates maven modules that are > > themselves archetypes? > > Hmmm from below this does not seem to be the > case. > > > > It's actually the maven archetype plugin that > creates > the archetype starting point that is the definition > of > a specific type of project. > > When running the mvn archetype:create command we > supply > this parameter > > -DarchetypeArtifactId=maven-archetype-archetype > > thus maven creates a project that is the baseline or > type for all projects of this kind, the same way a > java class is the base type for all objects of its > kind. > > Lets just say that an archetype is the same as a > project type or project class. > > So when we are running mvn archetype:create with the > > -DarchetypeArtifactId=maven-archetype-archetype > > option, maven creates a set of directories and files > that are the starting point for the definition of a > specific project type. > > So to do the ADS archetype / project type > > we would do something like this: > > mvn archetype:create > -DgroupId=org.apache.archetypes.ads.performance.testing > -DartifactId=ads.archetype > -DarchetypeArtifactId=maven-archetype-archetype > > This sets up a project that is the starting point > for > defining a project of a new type. > > So the analogy would be that this is what defines > what > a .java file is or can be. > What is allowed to go in a .java file...or what does > a > .java file compiler understand...what are the > rules/semantics...it's not a .java file, it's what > defines what can go in a .java file, the same way a > .java file defines what is an object of a .java file > type is allowed to store/do. > > It looks like a maven project though with a pom.xml > in the root of the project directory. > > However, there is another pom.xml, deeper in the > directory structure. > > The pom.xml in the root tells maven that this is a > "template/baseline" for all projects of this type. > > The other pom, described in > > http://maven.apache.org/guides/mini/guide-creating-archetypes.html > > is the pom that will go in the root directory of all > the projects that the current archetype project > represents. > > So it's a 2 steps process. > > First create the project baseline set of directories > and files and use mvn to install it. > > Then run mvn archetype:create with the > archetypeArtifactId for that project type, and maven > creates the starting point for us every time. > > So in the first step we used the > > archetypeArtifactId > > parameter to get us the starting point for the > starting point. > > Then we finished the starting point, installed it, > and now we are using the > > archetypeArtifactId > > to create the starting point. > > > > > > > > > So now we can go ahead and create a project > > starting > > > point (directories and files) that we will > create > > over > > > and over again whenever that specific starting > > point > > > is needed. > > > > > > So sometimes we want to manipulate the > server.xml > > > file, > > > > > > I'm just going to interrupt myself here for a > > > minute...there should be an outuput directory > that > > > captures the diff/patch to the server.xml from > the > > > starting server.xml...ok...continuing > > > > So the archetype changes the initial prepackaged > > server.xml by asking > > the user questions? > > The mojo could do that, via the command line, or a > nice eclipse plugin...although for 1.0 hand editing > would probably suffice...the important thing is that > everyone has the same starting point, and we can > generate a quick diff on it, to do comparisons > between > different performance testing projects. This way > since everyone is familiar with the baseline, > everyone > should be able to understand the diff from the > baseline quickly and understand and interpret the > performance testing results correspondingly. > > > > > > > > so there's one specific archetype for that type > of > > > project, and sometimes we just want to configure > > ADS > > > programatically, so we don't need the > server.xml, > > so > === message truncated === __________________________________________________ Do You Yahoo!? Tired of spam? Yahoo! Mail has the best spam protection around http://mail.yahoo.com
