开发者

Selenium: How to click an HTML button element?

I have button on the page that being used as a link to another page. So when t开发者_如何学Pythonhe user clicks the button they are redirected to the right page.

I am using the Selenium extension for PHPUnit and I would like to test that the button is correctly redirecting the user. Here is the HTML that I am trying to test:

<button onclick="window.location='/sponsor';" value="Continue" type="button" id="sponsorContinue" name="sponsorContinue">Continue</button>

I have tried a lot of different approaches to click the button, but I can't seem to get any of them to work:

$this->click("//button[@id='sponsorContinue']");

This command executes and does not throw any errors, but the page isn't redirected. It works fine when I manually click the button. What should I do?


Here's the problem...the HTML is wrong, and it's forcing users to use javascript to continue to the next page. Use this HTML instead. It's cleaner and doesn't rely on javascript.

<form method="get" action="/sponsor">
    <button type="submit" id="sponsorContinue">Continue</button>
</form>

Also, this will now work:

$this->click('sponsorContinue');

However, if you're trying to get window.location to work, see this question.

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜