Codeception看到并且看不到两个失败

时间:2013-06-13 13:56:29

标签: codeception

我正在使用Selenium2模块进行验收测试

我的acceptance.suite.yml包含

class_name: WebGuy
modules:
    enabled: [Selenium2]
    config:
        Selenium2:
            url: 'http://localhost/'
            browser: firefox
            capabilities:
                unexpectedAlertBehaviour: 'accept'

在我的测试文件中,我尝试了以下两种方法,但都失败了

$I->seeElement('.menu .subMenu');

$I->dontSeeElement('.menu .subMenu');

我希望dontSee断言能够传递,因为默认情况下子菜单是隐藏的

我得到的错误是

Guy意外地设法看到元素“.menu .subMenu”:声明对象为空的失败。

HTML的开头看起来像这样

<div class="menu">
  <div class="subMenu" style="display: none;">
    <ul>
      <li><a href="#">Contact</a></li>
    </ul>
  </div>
</div>

2 个答案:

答案 0 :(得分:0)

尝试使用XPath:

$I->seeElement("//div[@class='menu']");

答案 1 :(得分:0)

我相信这是Codeception中的一个错误:https://github.com/Codeception/Codeception/issues/617

编辑:切换到WebDriver模块而不是Selenium似乎已经解决了我的问题。