How is setup_module() different from top-level statements in py.test?
<p>If I don't have any teardown, do I need to use setup_module, or can I just use top-level statements?</p>

<pre><code>=== test_1.py ===
foo = 3
def test_foo(): assert foo == 3

=== test_2.py 
def setup_module(m): m.foo = 3
def test_foo(): assert foo == 3
</code></pre>

<p>Will py.test execute all the top-level statements in order, and before it executes the first test? </p>

<p>Thanks!</p>
