如果警报是present webdriver的截图不起作用。如何处理使用C#.NET? [英] WebDriver Screenshots don't work if an alert is present. how to handle using c#.net?

查看:306
本文介绍了如果警报是present webdriver的截图不起作用。如何处理使用C#.NET?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我使用ASP.net,C#.NET Intranet应用。硒的webdriver来测试应用程序。一个页面中输入相同的名字就显示警告信息已经存在(用ajax服务器端警报),我要捕捉screenshort的警报消息。

I am using ASP.net, C#.net Intranet application. Selenium Webdriver to test application. one page enter same name it showing alert message "Already Exists" (server side alert using ajax) , I want to capture that alert message with screenshort.

**Selenium webdriver version: 2.35.0.0
dotnet frame work: 4.0**

我写code像波纹管:

i am writing code like bellow :

private static void SaveScreenShot(string screenshotFirstName)
        {
            var folderLocation = Environment.CurrentDirectory.Replace("\\Out", "") + "\\ScreenShot\\";
            if (!Directory.Exists(folderLocation))
            {
                Directory.CreateDirectory(folderLocation);
            }
            var screenshot = ((ITakesScreenshot)WebDriver).GetScreenshot();
            var filename = new StringBuilder(folderLocation);
            filename.Append(screenshotFirstName);
            filename.Append(DateTime.Now.ToString("dd-mm-yyyy HH_mm_ss"));
            filename.Append(".png");
            screenshot.SaveAsFile(filename.ToString(), System.Drawing.Imaging.ImageFormat.Png);

        }

但它显示像

"unexpected alert open
  (Session info: chrome=31.0.1650.57)
  (Driver info: chromedriver=2.3,platform=Windows NT 6.1 x86)"

请帮助我。它没有警报消息正常工作。

please help me . it working fine without alert message.

推荐答案

试过获得的webdriver忽略警报?

Have tried getting WebDriver to ignore the Alert?

这是可以做到通过以下方式:

This can be done the following way:

    var options = new InternetExplorerOptions();
    options.UnexpectedAlertBehavior = OpenQA.Selenium.IE.InternetExplorerUnexpectedAlertBehavior.Ignore;

然后你开始的webdriver是这样的:

You then start WebDriver like this:

driver = new InternetExplorerDriver(options);

这是我会怎么做它的IE浏览器。我没有测试Chrome,但我可以想象有针对Chrome类似的方法。

This is how I would do it for IE. I'm not testing Chrome but I should imagine there is a similar method for Chrome.

这篇关于如果警报是present webdriver的截图不起作用。如何处理使用C#.NET?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆