我是硒测试的新手,我正在尝试使用phpunit和selenium server 2进行第一次测试。
我使用其中一个在线教程进行自动化测试,现在我尝试使用Firefox Selenium IDE来记录我们网站上注册过程的流程。
我已经为IDE安装了php格式化程序并导出了PHPUnit的录制命令,但是当我通过PHPUnit运行代码时,我得到:
异常:waitForPageToLoad不是有效的webdriver命令。
非常感谢任何帮助!
非常感谢, 伊恩
<?php
require_once __DIR__ . '/../../../lib/php-webdriver/__init__.php';
class HomePageTest extends PHPUnit_Framework_TestCase
{
/**
* @var WebDriverSession
*/
protected $_session;
public function setUp()
{
parent::setUp();
$web_driver = new WebDriver();
$this->_session = $web_driver->session();
}
public function tearDown()
{
$this->_session->close();
unset($this->_session);
parent::tearDown();
}
public function test_free_signup_process()
{
$this->_session->open('http://---.com');
$this->_session->click("link=View Pricing");
$this->_session->waitForPageToLoad("30000");
$this->_session->click("link=Free Account");
$this->_session->waitForPageToLoad("30000");
$this->_session->type("id=first_name", "---");
$this->_session->type("id=last_name", "---");
$this->_session->type("id=password_tf", "---");
$this->_session->type("id=password_confirm", "---");
$this->_session->type("id=recaptcha_response_field", "tsTooki status:");
$this->_session->click("id=checkbox_terms");
$this->_session->click("css=input[type=\"submit\"]");
$this->_session->waitForPageToLoad("30000");
$this->_session->click("link=registration code");
$this->_session->waitForPageToLoad("30000");
$this->_session->type("id=code", "---");
$this->_session->click("css=input[type=\"submit\"]");
$this->_session->waitForPageToLoad("30000");
}
}
答案 0 :(得分:2)
您可以使用WebDriverWait
课程来完成您想要的操作。 waitForPageToLoad()
仅适用于Selenium版 1 。
您可以找到WebDriverWait
类here的源代码。
当然,直到功能是最重要的部分。
答案 1 :(得分:1)
Selenium 2.0 API文档对于查看可用的方法非常有用 http://selenium.googlecode.com/svn/trunk/docs/api/py/api.html