Meiryo’s blog

やってみて詰まったことを備忘録として残すブログ

【C#】xUnitを試そうとしたらBadImageFormatExceptionが出たので対処した

タイトルの通りですがxUnitを試したら
なんかエラー出ました。

f:id:meimaru:20210418095528p:plain

起きたことの詳細はよくわかりませんが
対処をしてxUnitが動かせるようには
なったので備忘録として
残しておきます。

原因

よくわからないのでググってみると
解決法が載ってそうな所を発見

プラットフォームターゲットというものが
あってないから起きているらしい。

テストしたいプロジェクトの
csprojファイルを見てみると
プラットフォームターゲットは32bitが指定されている。
f:id:meimaru:20210418100409p:plain

xUnitのプロジェクトを見てみると
プラットフォームターゲットが何も指定されていない
ことがわかった。
f:id:meimaru:20210418101001p:plain

対処

xUnitのプロジェクトのプロパティを開き
ビルドタブを選択
対象プラットフォームを32bitにしてやる
f:id:meimaru:20210418101203p:plain

変更後、再びcsprojファイルを開くと
プラットフォームターゲットが
指定されていることが確認できた。
f:id:meimaru:20210418101450p:plain

この後テストを実行した所
エラーは発生せず動きました。