問題タブ [mbunit]
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# - mbunit v2 と v3 の xml レポート ファイル
現在、テスト ソース ツリーには、mbunit v2 テストまたは v3 テスト (最新のプロジェクト) を含む c# プロジェクトが含まれています。以前の v2 テスト プロジェクトは、「オートランナー」を使用して XML レポートを生成する exe でした。新しいプロジェクトは、オートランナーを持たない Gallio を使用しているため、gallio.echo.exe を使用して、特定のテスト アセンブリに適切な xml ファイルを生成します。
問題は、XML レポート ファイルを調べて特定の顧客の要件が満たされているかどうかを判断する社内ツールを開発したことです。これは mbunit v2 用に書かれています。echo によって生成される xml ファイルが異なるようです。
だから...v2レポートのように見えるxmlレポートを生成するためにechoを取得する方法はありますか? 内部ツールの書き直しを避ける必要があります (今のところ)...v2 で使用されていたような xml ファイルを生成するために echo を取得する方法はありますか?
unit-testing - 単一のテストのみが選択されている場合にすべてのテストを実行する Resharper
私は Visual Studio 2008 と MBUnit のテストで Resharper 4.5 を使用していますが、ReSharpher を使用してテストを実行すると何かおかしいようです。
横には、各テスト メソッドのクラスの横にアイコンがあり、実行とデバッグのオプションがあります。[実行] を選択すると、単一のテストの結果が表示されます。ただし、テストの実行にかなり時間がかかっていることに気付きました。
Sql Server プロファイラーを実行してコードのステップ実行を開始すると、選択したテストだけでなく、クラス内のすべてのテストが実行されていることに気付きました。実際にすべての単体テストを実行しているときに、1 つの単体テストのみを実行しているように見える理由はありますか?
1 つの結果のみを気にする場合、すべての統合テストが実行されるのを待つのが苦痛になります。これを変更する方法はありますか?
unit-testing - MbUnit のように、mstest で工場テストを行うことは可能ですか?
弊社では単体テストにmstestを使用しています。主な理由は、MbUnit 用の無料の Visual Studio 統合がないことです (TestDriven.NET は企業にとって無料ではありません)。
最近、同じインターフェースの 2 つの異なる実装で同じ単体テストを実行する必要があることに気付きました。過去の経験から、MbUnit を使用すると簡単に実行できることがわかっています。しかし、MSTest でそれを行う方法は?
インターフェイスごとに個別の結果が必要であるという点を強調します。そのため、同じ単体テスト メソッドから同じメソッドを 2 回 (インターフェイスごとに 1 回) 実行するようなものは提供しないでください。
私はデータ駆動型ソリューションを認識しており、現在それを使用していますが、それは面倒です。もっと簡単な方法、MbUnit の方法はありますか?
ありがとう。
mbunit - MbUnit v3 の UsingFactory 代替
MbUnit v3 で組み合わせテストを作成する方法を理解しようとしています。Web 上のサンプル コードはすべて MbUnit v2 を参照しており、これは 3 つの属性を使用することを意味します。
- コンビナトリアルテスト
- 工場
- ファクトリの使用
MbUnit v3 には UsingFactories 属性がありません (また、Factory 属性のセマンティクスは大きく異なり、CombinatorialTest 属性は不要になりました)。では、どのファクトリ メソッドが特定の単体テスト メソッドのどのパラメーターにバインドされているかをどのように判断すればよいでしょうか?
ありがとう。
mstest - MSTestでMbUnitの[MultipleCulture]属性をエミュレートするにはどうすればよいですか?
MbUnitには、MultipleCultureAttributeという優れた属性があります。
MSTestでこれを行う簡単な方法があるかどうか疑問に思っていますか?これまでのところ、私が思いつくことができる最高のものは次のとおりです。
- 実際のテストコードをプライベートメソッドに外部化する
- 現在の文化を保存する
- カルチャの設定とプライベートメソッドの呼び出し(カルチャごとに繰り返されます)
- そして最後に、元の文化に戻ります
せいぜい、それは醜い...そして冗長であると説明することができます。
mbunit - mbUnitで条件付きでテストを無視するにはどうすればよいですか?
TeamCityを使用して、テストと本番の自動ビルドを実行しています。TeamCityは、Gallioを使用したプロセスの最後に、mbUnit3.1テストを実行します。
テストビルドを実行するとき、Gallioはテストデータベースサーバーに対してテストを実行しようとする必要があります。ただし、本番ビルドを実行する場合、TeamCityは本番データベースサーバーにアクセスできないため、これらのテストは実行しないでください(本番データベースが利用可能であっても、多くのテストはリリースされていないコードで失敗します)。
IsDBOnlineなどのブール値に基づいてmbUnitで無視されるように、テストにマークを付けるにはどうすればよいですか?
mbunit - NCover、Mbunit、コマンドライン プロファイラ接続が接続できない?
Mbunit 2.4.2.130 で NCover 1.5.8 を使用しようとしています。次の例は、bat ファイルから使用しています。これを実行しようとするたびに、NCOVER プロセスに接続できないと表示されますか?
SET NCOVERPATH=C:\Code\rsinetmvc\branches\web_app\trunk\build_tools\ncover\ REM アセンブリ出力およびレポート出力のターゲット パス。SET TARGETPATH=C:\Code\rsinetmvc\branches\web_app\trunk\product\RSINET.MVC.Tests\bin\debug\ SET MBUNITPATH=C:\Code\rsinetmvc\branches\web_app\trunk\thirdparty\mbunit\
echo %NCOVERPATH% echo %TARGETPATH% echo %MBUNITPATH% echo %REPORTFILEPATH% echo %MBUNITPATH%mbunit.cons.exe echo %TARGETPATH%RSINET.MVC.Tests.dll
"%NCOVERPATH%ncover.console.exe" //w %TARGETPATH% //a RSINET.MVC.Tests //h %REPORTFILEPATH% "%MBUNITPATH%mbunit.cons.exe" "%TARGETPATH%RSINET.MVC.Tests. dll"
.net - Visual Studio .NET - Gallio Integration を使用した MbUnit テスト - 複数のアサートの問題
ビジュアル スタジオで mbunit のテスト ランナーを mstest テスト ランナーと統合するために、gallio を使用しています。複数の assert ステートメントを使用してテストを実行している場合を除いて、非常にうまく機能します。テストは、FIRST assert ステートメントに基づいて合格または不合格になります。多くの人が複数のアサートに反対していることは知っていますが、複数行の入力を受け取る行テストや組み合わせテストなどの場合は避けられません。Gallio の icarus GUI から実行すると、すべてのテストが正常に実行されます。他の誰かがこの問題に遭遇/修正しましたか?
編集:これはコードサンプルです
(明らかにC#でも同じ結果が得られます)
Visual Studio を実行すると、テストに合格し、次のようになります。
MyRowTest(3,3) 期間: 0.016 秒、
アサーション: 2
c# - MbUnit: 異なるオブジェクト インスタンスの比較
MBUnit の 2 つのオブジェクトを比較して、それらが異なるインスタンスであっても、オブジェクトが同じように「見える」場合にテストに合格する方法があるかどうかを知りたいですか?
例えば:
Assert.AreEqual() はこれに対して機能しません (テストは失敗します。上記のソース コードを参照してください)。「フォーマットすると両方の値が同じように見えますが、それらは異なるインスタンスです」と述べているため、独自のコードでオブジェクトを XML にシリアル化せずに、MbUnit に組み込む方法が必要であると考えています。
これには独自の Assert 拡張メソッドを作成する必要がありますか?