4

例外をスローする単体テストがあります。例外は私のコードではスローされません。それはdjangoの奥深くからのものです。その場所でpdbセッションを開いて、何が起こるかを確認したいのですが、pdbでipythonを開いrun test myappてテストを実行すると、例外がスローされて出力されますが、pdbは何もキャッチしません。

絶望的な解決策は、djangoのソースを開いてimport pdb; pdb.set_trace()、調査したい場所に挿入することだと思います。しかし、もっと良い方法が必要です。私は何が欠けていますか?

4

2 に答える 2

2

おそらく、nosetestsを使用して--pdbオプションを指定してテストを実行すると機能します。

于 2012-07-13T12:17:52.817 に答える
0

import pdb; pdb.set_trace()コードにブレークポイント()を設定して、プロセスを調べてみませんか?つまり、文字「s」を使用すると、関数内に入力できるため、Djangoコードまで深く掘り下げることができます。

あなたが言うようにブレークポイントを使用することが悪い解決策であるとあなたが考える理由はわかりません。実際、それが私のすべてのコードをデバッグする方法です。

ところで:ipdbinsteandpdbを試してください。きっと気にいる ;)

于 2012-03-20T21:47:42.077 に答える