私は、テストスイートでフィクスチャを利用する必要がある機能を持っています。これは完全なURLを生成するのに役立つちょっとしたヘルパー関数です。PyTestのヘルパー関数にフィクスチャを渡しますか?
def gen_url(endpoint):
return "{}/{}".format(api_url, endpoint)
私はURLを返しconftest.py
での治具があります。
@pytest.fixture(params=["http://www.example.com"])
def api_url(request):
return request.param
@pytest.fixture(params=["MySecretKey"])
def api_key(request):
return request.param
最後に、私のテスト機能では、私が呼び出す必要がありますが、私のgen_url
:
def test_call_action_url(key_key):
url = gen_url("player")
# url should equal: 'http://www.example.com/player'
# Do rest of test here...
私はこれを行いますしかし、gen_url
が呼び出されたときにapi_url
が定義されていないというエラーが発生します。 2番目のパラメータとしてapi_url
を追加すると、2番目のパラメータとして渡す必要があります。それは...私がしたいことではありません。
gen_url
に2番目のパラメータとしてapi_url
を追加してテストから渡す必要はありませんか? 機能でapi_key
のように使用できないのはなぜですか?
'api_url'を' gen_url'に渡したくないのですか? –