当前位置: 首页 > 面试题库 >

量角器+镀铬驱动器:元素不可点击

吕高昂
2023-03-14
问题内容

嗨,我在让基本量角器测试正常工作时遇到了一些麻烦。

我的设置:

  • 我使用requirejs,所以我使用angular.bootstrap()而不是ng-app attr来初始化angular。根据量角器文档,此功能不被立即使​​用,但对于不涉及单击的测试似乎效果很好。
  • 量角器conf.json:
        "use strict";
    exports.config = {
        specs: '../E2ETests/**/*.js',
        chromeOnly: true,
        getPageTimeout: 30000,
        allScriptsTimeout: 30000
    }
  • 我使用一些包装在指令中的第三方jquery插件,我怀疑这些可能是问题的一部分。

考试:

    "use strict";
    describe('When clicking should add stuff', function () {
        var ptor;
        beforeEach(function () {
            browser.get('https://localhost/myApp');
            ptor = protractor.getInstance();
        });
        it('add stuff', function () {
            // If I comment this, the test pass. 
            element(by.id('add-stuff-button')).click();
            // This does not matter fails on the line above..
            expect(browser.getTitle()).toBeDefined();
        });
    });

错误:

UnknownError: unknown error: Element is not clickable at point (720, 881). Other element would         receive the click: <div class="col-md-5 col-md-offset-5">...</div>
(Session info: chrome=37.0.2062.124)
(Driver info: chromedriver=2.10.267521,platform=Windows NT 6.1 SP1 x86_64)

思想

chromedriver确实找到了按钮,因为如果更改ID,它将抱怨找不到元素。所以我认为问题在于按钮从其初始位置移动。由于element(***)函数应等待angular完成,因此我怀疑它的第三方插件可能会干扰,因为它们可能不使用angularapi的获取数据等。因此,angular认为已完成,但随后是第三方插件填充并移动东西。

有什么想法怎么办?如果第三方插头出了问题,我可以以某种方式告诉角度第三方材料正在进行中,然后在完成时告诉它吗?

Thx Br Twd


问题答案:

您应该在配置文件中设置窗口大小

onPrepare: function() {
  browser.manage().window().setSize(1600, 1000);
}


 类似资料:
  • 问题内容: 因此,我阅读了有关将chromedriver添加到我的路径中的所有文档,并遵循了所有文档。我在装有selenium2,maven,eclipse和所有最新驱动程序的Mac上: 我将chromedriver放在我的Applications文件夹中,路径如下: 我想念什么?我根本无法使用chrome驱动程序运行。任何帮助都会很棒,我现在正在尝试随机的东西。 这是我关于selenium的po

  • 我正在尝试使用量角器登录谷歌帐户 google-account-spec.js conf.js 登录页面.js我正在使用页面对象模式(登录页面是页面对象) 当我尝试点击下一步按钮输入密码时,我得到一个错误 {WebDriverError:未知错误:元素…在点(1100527)处不可单击。其他元素将收到单击: 它说该元素不可点击,但之前在代码中我一直在等待它变得可点击。所以我就是不明白,这个元素怎么

  • 我有一个模式上传图像,当我点击上传图像,它是导航到本地计算机,然后选择指定的图像。在导航到本地计算机后,我发现了一个错误。 2个规格,1个故障。 和我上载映像的代码:

  • 在我们的网站上有一个图标,隐藏/取消隐藏菜单。我创建了以下脚本来测试它: 语句“expect(foo.isDisplayed()).toBe(false);”是从本网站复制的。我看不出它失败的任何原因,但是当我运行测试时,我得到了以下错误,即:foo。显示的是(…)。托比不是一个函数。如何使用expect函数验证菜单是否隐藏? estBed测试汉堡菜单单击验证消息:失败:foo.is显示(...)

  • 我还是想不通。几天前我的硒工作得很好;现在它给我带来了一些错误。我首先使用Nuget,然后我尝试手动安装它。 如何重现问题: 错误: OpenQA. Selenium.WebDriverExcture:抛出一个带有空响应的异常,向远程WebDriver服务器发送HTTP请求以获取URLhttp://localhost:60695/session.异常的状态为ReceiveFailure,消息为:基

  • 我的量角器。conf.js(相关部分) 如果我在正常模式下运行量角器,所有测试都通过了。以及如果我用map.click()替换这段代码。 编辑:我以前没有添加错误,因为我认为它们在我的情况下没有用。但他们在这里,因为有人认为他们是相关的。 失败: 1) 量角器演示应用程序位置排序应在距地图中心不同的距离上创建2个位置消息:预期0为2。堆栈:错误:对象的预期失败。它(/home/piliponful