see http://patterntesting.sf.net If there are Pattern Test that you would like to see implemented, please add them to the Wish List. --VincentMassol ''For PatternTesting commmitters: If you're currently implementing one of these PatternTest''''''s, please put your name at the end of the line describing the test so that others know it is being implemented''. ---- '''''Wish List''''' '''Java category''': * Verify that no calls to any method in our application is allowed to use "null" * ''Verify that no System.out.println() are used anywhere (should use the project defined logging facility instead)'' -- '''Implemented''' * Verify that the "control" layer (for exemple for a web application) is only allowed to talk to the "service" layer (implementation of the use cases) and not to the "persistence" layer (for example) * Verify that any application exception must be a subclass of BusinessException, TechnicalException or CriticalException (have a property to describe the package name holding all exception classes, Another property to hold all Abstract Exceptions and then verify) * Verify that exceptions are only logged at the top level * Verify that no exception stack traces are "silently eaten" * Verify that the Exceptions are logged where they are been handled * Verify that no catch are empty * Verify that resources (db connections, files etc) are properly closed in a finally block '''Avalon category''': * Verify that all Avalon components must extend a base AbstractAvalonComponent class * ''Verify that stateless classes (Thread Safe classes in Avalon terminology, Singleton or "static classes" in other terminologies) are not allowed to set instance variables except at initialisation time'' -- '''Implemented''' '''EJB category''': '''Database category''': * ''Verify that all calls to the database go through a JdbcDataAccess class and that none uses JDBC directly'' -- '''Implemented''' * Verify that for any use case, a maximum number of 5 SQL queries to the database is allowed, '''Struts category''': * Verify that the MVC model is applied consistently. For example, verify that any call to the service layer has been through an Action class (if you're using Struts for example) '''Unit Test category''': * Verify that there are unit tests for every public class in the application. ---- ---- '''Discussion:''' Is this page meant to be OffTopic or a WalledGarden? This page seems to be a project status checklist. Does it really belong on this wiki? While much of this material could be edited to be in PatternForm or generally useful, it currently does not seem to invite content changes by most wiki users. -- a gnome ''It was part of a WalledGarden, and I merged it into an OrphanPage. I probably would have deleted it had it not had VincentMassol's name on it. Perhaps the best thing would be to email Vincent.''