2
私はnmapを使ってネットワーク内のデバイスをスキャンするビュー関数を持っています。djangoアプリケーションのテストでモックを使用して関数をオーバーライドする
views.py
import nmap
def home(request):
y=nmap.PortScanner()
data = y.scan(hosts="192.168.1.*", arguments="-sP")
context[status]=data['status']['addresses']['ipv4']
return render_template('home.html',context)
今私はno devices
、1 device connected
と2 or more device connected
のためにこれをテストしたいです。私はtests.pyのデータをオーバーライドする必要があります。
モック機能を使ってやっていると思っていました。私はtests.pyでオーバーライドすることができますが、応答をシミュレートすると、ビュー関数でオーバーライドされません。
このnmap関数をテストするにはどうすればよいですか?
your_moduleは右、私のviews.pyを意味します
次に、あなたができるように(オリジナルまたはモックのいずれか)ポートスキャンを選択するのだろうか? –
おそらくはい。あなたのホームビューが定義されているモジュールです。実際には、次のようになります: 'yourapp import views'から – ohannes
しかし、ここでは模擬機能がどのように機能しますか。モックからのインポートはありません。 MockPortScannerのオブジェクト引数は何でしょうか? –