2016-09-11 13 views
5

में स्केरेपी यूनिट परीक्षण कैसे चलाएं मैं पिचर्म के साथ काम कर रहा हूं, स्केपर यूनिट परीक्षण चलाने की कोशिश कर रहा हूं - और यह दौड़ने में विफल रहता है। त्रुटियों के लिए त्रुटियां हैं, ऐसा लगता है कि सभी आयात विफल रहे हैं। उदा।पिचर्म

Import error... "no module named mock" 

मैं क्या किया:

  1. प्राप्त scrapy GitHub

    से
  2. भागो पिप requirements.txt

  3. स्थापित TOX से सभी निर्भरता स्थापित करने के लिए, सुनिश्चित करें कि मैं चला सकते हैं बनाया टीओएक्स का उपयोग कर परीक्षण।

  4. कॉन्फ़िगर्ड Pycharm

py.test का उपयोग कर रहा Ubuntu 14.04, अजगर 2.7 पर काम कर रहा हूँ परीक्षण चलाने के लिए। (से संभालने आप एक ही वातावरण में स्थापित कर रहे हैं, तो आप चल रहे हैं परीक्षण)

pip install -r tests/requirements.txt # Python 2 
pip install -r tests/requirements-py3.txt # Python 3 

कि mock पैकेज स्थापित और अजगर 2 पर no module named mock का समाधान होगा:

उत्तर

4

इसके अतिरिक्त आपके पिप tests requirements स्थापित करने की आवश्यकता।


ध्यान दें कि परीक्षण चलाने के लिए, आप का उपयोग करना चाहिए tox (जो भी एक परीक्षण रन सेटअप चरण के दौरान requirements.txt से लापता निर्भरता स्थापित हैं):

tox -- tests/test_loader.py 

(बस यह सब कर और परीक्षण चल रहे हैं और मेरे लिए गुजर रहे हैं)।

FYI करें, यहाँ tox धावक के लिए मेरे PyCharm विन्यास है:

enter image description here

+0

धन्यवाद, आप मतलब मैं tox उपयोग करने के लिए Pycharm कॉन्फ़िगर करना चाहिए? –

+0

@omerschleifer मुझे लगता है कि आप 'पाइप' (उत्तर का पहला भाग) के साथ निर्भरताओं को स्थापित करने के बाद परीक्षण चलाने के लिए 'पायस्टेस्ट' धावक को रख सकते हैं। वैसे, इस मामले में 'py.test' कमांड' py.test --cov = scrapy --cov-report = test/test_loader.py' जैसा दिखना चाहिए। या, दूसरा विकल्प, परीक्षण चलाने के लिए टोक्स को कॉन्फ़िगर करें (इस मामले में, यह निर्भरता स्वचालित रूप से स्थापित करेगा) - यह संभवतः एक बेहतर तरीका है क्योंकि दस्तावेज़ों में इसकी अनुशंसा की जाती है। – alecxe

+0

धन्यवाद agian, परीक्षण आवश्यकताओं को स्थापित करने के बाद भी, मैं पहले से ही टोक्स का उपयोग कर चला सकता हूं - लेकिन Pycharm स्टूडियो में विफल। मुझे pycharm –

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