2013-10-04 6 views
7

pytestを使用してコードのシステムテスト用のテストハーネスを作成しました。これらのテストは継続的な統合システムで使用されているので、junit xml出力オプションを使用しています。 pytestによる長い文字列の切り詰めは、私に問題を引き起こしています。私は、-vvオプションを使用してそれを防ぐことができますが、それは読みにくい各テストの結果を詳細に出力します。基本的には、少なくともjunit xmlファイルでは、長い文字列の切り捨てを防ぐ別の方法が必要です。それがコンソール出力でも機能していれば、それはより良いが必須ではないだろう。pytestで長い文字列の切り捨てを防ぐ

私たちのコードは、多数の値を持つレポートを生成し、出力を正しいと判明している出力セットと比較します。最初のエラーだけでなく、エラーになっているすべてのフィールドを報告しています。だから私は文字列のリストを生成しています。文字列を改行で結合して、すべてのエラーを含む1つの長い文字列と長い文字列を作成します。アサーションが失敗した場合、私は数百行になる可能性のある文字列の内容全体を見る必要があります。

errors = [] 
error.extend(get_report_errors()) 
s = '\n'.join(errors) 
assert (s == '') 

任意の提案

私は、Python 2.6と2.7とpytest 2.3.5を使用しています。私は必要なpytestのバージョンをアップグレードすることができます。

答えて

1

tbフラグを使用できます。これは、pytestのトレースバック出力です。 これにはいくつかのオプションがあります。 --tb=style traceback print mode (auto/long/short/line/native/no)

あなたには最適なものを選ぶ必要があります。

関連する問題