Visual studio 编码用户界面-如何在鼠标单击事件后捕获图像

Visual studio 编码用户界面-如何在鼠标单击事件后捕获图像,visual-studio,coded-ui-tests,Visual Studio,Coded Ui Tests,在编码UI的录制会话中,每次鼠标单击后捕获图像的最佳选项是什么 例如,在UIMap.Designer.Cs文件中,我输入了图像捕获行: Mouse.Click(uIOutagesandSafetyHyperlink, new Point(62, 2)); Image MSOPic1 = UITestControl.Desktop.CaptureImage(); MSOPic1.Save(@"C:\Automation\TestAutomation\web\Recordings\FullSite1

在编码UI的录制会话中,每次鼠标单击后捕获图像的最佳选项是什么

例如,在UIMap.Designer.Cs文件中,我输入了图像捕获行:

Mouse.Click(uIOutagesandSafetyHyperlink, new Point(62, 2));
Image MSOPic1 = UITestControl.Desktop.CaptureImage();
MSOPic1.Save(@"C:\Automation\TestAutomation\web\Recordings\FullSite1\Screenshots\MSO\HomePage_" + DateTime.Now.ToString("ddMMyyyyHHmmss") + ".png");
上面的代码获取了一个屏幕截图,但它没有获取当前浏览器的屏幕截图,只是捕获了当前浏览器窗口不存在的另一个屏幕。如何捕获正在进行测试的活动浏览器的屏幕截图


还有一个问题:VisualStudio是否提供了在回放期间捕获图像的替代方法?类似于通过配置?

UITestControl类有一个
CaptureImage
方法。要获取当前浏览器的图像,请找到其
UITestControl
对象(可能从该对象派生)并调用其
CaptureImage
方法


请不要编辑
uimap.designer.cs
文件,因为它是自动生成的文件,您的编辑可能会丢失。请参阅。

UITestControl类有一个
CaptureImage
方法。要获取当前浏览器的图像,请找到其
UITestControl
对象(可能从该对象派生)并调用其
CaptureImage
方法

请不要编辑
uimap.designer.cs
文件,因为它是自动生成的文件,您的编辑可能会丢失。看

还有一个问题:VisualStudio是否提供了在回放期间捕获图像的替代方法?比如通过配置

默认情况下,编码的ui测试应该对它执行的每个操作进行截屏。 您可以在测试的html输出中找到这些屏幕截图

见:

如果在任何情况下未为测试启用,则必须设置:
Playback.PlaybackSettings.LoggerOverrideState=htmloggerstate.AllActionSnapshot

如果希望在所有测试和所有操作中使用此设置,请在要应用此设置的每个测试的[TestInitialize()]方法中调用它

像这样:

    [TestInitialize()]
    public void MyTestInitialize()
    {
        Playback.PlaybackSettings.LoggerOverrideState = HtmlLoggerState.AllActionSnapshot;
    }
还有一个问题:VisualStudio是否提供了在回放期间捕获图像的替代方法?比如通过配置

默认情况下,编码的ui测试应该对它执行的每个操作进行截屏。 您可以在测试的html输出中找到这些屏幕截图

见:

如果在任何情况下未为测试启用,则必须设置:
Playback.PlaybackSettings.LoggerOverrideState=htmloggerstate.AllActionSnapshot

如果希望在所有测试和所有操作中使用此设置,请在要应用此设置的每个测试的[TestInitialize()]方法中调用它

像这样:

    [TestInitialize()]
    public void MyTestInitialize()
    {
        Playback.PlaybackSettings.LoggerOverrideState = HtmlLoggerState.AllActionSnapshot;
    }

谢谢你。将您在TestInitialize方法中提到的代码放置起来是有效的。谢谢,谢谢。将您在TestInitialize方法中提到的代码放置起来是有效的。谢谢你,谢谢阿德里安指出这一点。我将进一步研究您提到的链接。谢谢。你好,阿德里安,我已经更新了我的代码,并使用UIMap.cs而不是你推荐的UIMap.Designer.cs文件。谢谢你,谢谢阿德里安指出这一点。我将进一步研究您提到的链接。谢谢。你好,阿德里安,我已经更新了我的代码,并使用UIMap.cs而不是你推荐的UIMap.Designer.cs文件。谢谢你。