2017-08-25 7 views
1

私は郵便配達員による完全なテストであると考えているフラスコの安らかなアプリケーションを構築しました。コマンドラインからnewmanを使ってテストを実行します。Pythonのカバレッジとポストマン

私は、私のテストでコードを見逃してしまったかどうかを判断するためにカバレッジ.pyを使用しようとしていますが、newmanを通して外部テストプロセスを使用することはできません。

私はフラスコガイダンスに続き、最後にnewmanスクリプトが呼び出すシャットダウンエンドポイントを追加しました。カバレッジレポートを調べると、基本的にすべてのコードがカバーされていないことが示されます。

これも可能ですか?既存のテストでカバレッジをチェックできるツールがいくつかありますか?私は実際にすべてのテストをPythonに変換してカバレッジフィギュアを取得したくないのです。

+1

どのようなテストをしていますか?カバレッジレポートは、単体テストなどの低レベルテストで主に使用されるツールです。一方、統合、動作、エンドツーエンドのテストなどの高レベルテストでは典型的なHTTP経由でシステムにアクセスしているようです。 –

答えて

0

短い答え:coverage.pyを使用するには、テストをPythonで記述する必要があります。

長めの回答:coverage.pyは、コード(つまりテスト)を実行して、それが呼び出すコード行を確認することで動作します。つまり、テストとテストするコードは同じプロセスでなければなりません。 newmanがPython で書かれている場合、Flaskアプリケーションを呼び出す可能性があります。となる可能性があります。希望の

グリマー:可能かもしれない何が、フラスコのアプリを実行するためにprofilerを使用newmanを経由して外部にそれを行使して、すべての文が呼び出されたかどうかを確認するために、プロファイリングデータを調べることです。悲しいかな、私はそのようなレポートを提供するプロファイラを認識していませんが、理論的には収集するデータで可能になるはずです。

関連する問題