每次在我的 TFS 服务器上运行构建时,我都使用 Visual Studio 的编码 UI 测试在 WPF 应用程序上运行自动化 UI 测试。我遇到的问题是根据刚刚构建的路径动态启动可执行文件,包括配置(x86,x64)。
有没有办法在引用的项目中获取可执行文件的路径,以便我可以从我的测试项目动态启动应用程序?
每次在我的 TFS 服务器上运行构建时,我都使用 Visual Studio 的编码 UI 测试在 WPF 应用程序上运行自动化 UI 测试。我遇到的问题是根据刚刚构建的路径动态启动可执行文件,包括配置(x86,x64)。
有没有办法在引用的项目中获取可执行文件的路径,以便我可以从我的测试项目动态启动应用程序?
测试:
在您[TestInitialize]
添加以下内容以启动您的应用程序:
_yourApp = ApplicationUnderTest.Launch(Path.Combine(Directory.GetCurrentDirectory(), "yourexecutablename.exe"));
在您[TestCleanup]
添加以下内容:
_yourApp.Close();
NUnit:(您需要参考和使用 Microsoft.VisualStudio.TestTools.UITesting)
在您[Setup]
添加以下内容以启动您的应用程序:
_yourApp = ApplicationUnderTest.Launch("yourexecutablename.exe"));
在您[Teardown]
添加以下内容:
_yourApp.Close();
注意:我还没有验证 NUnit 的实现
正如 Zian Choy 所写,使用 Adam 提供的步骤,被测应用程序不会被复制到 .../Out 目录。以下附加步骤对我有用:
我一直在努力弄清楚如何告诉我的 CodedUI 项目从哪里启动可执行文件以及如何“正确”地执行它,因此当不同的用户在不同的工作区中运行代码时,它会自动运行,在不同的主机等。我确实想出了将可执行文件复制到共享目录中(朝着正确的方向迈进),然后记录一个从那里启动它的动作(创可贴,所以它至少适用于同一主机上的不同用户)。
以下是您的 MSTest 说明中的步骤,适用于 MS Visual Studio 2015 Enterprise IDE。可悲的是,我没有足够的“声望点”来嵌入屏幕截图——
瞧!!!