运行 来自另一个应用程序的 CodedUI 测试
Running CodedUI Test From Another Application
我打算 运行 我的编码 UI 测试来自另一个项目(在同一解决方案中)。我将 CUIT 项目的引用添加到我的 winform 应用程序项目中。我也添加了这些引用
Microsoft.VisualStudio.TestTools.UITesting.dll
Microsoft.VisualStudio.QualityTools.CodedUITestFramework.dll
Microsoft.VisualStudio.TestTools.UITest.CodeGeneration.dll
Microsoft.VisualStudio.TestTools.UITest.Framework.dll
Microsoft.VisualStudio.TestTools.UITest.Playback.dll
我的代码是这样的
Playback.Initialize();
TestProject.CodedUITest1 coded = new TestProject.CodedUITest1();
coded.CodedUITestMethod1();
Playback.Cleanup();
但是,我在 Playback.Initialize()
调用中遇到异常。
这是消息...
"An unhandled exception of type 'Microsoft.VisualStudio.TestTools.UITest.Extension.PlaybackFailureException' occurred in Microsoft.VisualStudio.TestTools.UITesting.dll"
有人说安装Test agent 2010/Test agent10可以解决这个错误。
我安装了 MS Visual studio Test Agent 2010,但出现同样的错误。
我在这里做错了什么?
谢谢
我尝试 运行 以与您相同的方式进行测试,它对我有效。
下面是我在项目中添加的参考dll
请确保您已经添加了所有的dll。如果您找不到 dll,请在 C:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\IDE\PrivateAssemblies.
中查找它们
如果这不起作用,请提供内部异常的详细信息。
我找到了问题的答案。我发现内部异常的消息是
"Retrieving the COM class factory for component with CLSID {27876903-E697-4406-BF49-1B8B92CB8735} failed due to the following error: 80040154 Class not registered (Exception from HRESULT: 0x80040154 (REGDB_E_CLASSNOTREG))."
在四处挖掘后,我发现我有一个 32 位第三方 dll,我在我的 64 位机器上 运行。冲突是 64 位进程试图在 64 位机器中调用 32 位进程。
解决方案 是将项目属性更改为目标 'X86' 机器而不是 'Any'。
我打算 运行 我的编码 UI 测试来自另一个项目(在同一解决方案中)。我将 CUIT 项目的引用添加到我的 winform 应用程序项目中。我也添加了这些引用
Microsoft.VisualStudio.TestTools.UITesting.dll
Microsoft.VisualStudio.QualityTools.CodedUITestFramework.dll
Microsoft.VisualStudio.TestTools.UITest.CodeGeneration.dll
Microsoft.VisualStudio.TestTools.UITest.Framework.dll
Microsoft.VisualStudio.TestTools.UITest.Playback.dll
我的代码是这样的
Playback.Initialize();
TestProject.CodedUITest1 coded = new TestProject.CodedUITest1();
coded.CodedUITestMethod1();
Playback.Cleanup();
但是,我在 Playback.Initialize()
调用中遇到异常。
这是消息...
"An unhandled exception of type 'Microsoft.VisualStudio.TestTools.UITest.Extension.PlaybackFailureException' occurred in Microsoft.VisualStudio.TestTools.UITesting.dll"
有人说安装Test agent 2010/Test agent10可以解决这个错误。 我安装了 MS Visual studio Test Agent 2010,但出现同样的错误。
我在这里做错了什么? 谢谢
我尝试 运行 以与您相同的方式进行测试,它对我有效。
下面是我在项目中添加的参考dll
请确保您已经添加了所有的dll。如果您找不到 dll,请在 C:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\IDE\PrivateAssemblies.
中查找它们如果这不起作用,请提供内部异常的详细信息。
我找到了问题的答案。我发现内部异常的消息是
"Retrieving the COM class factory for component with CLSID {27876903-E697-4406-BF49-1B8B92CB8735} failed due to the following error: 80040154 Class not registered (Exception from HRESULT: 0x80040154 (REGDB_E_CLASSNOTREG))."
在四处挖掘后,我发现我有一个 32 位第三方 dll,我在我的 64 位机器上 运行。冲突是 64 位进程试图在 64 位机器中调用 32 位进程。
解决方案 是将项目属性更改为目标 'X86' 机器而不是 'Any'。