[解決済み] すべてのテストが実行される前に、コードを一度実行することは可能ですか?
2022-08-18 16:50:23
質問
基本的には、一連のテスト実行を開始する前に、MSTest にちょっとしたコードを実行するように指示したいのですが、私がやりたいことは、基本的には、いくつかのコードを
Main()
.
なぜこのようなことをしたいかというと、統合テストの実行中にlog4netでロギングを行いたいからです。 私は、単に
log4net.Config.XmlConfigurator
アセンブリ属性を使用することはできません。なぜなら、私のテストアセンブリでそれを読み取る時点で、すでに
LoggerManager
. ドキュメントでは、コードのエントリポイントで明示的にlog4netを構成することを推奨していますが、私のテストのどこにそれがあるのでしょうか?
私はTestDriven.NETとMSTestランナーで私のテストを実行できるようにする必要があります。
どのように解決するのですか?
FWIWでは AssemblyInitialize 属性を使って、アセンブリ内のすべてのユニットテストが実行される前にコードを実行することができます。
[TestClass]
public class SetupAssemblyInitializer
{
[AssemblyInitialize]
public static void AssemblyInit(TestContext context)
{
// Initalization code goes here
}
}
ユニットテストのアセンブリが複数ある場合、複数のアセンブリを包含するようなものは意識していません。
私が知る限り、これはMainに相当するものに近いと思います。
注意点として
AssemblyInitialize
-で装飾されたメソッド
は
である
TestClass
-装飾されたクラスで、少なくとも一つの
TestMethod
-装飾されたメソッドを含むクラスで、そうでない場合は
ではなく
が実行されます!
関連
-
[解決済み] ファイル *.mdf をデータベースとして添付できません。
-
[解決済み] スマートクライアント・ソフトウェアファクトリーの体験談
-
[解決済み] リファレンスの追加にSystem.Web.Mvcが表示されないのはなぜですか?
-
[解決済み] データテーブルがすでに別のデータセットに属している
-
[解決済み] ASP.NET control to render a <div>
-
[解決済み] Windowsイベントログで参照される「フレームワークのバージョン」とは何ですか?
-
[解決済み] gacutil.exeはどこですか?
-
[解決済み] .NET Framework 4 マルチターゲティングパックがアンインストールできない
-
[解決済み] CryptographicException「キーセットが存在しない」、ただしWCF経由に限る
-
[解決済み] コードが含まれるアセンブリのパスを取得するにはどうすればよいですか?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] Marginのプロパティ順
-
[解決済み] .net 4.5アップグレード後、System.Web.Httpが見つからない
-
[解決済み] Html.BeginForm()にCSSクラスを追加する。
-
[解決済み] ファイルまたはアセンブリ 'System.Data.SQLite' をロードできませんでした。
-
[解決済み] 到達不能なホストに対してソケット操作を行おうとした
-
[解決済み] VB.NETでファイル名を一意のサフィックスに変更するには?
-
[解決済み] WinSCP 応答待ちタイムアウト
-
[解決済み] パッケージのダウングレード警告を検出(dotnet core, vs 2017)
-
[解決済み] RelativeSourceでWPFバインディングを使用するにはどうしたらいいですか?
-
[解決済み] LINQクエリでToList()とToArray()のどちらを呼び出すのが良いですか?