黄昏+条纹=无法找到元素

时间:2019-05-14 19:18:56

标签: laravel laravel-dusk

我在窗口中打开付款表格,每当Dusk都在努力寻找屏幕上的输入元素时。我尝试添加pause(3),但没有执行任何操作。

我正在运行laravel 5.5和Dusk 2.0。

        $browser->waitFor('.stripe-card iframe', 30);

        // Lets make the switch to iframe
        $browser->driver
            ->switchTo()
            ->frame('__privateStripeFrame5');

        $browser->type('cardnumber', '4242424242424242')
            ->type('exp-date', '12 50')
            ->type('cvc', '123');

我尝试过:

  1. ->pause(3000)之前使用type('cardnumber'),但什么也没做
  2. 使用->keys('input[name=cardnumber]', '4242424242424242')但什么也没做

我得到的错误 Facebook\WebDriver\Exception\NoSuchElementException: no such element: Unable to locate element: {"method":"css selector","selector":"body textar ea[name='cardnumber']"}

使用keys()时,我得到:Facebook\WebDriver\Exception\NoSuchElementException: no such element: Unable to locate element: {"method":"css selector","selector":"body input[name=cardnumber]"}

1 个答案:

答案 0 :(得分:0)

我会建议所有处于类似职位的人将Laravel升级到5.7,将Dusk升级到5.0。

黄昏有一个名为withinFrame()的新方法,该方法使测试更易于编写和阅读:

https://github.com/laravel/dusk/commit/8bfb9f01ae09d1d9ca3ce53e36b1f020c0f8dc8f