Selenium Chrom驱动程序:无法解析getElementRegion

时间:2019-10-03 14:08:01

标签: selenium docker symfony selenium-chromedriver behat

我尝试在Docker的Selenium上使用Behat / Mink实现一些自动用户测试。 但是,对于某些元素,我收到了“无法解析getElementRegion的值”的信息。 您有什么线索可以解决这个问题吗?

我尝试在Selenium的Container上使用docker启动此测试。 Behat测试尝试访问模式内的div。

我可以确认文本在屏幕上可见,这是我在behat文件中的上一行。

我想尝试用解决方案描述here,但是我的项目中没有任何conf.js。

我尝试在测试过程中查看ID是否发生更改(尝试单击之前先睡一下),但是我可以手动查看它。

我在Google上没有看到我以前链接过的其他解决方案。

我的脚本

@javascript @second
Feature: Builder Features
  In Order to use the website as an Builder
  I should be able to modify the roadmap

  Scenario: I can do click on the modal
    When I am on "/thispage"
    Then I should see "The Title who open the Modal"
    Then I click on ".form-check-label"
    Then I wait "1"
    Then I wait until "#generic-modal" load
    Then I should see "The title of the modal"
    Then I should see "The description of the modal"
    Then I click on "#check47"
    Then I press "Close the modal"

我点击背后的PHP:

    /**
     * @Then /^I click on "([^"]*)"$/
     */
    public function iClickOn($selector)
    {
        $page    = $this->getSession()->getPage();
        $element = $page->find('css', $selector);

        if (empty($element)) {
            throw new Exception("No html element found for the selector ('$selector')");
        }

        $element->click();
    }

docker-compose的Selenium部分

    selenium:
        image: selenium/standalone-chrome-debug:latest
        networks:
            app_tier:
                ipv4_address: 172.11.1.4
        environment:
        - SCREEN_WIDTH=1920
        - SCREEN_HEIGHT=1080
        ports:
        - "5900:5900"
        volumes:
        - "/dev/shm:/dev/shm"
        - "../features/file:/usr/share/tag/file/"

behat.yml中的Behat扩展名

    extensions:
        Behat\MinkExtension:
            base_url: "http://172.11.1.3"
            sessions:
                javascript:
                    selenium2:
                        capabilities: {"browserName": "chrome", "browser": "chrome", 'chrome': {'switches': ['--whitelisted-ips']}, "marionette": true, "extra_capabilities": {"goog:chromeOptions":{"w3c":false,"args":["start-maximized", 'disable-dev-shm-usage', 'disable-extensions']}}}
                        wd_host: 'http://172.11.1.4:4444/wd/hub'
        Behat\Symfony2Extension: ~

我应该通过所有behat的脚本,而不会出现任何错误。

但是,此消息出现:


    Then I click on "#check27"                                                                                # FeatureContext::iClickOn()
      unknown error: failed to parse value of getElementRegion
        (Session info: chrome=77.0.3865.75)
        (Driver info: chromedriver=77.0.3865.40 (f484704e052e0b556f8030b65b953dce96503217-refs/branch-heads/3865@{#442}),platform=Linux 4.19.23-coreos-r1 x86_64) (WebDriver\Exception\UnknownError)

0 个答案:

没有答案