Fred, On Friday 14 December 2007, Fred Dushin wrote: > I understand why the testutils stuff is there, but I don't like it. > The idea is to shorten build times, by putting a common set of > functionality in a JAR, and re-use to your heart's content.
The idea isn't just to shorten the build time, although that's a great benifit. There are two main reasons: 1) Provide a set of standard "Impls" that could be reused by tests so you don't need to write a bunch of new Impls for everything. For example, simple, jaxws, js, etc... all need some simple server side impls to do various testing. I don't believe in copying the same code all over the place. That kind of destroys the whole idea of code reuse. 2) Related to (1) is the problems that copying the code all over the place has on IDE's, specifically eclipse. When building with maven, it doesn't put test classes from one project onto the paths of other projects. However, the way eclipse:eclipse sets up the eclipse projects, it does in eclipse. Thus, you end up with two classes with the same names on the classpath and if they get modified, you get random failures and such. Thus, when you copy, you would also need to make sure to change all the namespaces, change the package names, etc... Thus, creating even more work for your self. You also have that issue with the /wsdl directory. If there is a /wsdl/hello_world.wsdl in testutils, and you try to have a /wsdl/hello_world.wsdl in your own set of tests, you may or may not get the correct one when you run your tests. (which is why I went through an renamed a bunch of /wsdl dir to /wsdl_MODULE for /wsdl dirs outside of testutils). > My problem with that is re-use doesn't always work, so you get what > you observe -- lots of test-specific functionality in testutils. > (Look at hello_world_secure.wsdl, for an example). Well, if it's specific to just the system tests, put it in the system tests. Don't put it in testutils. The point of testutils was to be a place for SHARED stuff. If it's not shared, don't put it there. Or, import the stuff from testutils. (The catalog stuff should all be working now. You can import via testutils/hello_world.wsdl or similar). -- J. Daniel Kulp Principal Engineer, IONA [EMAIL PROTECTED] http://www.dankulp.com/blog
