2017-07-10 64 views
0

現在、Pythonの単体テストを作成しています。これは組み込みの 'unittest'モジュールと 'coverage'という外部ライブラリの組み合わせを使用しています。カバレッジはWindowsで動作しますが、Linuxマシンでは動作しません

Windows上でレポートを生成するとき、私は次のような出力が得られます。私は、Linuxベースのマシン上でこれを展開するとき

C:\Users\Me\Project> coverage report --include package/* 
... 
package\tests\scanner.py     53  0 100% 
package\tests\scans.py     169  32 81% 202-235 
--------------------------------------------------------------------------- 
TOTAL           1344 336 75% 

しかし、これが起こる:

$ coverage report --include package/* 
Name Stmts Miss Cover Missing 
------------------------------------- 
No data to report. 
ERROR: Job failed: exit code 1 

私は、次を使用している場合ファイルを検索しますが、ネストされたファイル内にファイルは見つかりません:

$ coverage report -m package/**/*.py 

よろしくお願いします。

+0

このコマンドを展開している間、Linuxのスクリプトディレクトリにいますか? –

+0

@HarshithThotaはい、私が実行する他のすべてのスクリプトは正常に動作するようですが、カバレッジにパスを渡すと実際には奇妙な動作をするようです。 – Paradoxis

+0

カバレッジをインストールする前にpython-devとgccサポートファイルをインストールしましたか? –

答えて

0

これは、Bashのワイルドカードに関連する問題のようです。次の作業を実行しました:

coverage report -m unittest package/\* 
+0

ハードクォートの使用はおそらく簡単ですので、 bash文字: 'カバレッジレポート-m unittest 'パッケージ/ *'' –

関連する問題