C# 播放时从控制台项目进行编码的UI播放。Initialize()函数引发System.TypeInitialization异常
我是新的编码用户界面项目。我记录了与计算器应用程序交互的简单步骤。在测试资源管理器中运行测试时工作正常,而在另一个控制台项目中运行测试时抛出错误。我从一条问题线索上读到C# 播放时从控制台项目进行编码的UI播放。Initialize()函数引发System.TypeInitialization异常,c#,coded-ui-tests,C#,Coded Ui Tests,我是新的编码用户界面项目。我记录了与计算器应用程序交互的简单步骤。在测试资源管理器中运行测试时工作正常,而在另一个控制台项目中运行测试时抛出错误。我从一条问题线索上读到 Playback.Initialize(); //Call Coded UI test Method Playback.Cleanup(); 以上是从其他项目类型(即控制台或窗口)调用任何编码ui测试方法的格式。我还包括了下面的dll引用 Microsoft.VisualStudio.QualityTools.UnitTes
Playback.Initialize();
//Call Coded UI test Method
Playback.Cleanup();
以上是从其他项目类型(即控制台或窗口)调用任何编码ui测试方法的格式。我还包括了下面的dll引用
Microsoft.VisualStudio.QualityTools.UnitTestFramework
Microsoft.VisualStudio.TestTools.UITest.Common
Microsoft.VisualStudio.TestTools.UITest.Extension
Microsoft.VisualStudio.TestTools.UITest.Extension.IE
Microsoft.VisualStudio.TestTools.UITest.Framework
Microsoft.VisualStudio.TestTools.UITest.Logging
Microsoft.VisualStudio.TestTools.UITest.Playback
Microsoft.VisualStudio.TestTools.UITest.UITesting
执行Playback.Initialize()
方法时,我得到Type.Initialization.Exception
。
我正在使用Visual Studio 2013
以下是完整的异常信息
An unhandled exception of type 'System.TypeInitializationException' occurred in Microsoft.VisualStudio.TestTools.UITesting.dll
Additional information: The type initializer for 'Microsoft.VisualStudio.TestTools.UITest.Extension.UITestUtilities' threw an exception.
{"The type initializer for 'Microsoft.VisualStudio.TestTools.UITest.Extension.UITestUtilities' threw an exception."}
编码的UI脚本无法通过控制台项目驱动/执行。 您应该仅从单元测试或编码UI测试项目运行CodedUI脚本或项目 您应该从单元测试项目或编码UI测试项目运行编码UI脚本(项目)。 如果您使用的是单元测试项目,那么您需要添加以下引用-
- Microsoft.VisualStudio.QualityTools.CodedUITestFramework
- Microsoft.VisualStudio.QualityTools.UnitTestFramework
- Microsoft.VisualStudio.QualityTools.UItest.Common
- Microsoft.VisualStudio.QualityTools.UITest.Extension
此外,只有CodedUi库知道特定于CodedUi的测试属性。因此,您必须选择任何测试框架,但添加上述引用以执行CodedUI脚本。我在Visual Studio 2015中遇到了同样的问题。 内部参考称找不到Microsoft.VisualStudio.TestTools.UITest.WindowsStoreUtility
添加它至少可以修复此异常。整个异常消息是什么,到目前为止您尝试查找故障的原因是什么,您发现了什么?@Rasool Mohammed,请解释您试图通过从控制台项目运行测试来实现什么?Hello@Adrianhh我用完整的异常信息更新了我的问题。如果您需要更多信息,请共享您的邮件ID,以便我可以将我的解决方案工作区发送给您。Hello@ArunM在我们的组织中,我们在C#的帮助下建立了一个内部自动化框架。我需要使用编码的UI编写自动化测试用例,并且必须从另一个控制台或类库项目调用测试用例执行。这是我的需要。如果你需要任何其他信息,请告诉我。这个答案不正确,值得纠正。这是完全可能的,而且实际上并不是一个最佳实践答案。测试管理器访问.NET和您自己的控制台/应用程序之间的唯一区别是一个是由Microsoft创建的,另一个不是。:)。。。作为一名前.NET产品经理,请相信我的话。