[Twisted-Python] Running Twisted tests with testtools

Glyph glyph at twistedmatrix.com
Wed Feb 8 02:05:22 EST 2012

On Feb 7, 2012, at 3:49 PM, Free Ekanayaka wrote:

> Hi Jonathan,
> |--==> On Mon, 6 Feb 2012 19:01:30 +0000, Jonathan Lange <jml at mumak.net> said:
>  [...]
>  JL> As much as I would like to see that happen, I am not ever going to do
>  JL> anything about it.
> So what position can the Twisted project realistically take? Keep using
> trial for testing Twisted itself, but recommending projects based
> on twisted to use testtools instead (and deprecating trial somehow)?

The position that Twisted can take is that Trial is awesome and you should use Trial.  testtools is a separate project, and you may elect to use it to enhance your trial experience.

> Also, from what I had heard it'd be technically not possible to provide
> a compatibility layer, is that accurate?

It's already compatible, as Jonathan said.  You can just use the trial runner with testtools tests.

> Personally, if testtools ever becomes the blessed tool for testing
> twisted-based projects, I would not mind at all to have to replace

For a nominal donation to the project, someone from the Twisted project can come to your office, put on some ridiculous priest costume and sanctify whatever toolchain you want to use. ;-)

> However it'd be good if Twisted took a clear position on this,

Nope.  We write software, not position papers :).

> because the risk is to see trial languishing and testtools never really taking
> off (assuming that testtools is the way to go, which is your thinking
> afaiu).

Trial is a supported tool that is part of Twisted.  It works great for me every single day.  It can work great for you.  The fact that Jonathan is technically the "maintainer" and he hasn't been doing much work on it is irrelevant; other people have been working on it, bugs do get fixed, features do get added.  There's not a lot of personality-driven development on Twisted; every patch is at least a bit of a community effort.  (If someone else wanted to step forward and take the "maintainer" mantle I'm sure he'd be happy to give it up.)

There are lots of parts of trial which work great with testtools, too.  It has a plugin architecture, for example, which can do some interesting things (exarkun wrote a cool one called "merit" but I don't know if the code for that still exists anywhere...).  It would be good to provide better documentation for those kinds of things, and maybe some community tools, so the sorts of people who write Nose plugins could also write Twisted plugins.

Apropos of that, Trial's web page received some improved content a little while ago, in case anyone is interested in improving its presence on the web, and helping people understand what it can do: <http://twistedmatrix.com/trac/wiki/TwistedTrial>.

I think that the main risks to "languishing" or "not taking off" for both Trial and testtools are issues with their own documentation and promotional materials, not in any conflict with each other.  If you're worried about it, contribute code or documentation or blog-posts or what have you to one or both projects :).


More information about the Twisted-Python mailing list