問題タブ [approval-tests]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c# - ApprovalTests DiffReporter は、テストが失敗したときに差分ウィンドウをポップアップ表示しません
ApprovalTests DiffReporter は、テストが失敗した場合、テストの実行後に差分ウィンドウをポップアップ表示しません。以下は私のコードです。
同僚のマシンの 1 つで、同じコードの差分ウィンドウがポップアップ表示されます。同じバージョンの Visual Studio を同じ設定で使用しており、どちらも差分ツールがインストールされていません。
ただし、VS 2012 (差分ウィンドウがポップアップ) でテストを実行できますが、VS2013 では実行できません。
バージョン: ApprovalTests.dll: 3.0.0.0 Visual studio: 2012 Professional、2013 Professional
ここで何か助けていただければ幸いです。ありがとう!
.net - CI サーバーで生成された PDF が承認テストに失敗する
私は ApprovalTests.NET を試して、MigraDoc でビルドされた PDF 生成コード (ほとんどがレガシー) をテストしています。テスト対象のコードは、PDF を MemoryStream にレンダリングします。その後、さまざまなメタデータ プロパティがスクラブされ (から適用したコードを使用PdfScrubber
)、バイト配列に変換され、 を使用して検証されますApprovals.VerifyBinaryFile()
。
私のマシンと同僚のマシン (両方とも Windows 10 を実行) ではテストに合格しますが、TeamCity ビルド エージェント (Azure VM、Windows Server 2012 R2 を実行していると思います) では失敗します。受信ファイル (ビルド サーバーで生成) と承認済みファイル (私のマシンで生成) を比較すると、ファイルのメタデータ部分は同じですが、バイナリ部分は完全に異なり、一方のファイルはもう一方のファイルよりも約 1 kb 短くなっています。 .
不一致の原因は何ですか?OS関連の可能性はありますか?
編集
問題はフォントにあるようです (提案については PDFSharp Expert に感謝します)。よく調べてみると、異なる 2 つのバイナリ オブジェクトがあり、これらは明らかにヘッダーと本文のフォントを定義しています。1 つを削除してからもう 1 つを削除すると、ヘッダーと本文のテキストがそれぞれドットに変わります。
では、すべてのマシンがフォントに関して同じ出力を生成することを保証する方法はありますか? これまでのところ、私は試しました:
PdfFontEmbedding.None
のコンストラクターに渡しPdfDocumentRenderer
ます (以前は を使用していましたPdfFontEmbedding.Always
)次のようにプライベートフォントを設定します。
/li>
どちらの場合も、ローカル マシンで以前と同じ出力が得られます。
c# - xml と ApprovalTests を比較するときに属性の順序を無視する
Approvals.Verify xml を実行しようとしていますが、問題は属性の順序です。いくつかの要素では、私のコンピューターとジェンキンスでは順序が異なります。他の質問から、クラス内のプロパティの順序を変更することがわかりました。それはちょっとうまくいきました。属性の順序が変更されましたが、今ではジェンキンスの順序が私のコンピューターで使用されていたものになり、その逆も同様です。したがって、クラス内で変更されたプロパティの順序は役に立ちません。
ApprovalTests を使用して xml 属性の順序を無視する方法はありますか? または、xml シリアライゼーションで属性の正確な順序をどのように言うことができますか? それとも他のヒント?
appveyor - AppVeyor がアーティファクトを生成しない
AppVeyor が生成する承認ファイルのいくつかを調べて、AppVeyor でテストが失敗する理由についての洞察を得ようとしています。
.received
次のように、ファイルを収集するように AppVeyor を構成しようとしました。
また、次のようにすべてを収集してみました。
しかし、アーティファクトは収集されませんでした。