【问题标题】:Selenium Firefox Pop-up blocker leads to fail the test case executionSelenium Firefox 弹出窗口阻止程序导致测试用例执行失败
【发布时间】:2016-05-17 22:47:21
【问题描述】:

我们使用 selenium 和 firefox webdriver 来自动化我们所有的测试用例。

我正在自动化 SDL Tridion 手动活动,例如创建组件、创建页面、Tridion 开箱即用搜索等。 ...

当我运行页面创建测试用例的测试用例时,Firefox 的弹出窗口阻止程序最终阻止了应该打开的窗口。这会导致测试用例失败, 但对于其他测试用例,它工作正常(仅供参考:我在本地运行它)

在这个 selenium 项目的顶部,我们构建了一个 asp.net Web 应用程序,并且该应用程序已在 IIS 中成功配置。当我通过点击服务器 URL 运行该项目时,所有测试用例都已成功执行。(注意:没有 Firefox 弹出窗口阻止程序问题)
但是由于 Firefox,我们无法从本地执行 selenium 项目驱动程序弹出窗口阻止程序问题。

我尝试了几件事,但没有成功,这里提到了这些
1。给定 Firefox 设置中的站点 URL(选项->内容->添加例外->站点 URL)
2.在 Firefox 配置文件中设置首选项,如下所示

[TestFixtureSetUp]
        public void Init()
        {
            try
            {
                //driver = new FirefoxDriver();
                //FirefoxBinary fb = new FirefoxBinary(@ConfigurationManager.AppSettings["FirefoxBinaryLocation"]);
                FirefoxBinary fb = new FirefoxBinary(@ConfigurationManager.AppSettings["FirefoxBinaryLocation"]);
                FirefoxProfile fp = new FirefoxProfile();
                fp.SetPreference("browser.startup.homepage_override.mstone", "ignore");

                driver = new FirefoxDriver(fb, fp);
            }
            catch (System.Exception ex)
            {
                logger.WriteError("Exception in instantiating Firefox driver : " + ex.Message);                
            }
        }

Firefox 版本:- 38.5.2 Webdriver 版本:- 2.48.0.0

任何帮助将不胜感激..谢谢...

【问题讨论】:

    标签: asp.net firefox selenium c#-4.0 tridion-2011


    【解决方案1】:


    我为我的帖子找到了解决方案。实际上我使用的是element.sendKeys(Enter),实际上在Firefox中单击按钮时这不会起作用。所以我把它改成了 JavaScript Executor,我添加了下面的代码,它工作正常

    IwebElement element = driver.findelement(By.Id("Id name goes here"))
    IJavaScriptExecutor executor = (IJavaScriptExecutor)driver;
    executor.ExecuteScript("arguments[0].click();",element);
    

    希望这对其他人有帮助。

    【讨论】:

      【解决方案2】:

      在 Firefox 中使用键“dom.disable_open_during_load”处理弹出窗口。您可以将此键值设置为 false,这将允许弹出窗口。该键值可以设置为所需的功能。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2014-01-08
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2020-06-04
        • 2023-04-03
        • 2011-12-06
        • 1970-01-01
        相关资源
        最近更新 更多