स्थापित नहीं हैं, मैं रोबोट के लिए सॉफ़्टवेयर पर काम कर रहा हूं, जो आम तौर पर रास्पबेरी पीआई पर चलती है।पायथन मॉक और लाइब्रेरीज़ जो
motor.py
(मोटर्स चलाता है):: चलो दो फ़ाइलों के आयात पर विचार करें
from RPi import GPIO as gpio
और client.py
(सर्वर के साथ संचार और रिले मोटर्स के लिए आदेश):
from rpi.motor import Motor
दोनों फ़ाइलों rpi
नामक निर्देशिका में हैं, जिसमें __init__.py
और __main__.py
शामिल है। गैर-आरपीआई उपकरणों पर RPi
पैकेज स्थापित नहीं किया जा सकता है। हालांकि, मैं अभी भी client.py
की कार्यक्षमता का परीक्षण करना चाहता हूं।
import unittest
from unittest import mock
# Location A
class TestClient(unittest.TestCase):
# Location B
setUp(self):
# Location C
pass
मूल रूप से, मैं लोका पर from rpi.client import Client
की कोशिश की, लेकिन वह विफल रहा क्योंकि यह आरपीआई, जो अस्तित्व में नहीं है से मोटर आयात करने के लिए, और फिर आयात GPIO की कोशिश की। मैं भी LocB (self
के बाद mock_motor
जोड़ने सहित कम से mock.patch("rpi.client.Motor")
की कोशिश की, और LocC पर Client
आयातित है, लेकिन यह रूप में अच्छी तरह विफल रहा है। मैं लोका पर RPi
मजाक की कोशिश की है, भी, लेकिन यह या तो काम नहीं किया।
आप कैसे नकली है ?। बाहर एक पुस्तकालय जो आपके सिस्टम पर स्थापित नहीं है
यदि पुस्तकालय केवल पीआई पर काम करता है, तो पीआई पर परीक्षण क्यों नहीं चलाते? तो आपको कुछ भी जटिल नहीं करना है। – davidism
क्योंकि मेरे पास हमेशा पीआई तक पहुंच नहीं है। मैं अपने कंप्यूटर पर विकसित करता हूं, और फिर जिथब को दबाता हूं और पी को खींचता हूं। लेकिन मैं काम करने से पहले परीक्षण करना होगा। –