2015-10-23 8 views
14

मुझे env variable, वर्कस्पेस में pytest की .cache निर्देशिका का स्थान बदलने में सक्षम होना चाहिए। मेरे नियंत्रण से बाहर सर्वर अनुमतियों के कारण, मैं कहाँ परीक्षण से चलाए जा रहे हैं, क्योंकि मेरे उपयोगकर्ता निर्देशिका में लिखने के लिए अनुमति नहीं है इस त्रुटि में चल रहा हूँ:क्या pytest की .cache निर्देशिका का स्थान बदलने का कोई तरीका है?

py.error.EACCES: [Permission denied]: open('/path/to/restricted/directory/tests/.cache/v/cache/lastfailed', 'w') 

वहाँ पथ सेट करने के लिए एक रास्ता है पर्यावरण परिवर्तनीय वर्कस्पेस में .cache निर्देशिका का?

उत्तर

6

आप अपने परीक्षण की मूल निर्देशिका में से एक में pytest.ini नामक एक खाली फ़ाइल बना सकते हैं, जो rootdir बन जाएगा, जिसमें .cache बनाया जाएगा।

देखें https://pytest.org/latest/customize.html

यह आदर्श नहीं है, लेकिन यह अनुकूलन के कुछ फार्म की अनुमति देता है।

16

आप "cacheprovider" प्लगइन को अक्षम करके .cache/ के निर्माण को रोकने के कर सकते हैं:

py.test -p no:cacheprovider ... 
1

PyTest 3.2 के बाद से, वहाँ .cache निर्देशिका के स्थान को स्थापित करने के लिए एक कमांड लाइन विकल्प माना जाता है: https://docs.pytest.org/en/latest/customize.html#confval-cache_dir

हालांकि, PyTest 3.2.5 का उपयोग करके, यह unrecognized option: --cache_dir त्रुटि के साथ मेरे लिए विफल रहता है। अगर कोई यह काम करने में सक्षम है, तो कृपया बात करें।

संबंधित मुद्दे