2011-03-09 15 views
5

Pycharmを使用してサーバーに書き込みました。Pycharmが非テストファイルのブレークポイントを認識していません

私はPythonの 'unittest'ライブラリを使ってunittestsをいくつか持っています。

私はテストを実行していて、すべてうまくいきました。コードのどこにでもブレークポイントを設定できました。 昨日私はデバッガを使ってサーバを起動しました。私はブレークポイントがもはや働かないことを発見しました。視覚的にはそれらはまだそこにありますが、実際には実行を中断させないことを除いて、動作中のブレークポイントのようにあらゆる方法で見たり動いたりします。

今日私はテストをやり直そうとしたとき、すべてのファイルで同じ動作が観察されていますテストライブラリのものを除きます。

シンプルな機能で新しいファイルをサーバーコードに追加して実験を試みました。 関数内のブレークポイント、テストからの関数の呼び出し、デバッガによるテストの実行、ブレークなし。 ファイルを私の 'tests'ディレクトリにコピーし、関数内のブレークポイントをリセットし、 'import'ステートメントをテストファイルの新しい場所を指すように変更してテストを実行しました。これで、ファイル内のブレークポイントで停止します。

私は考えることができるすべての基本的な「サニティチェック」を試しました。つまり、PyCharmを終了します。 PyCharmを再インストールしてください。 PyCharmの設定を削除します。リブート。私はまだまったく同じ動作をします。

'run to cursor'は同じ問題を抱えています。テストファイル以外は何も停止せずに実行されます。

本当に狂っているのは、これが昨日すべて正常に機能したことです。テストを実行していたときに少なくともブレークポイントが機能していました。

答えて

2

これは自分で修正しました。

[実行] - [設定の編集]で、テスト用の設定を選択しました。

"テスト:フォルダ:"では、既存の設定はfoo/bar/baz/my_project/testsでした。

この設定では、問題が発生しました。「テスト」作業のブレークポイント、残りの「my_project」のブレークポイントはそうではありません。

foo/bar/baz/my_projectに変更しました。 これはすべて正常に動作し、ブレークポイントは正常に動作します。

私のプロジェクトに参加している他の人は、「テスト」ディレクトリだけを指しており、どこにでもブレークポイントを設定できます。

私はなぜ私が特別なのかわからないが、これは私のためには失敗するが、私は回避策があり、それと戦うのに飽き足りる。

1

ねえダグ、または有用であってもなくてもよい三つ:私は同じ問題に戻って保存されたデバッグ構成で以前の1.0と1.0.1のリリースと時間のカップルを持っていた

  1. - - デバッグ構成を再作成すると、グリッチが修正されました。木を叩くが、1.1.1では問題はなかった。 1.2リリース候補を試していない。
  2. 同僚にも同様の問題がありましたが、誤ってPyCharmが実行していたファイルではなく、ファイルの外部コピーにブレークポイントを設定しました。
  3. 最後に、私の経験では、ping their user forumおよび/またはsubmit a YouTrack bugの場合、JetBrainsの方々が問題に対応してくれていることが非常にうれしいです。

乾杯、 ロブ