The Dumbster is a very simple fake SMTP server designed for unit and system testing applications that send email messages. It responds to all standard SMTP commands but does not deliver messages to the user. The messages are stored within the Dumbster for later extraction and verification.
The Dumbster slots itself very easily into your testing strategy. As long as your application talks to an email server using SMTP then the Dumbster can be used to test the application with no code changes.
The Dumbster is useful in the following scenarios:
* System testing an application. It is important at this stage of the development process that all functionality is active and not stubbed out. The Dumbster is able to respond just like a regular SMTP server but delivers no email messages to end users. This is important if you are testing with real world data. In addition it is possible to verify that the correct email messages would have been delivered to the end users by querying the Dumbster.
* Unit testing code that needs to send email. Again the Dumbster can be used as a dumpster to collect all email and ensure nothing is delivered to real users. In addition if the code being tested needs to deliver a specific set of email messages, with specific content then the Dumbster can be queried from within the unit test to verify correct delivery and content.
The Dumbster is written in Java and is open source. It is distributed under the Apache License 2.0.