यह 100% पाइस्टेस्ट कोड पैटर्न जैसा दिखता है
देख:
https://docs.pytest.org/en/latest/fixture.html#conftest-py-sharing-fixture-functions
मेरे साथ भी यही समस्या थी, यही कारण है कि मुझे यह पद मिला;)
# ./tests/test_twitter1.py
import os
import pytest
from mylib import db
# ...
@pytest.fixture
def twitter():
twitter_ = db.Twitter()
twitter_._debug = True
return twitter_
@pytest.mark.parametrize("query,expected", [
("BANCO PROVINCIAL", 8),
("name", 6),
("castlabs", 42),
])
def test_search(twitter: db.Twitter, query: str, expected: int):
for query in queries:
res = twitter.search(query)
print(res)
assert res
और इसके साथ चेतावनी देगा This inspection detects shadowing names defined in outer scopes.
इसे ठीक करने के लिए बस अपने twitter
फिक्सेटर को मूव करें./tests/conftest.py
# ./tests/conftest.py
import pytest
from syntropy import db
@pytest.fixture
def twitter():
twitter_ = db.Twitter()
twitter_._debug = True
return twitter_
और twitter
जैसे में स्थिरता निकालें./tests/test_twitter2.py
# ./tests/test_twitter2.py
import os
import pytest
from mylib import db
# ...
@pytest.mark.parametrize("query,expected", [
("BANCO PROVINCIAL", 8),
("name", 6),
("castlabs", 42),
])
def test_search(twitter: db.Twitter, query: str, expected: int):
for query in queries:
res = twitter.search(query)
print(res)
assert res
यह QA, Pycharm और सभी को खुश करेगा