New function tornado.testing.bind_unused_port both chooses a port and binds a socket to it, so there is no risk of another process using the same port. get_unused_port is now deprecated.

New decorator tornado.testing.gen_test can be used to allow for yielding tornado.gen objects in tests, as an alternative to the stop and wait methods of AsyncTestCase .

tornado.testing.AsyncTestCase and friends now extend unittest2.TestCase when it is available (and continue to use the standard unittest module when unittest2 is not available)

tornado.testing.ExpectLog can be used as a finer-grained alternative to tornado.testing.LogTrapTestCase

The command-line interface to tornado.testing.main now supports additional arguments from the underlying unittest module: verbose , quiet , failfast , catch , buffer .

The deprecated --autoreload option of tornado.testing.main has been removed. Use python -m tornado.autoreload as a prefix command instead.

The --httpclient option of tornado.testing.main has been moved to tornado.test.runtests so as not to pollute the application option namespace. The tornado.options module’s new callback support now makes it easy to add options from a wrapper script instead of putting all possible options in tornado.testing.main .

AsyncHTTPTestCase no longer calls AsyncHTTPClient.close for tests that use the singleton IOLoop.instance .