0

次のようなコードがあります。

[CodedUITest]
public class CodedUITest1
{

[TestMethod]
public void CodedUITestMethod1( )
{
  using(var dlg = new MyWinForm( ))
  {
    dlg.Show();
    System.Threading.Thread.Sleep(2000);
    this.UIMap.AssertMethod1( );
    this.UIMap.RecordedMethod1( );
    this.UIMap.AssertMethod2( );
   }

  }
}

コントロールを直接作成するために using 句を使用せずに (テストを呼び出す前に) アプリを手動で起動したとき、コードは正常に実行されていました。

実行可能ファイルへのパスを特定して開くことに頼るのではなく、参照を使用してコントロールのインスタンスを作成し、そこから移動したいと思います。アプリがContextSwitchDeadlock.

プロセスを起動せずにコード化された Ui テストを行う方法はありますか? (リファレンスを使用してテスト コードでコントロールを作成する) または、私がやろうとしている方法に何か問題がありますか?

4

1 に答える 1

0

別のスレッドでコード化された ui テスト部分 (this.UIMap...) を呼び出すと、可能になる場合があります。しかし、現在の方法では、両方が同じスレッド上にあるため、デッドロックが発生します。

于 2010-12-09T16:26:08.663 に答える