[Design of Messaging on JBoss (Messaging/JBoss)] - Re: New test structure
by jmesnil
"timfox" wrote : Following on from the new JBM 2.0 test strategy, we need to come to concensus on a package structure for the tests, since currently we're all putting them in different places.
|
| I suggest:
|
| org.jboss.test. parent directory - all tests are under this
|
Shouldn't we put our code under org.jboss.messaging.test to avoid (very unlikely) name collision with other JBoss projects?
"timefox" wrote :
| e.g. org.jboss.test.unit.messaging.core.impl would contain unit tests for the core implementation classes
|
| Comments/suggestions?
There is also the alternative to put the different types of test related to a single "component" under the same tree.
e.g. for remoting; all tests related to remoting would be under org.jboss.messaging.test.remoting:
- org.jboss.messaging.test.remoting.unit
- org.jboss.messaging.test.remoting.integration
- org.jboss.messaging.test.remoting.timing
- ...
This mimics the way the code is hierarchized (all remoting code is under org.jboss.messaging.remoting and its subpackages) and the tests related to a same component/"theme are closer to each other than spread all over the test suite.
imho, it makes it easier to navigate the code and run tests from an IDE
And this won't change the way the tests are run automatically (org.jboss.messaging.test.**.unit instead of org.jboss.messaging.test.unit.**)
What do you think?
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4111613#4111613
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4111613
18 years, 4 months
[Design of Messaging on JBoss (Messaging/JBoss)] - New test structure
by timfox
Following on from the new JBM 2.0 test strategy, we need to come to concensus on a package structure for the tests, since currently we're all putting them in different places.
I suggest:
org.jboss.test. parent directory - all tests are under this
org.jboss.test.unit unit tests - only use mocks and fakes of 3rd party components - fully deterministic
org.jboss.test.unit.fakes any shared fake implementations that can be used by different tests
org.jboss.test.integration integration tests - use real third party components - fully deterministic
org.jboss.test.timing timing sensitive tests - e.g. scheduled delivery tests - allowed to contain Thread.sleeps(), theorertically may be non deterministic due to timing differences in thread scheduling.
org.jboss.test.concurrent - concurrent tests - like unit tests but may use multiple threads to test a component with concurrently.
org.jboss.test.stress - stress tests
under each of the preceeding directories the actual tests would be structured according to the classname.
e.g. org.jboss.test.unit.messaging.core.impl would contain unit tests for the core implementation classes
Comments/suggestions?
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4111601#4111601
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4111601
18 years, 4 months