問題タブ [pex]

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.

0 投票する
1 に答える
193 参照

pex - パス条件を単純化する方法はありますか

たとえば、以下のコードでは、パス条件はになりますx>0 && x+1>0。しかし、をx>0意味するのでx+1>0、z3またはpex APIで、x>0両方ではなく、のみを取得する方法はありますか。

ありがとう

0 投票する
0 に答える
353 参照

crash - チーム ビルド中の Pex エラー (TFS 2010 ビルド)

TFS2010との統合にはpexとmoleを使用しています。最近、テスト実行中に pex とモグラがランダムにクラッシュし始めました。開発者のマシンでこのエラーを再現できませんでした。クラッシュはチーム ビルド サーバーでのみ発生します。バージョン en_visual_studio_2010_pex_0.94.51006.1_power_tools_x86_exe_593303 を使用しています

ビルドログからのエラーは次のとおりです。

ビルド サーバーからのイベント ログは次のとおりです。

1)

2)

0 投票する
0 に答える
143 参照

compact-framework - Microsoft Moles は .NET Compact Framework をサポートしていますか?

現在、.NET Compact Framework 2.0 を使用する WinCE ベースのアプリケーションの単体テストに取り組んでいます。

Moles Framework は .NET Compact Framework 2.0 をサポートしていますか? そうでない場合は、誰かが .NET Compact Framework をサポートする別のモック フレームワークを提案できますか?

0 投票する
1 に答える
714 参照

tfs - TFS ビルドの Visual Studio 2010 リモート テスト エージェントで Microsoft Moles ホストを使用して単体テストを実行する

TFS の自動化された CI ビルドおよびテスト プロセスでリモート テスト エージェントを使用して、ビルド エージェントとは別にテストを実行したいと考えています。モルまたはモル ホストを使用しない通常の単体テストでは、問題はありません。ただし、モル ホストを .testsettings に含めるか、モル ホスト テストを (HostType("Moles") 属性を介して) 持つと、テスト エージェントは、ビルド エージェントが使用する moled .dll へのパスを取得しようとするようです。 . これは、ビルド エージェントがテスト エージェントにフル パスを渡し、テスト エージェントがそれを使用するようなものです。「このアクションを実行するための適切なアクセス許可がありません」(実際には各サービスが管理者権限で実行されている場合) または不可解な「MSTest が返されたコード 1 予期される 0」というメッセージが表示され、ログ情報はありません。

グループに対する私の質問:

  1. MSTest、Moles、TFS Build、および Visual Studio 2010 Test Controller/Test Agent (Test Lab セットアップの一部ではない) を動作させた人はいますか?
  2. 動作するようになった場合、設定はどうなっていますか?
0 投票する
1 に答える
206 参照

c# - pex の制限に関する質問

私はいくつかの c# コードでテストを実行していますが、pex は Math.Acos を含むステートメントをカバーしていませんでした (これは大きな switch ステートメントの一部です)。なぜpexにこの制限があるのか​​ 誰かが知っているかどうか知りたいですか? オンラインで調べましたが、何も見つかりませんでした。

0 投票する
1 に答える
494 参照

moles - Pex & Moles - 依存性注入

私はPexとMolesが初めてです。コードで Pex を実行しようとしていますが、コンストラクター インジェクションを使用しています。コンストラクターを注入する方法を Pex に指示する方法はありますか?

編集

スタブ userRepository を挿入する必要があります。_userRepository.GetById(id) が呼び出されると、Pex が NullReferenceException で失敗します。単体テストにMoqを使用していますが、pexとmolesに切り替えたいです

スタブの作成に PexFactories を使用する必要がありますか?

0 投票する
3 に答える
715 参照

c# - Pex およびコード コントラクト

以下は、Pex ドキュメント pexandcontracts.pdf http://research.microsoft.com/en-us/projects/pex/pexandcontracts.pdfのコード サンプルです。これはpex固有の質問ではなく、コード契約に関連していることを認識していますが、pexチュートリアルのコードです。

静的ベリファイアは、次の警告を提供します。

CodeContracts: ポイント (1) とポイント (2) で unproven: !Contract.Result().EndsWith(suffix) を保証します。

私の質問は、これをどのように解決するのでしょうか? ペックスの調査によると、契約が違反される可能性はありません。(... ある?)

0 投票する
1 に答える
97 参照

pex - PEX によって生成されたテスト ケースを強化する方法は?

これが私の Q: 3 つの短いリストを長いリストに連結する方法をテストする必要があります。そして、私は(pex)短いリストのいずれもnullではないと仮定しました(文は以下にリストされています)。

しかし、テストは次のように実行されました: pex によって生成されたテスト ケースはすべてゼロのリストです。これは例です: 最初の {0,0} {0} {0}

秒 {0} {0,0} {0}

3 番目の {0,0} {0} {0,0}

結果 {0,0,0,0,0} {0,0,0,0} {0,0,0,0}

そして、ここに私の質問があります: PEX によって生成されたテスト ケースを充実させるための仮定を設定して、0 がそれほど多くならないようにする方法を教えてください。

ありがとう!

0 投票する
0 に答える
1587 参照

.net-4.0 - Visual Studio 2010 SP1 で Microsoft.Moles.Framework.dll を参照できません

実際、私はすでにこの問題を解決しましたが、この問題の解決方法にはまだ満足していません。

VS2010 SP1 を使用していますが、Azure SDK を使用するには SP1 が必要です。

まず、Pex と Moles をインストールすると、System.XML.dll で何らかの問題が発生しました。すべてのプロジェクトの参照から消えました。明示的に見つけて、それを使用するすべてのソリューションに接続する必要がありました。

また、モグラ自体にも大きな問題がありました。TestProjects は Microsoft.Moles.Framework.dll を見つけることができませんでした。そして、あらゆる種類のエラーが発生しました。

[参照の追加] ダイアログで Microsoft.Moles.Framework への参照を追加しようとすると、次のメッセージが表示されました。

解決策は、C:\Program Files\Microsoft Moles\PublicAssembliesSilverlight に Microsoft.Moles.Framework.dll への参照を明示的に追加することでした。その後、これまでのところすべて正常に動作しています。

この情報が誰かの役に立てば幸いです。

0 投票する
2 に答える
543 参照

c# - Pex およびコード コントラクトを使用した単体テスト

私は次の方法を持っています:

パラメーター化された単体テストを作成し、Pex を使用して単体テストを作成しました。予想どおり、Pex はコントラクトの制約をテストし、コントラクトに違反する qtrs 値を渡しました。[ExpectedException(typeof(TraceAssertionException))] で例外を予期するように単体テストに指示し、すべてが合格しました。

MS テスト ハーネス (Pex なし) を使用して単体テストを実行すると、次のエラーが表示されます。

基本的に、contracthelper が失敗したことを示すスタック トレースが表示されます。次に、中止、再試行、無視のいずれかを選択できます。

いずれにせよ、テストは失敗し、次のようになります。例外メッセージ: System.ArgumentOutOfRangeException: 月の値は +/-120000 の間である必要があります。...

単体テストでコード コントラクト エラーが認識されなくなったのはなぜですか?