您可以调用控件而不是为编码的ui测试启动应用程序吗?

时间:2010-12-08 20:40:09

标签: mstest coded-ui-tests

我的代码如下:

[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测试? (使用引用并在测试代码中创建控件)或者我尝试这样做的方式有问题吗?

1 个答案:

答案 0 :(得分:0)

如果您在单独的线程上调用编码的ui测试部分(this.UIMap ...),则可能。但是你现在的方式,它们都在同一个线程上,所以你会陷入僵局。