2013-09-02 9 views
5

私はDjangoでカバレッジを使用しようとしていますが、間違った結果が出ているようです。私のアプリは、「統計」という名前と私は、このテスト持っている:なぜPythonのカバレッジは行が欠落していると言っていますか?

class ListSchoolsTest(TestCase): 
    def test_initial_list(self): 
     self.client.login(username='skeezy', password='skeezy') 
     resp = self.client.get("/stats/list_schools/") 
     self.assertEqual(resp.status_code, 200) 

コマンドラインでは、私が実行します。

coverage run --source="." manage.py test stats 

そして、テストは合格します。すべての私の見解は、統計/ views.py

に現在あるしかし、私は、「カバレッジレポート」を実行したとき、私はこの行を取得する:

Name     Stmts Miss Cover 
---------------------------------------- 
<snip> 
stats/views   110 110  0% 

任意のアイデア私は(ない)にカバレッジを引き起こすことをやっているものをテストが合格するためにはヒットしなければならないにしても、stats/views.pyで見逃した行をすべて報告しますか? (ベルトとサスペンダーと同じように、私は私の見解にprintステートメントを入れました。それは確実にヒットしています)

+0

私は同じ問題を抱えています。 Windowsでは、カバレッジは正しく機能しますが、Travisに送信すると、テスト自体に含まれていないすべてのステートメントが見落とされます。 – BoppreH

答えて

0

-eフラグを付けずにアプリをインストールしたことがありますか?モジュールはプロジェクトディレクトリからインポートされませんが、インストールされたパスとカバレッジはそれらが異なるファイルだとみなします。

関連する問題