pytestのfixure(scope="xxx")のscope="module”とscope="session"の違いを教えてください
環境
Python 3.5.2
pytest 3.1.2
OS Ubuntu 16.04
下記のコードでfixtureを定義したとします。
#!/usr/bin/env python3
# -*- coding: utf-8 -*-
import pytest
@pytest.fixture(scope="session", autouse=True)
def myfixture():
print('Hello fixture')
def test_fixture():
print('Hello')
def test_fixture2():
print('Hello2')
scopeには"session", "module", "class", "function"の4つが指定できるらしく、"session"以外のものは意味がわかるのですが、"session"という用語がどこまでの範囲のことを指すのかがわかりません。
恐らくmoduleよりも広い範囲を指すのだろうということは想像がつくのですが。
scope="module"との違いや挙動を確認できるコードを例示してもらいたいです。