c# 编码 UI 项目。编码 UI 测试生成器不记录 WinForm 启动

c# coded UI project. Coded UI Test Builder doesn't record WinForm start

我有一个带有 WinForm 和编码 UI 测试项目的解决方案。 我想用编码 UI 测试来测试我的 WinForm 应用程序。

当我使用 UI 测试构建器记录我的操作时,它不会记录我的 WinForm 应用程序的启动!单击按钮等其他所有内容都会被记录下来。

所以当我 运行 我的测试失败时,因为测试找不到 WinForm(显然)...

但这是为什么呢? 我可以在测试方法中添加一些代码来启动Winform应用程序吗?

感谢帮助

如果您希望 Coded UI 在测试开始时启动您的表单应用程序,请使用方法

ApplicationUnderTest.Launch("FORMS_APP_PATH");

你可以在MSDN上查看精确的方法细节。

更新:

为了处理不断变化的路径,我创建了一个新的 Forms 解决方案并将其命名为 LabPlus。 然后我向其中添加了一个 CodedUI 测试项目。 在测试项目中,我添加了 LabPlus 程序集的引用。 之后,我在我的 CUI 测试方法中写了以下行:

ApplicationUnderTest.Launch(System.Reflection.Assembly.GetAssembly(typeof(LabPlus.Form1)).Location);

我希望这能回答你的问题:)

我的修复:

  1. 将测试项目的引用添加到 WinForm 项目
  2. [DeploymentItem('your-app.exe')] 属性修饰测试 class
  3. 在测试方法中添加ApplicationUnderTest.Launch("your-app.exe");