Facebook \ WebDriver \ Exception \ UnexpectedJavascriptException javascript错误:无法读取未定义的属性“ click”

时间:2019-08-04 08:59:43

标签: selenium-webdriver webdriver codeception

问题是我的代码接受测试实际上通过了,并且单击了按钮,但是由于某种原因,由于标题错误,它不再继续。

$ I-> click('onsomefield');

$ I-> fillField(['name'=>'password'],'password');

$ I-> waitForJS(“ letbutton = document.querySelectorAll('button'); buttons.forEach(function(button){button.style.disabled = false});返回按钮[1] .click() “,10);

我希望我的考试能够通过,但是出现标题错误

完整的错误文本是:

[Facebook \ WebDriver \ Exception \ UnexpectedJavascriptException] JavaScript错误:无法读取属性“ click” 未定义   (会话信息:chrome = 75.0.3770.142)   (驱动程序信息:chromedriver = 75.0.3770.140(2d9f97485c7b07dc18a74666574f19176731995c-refs / branch-heads / 3770 @ {#1155}),platform = Windows NT 10.0.18362 x86_64)

1 个答案:

答案 0 :(得分:1)

我解决了问题。

在我的情况下,前端处于反应状态,我猜想,按钮没有ID,我尝试了很多选项,并且尝试了executeJS等待executejs,实际上它起作用了,但是我仍然抛出标题错误这个问题,发现here有一个特殊的班级

  

Codeception \ Util \ Locator

它可以与单击一起使用,因此将定位器设置为

    use Codeception\Util\Locator;
   $I->click('login' , Locator::lastElement('#login-methods-body-user_credentials'));

有用,我希望您可以在那里选择一个适合您的选项。