Hudson is a tool for continuous integration that allows developers to automatically build and test code changes. It can be configured to monitor source code repositories for changes, compile code, run tests and analyze test coverage and code quality. Hudson generates reports on test results, code coverage, violations and build history to provide visibility. Notifications are sent if builds break so that issues can be quickly addressed.