Is there a way in Python `unittest` to set the order in which test cases are run?

In my current `TestCase` class, some testcases have side effects that set conditions for the others to run properly. Now I realize the proper way to do this is to use `setUp()` to do all setup related things, but I would like to implement a design where each successive test builds slightly more state that the next can use. I find this much more elegant.

```
class MyTest(TestCase):

  def test_setup(self):
    # Do something

  def test_thing(self):
    # Do something that depends on test_setup()

```

Ideally, I would like the tests to be run in the order they appear in the class. It appears that they run in alphabetical order.