phpunit api PHPUnit_Extensions_SeleniumTestCase
来源:互联网 发布:caffe fcn 编辑:程序博客网 时间:2024/05/02 02:10
selenium 需要先curl扩展,所有安装/PHPUnit_Selenium 时往往提示错误
phpunit/PHPUnit_Selenium requires PHP extension "curl"
执行以下命令先安装curl,然后重启apache
//安装curl
sudo apt-get install php5-curl
sudo /etc/init.d/apache2 restart
//安装PHPUnit_Selenium
sudo pear install phpunit/PHPUnit_Selenium
安装完后Extension目录如下
测试用例
<?php
//文件名:MySeleniumTestCase.php
//PHPUnit_Extensions_SeleniumTestCase
class MySeleniumTestCase extends PHPUnit_Extensions_SeleniumTestCase
{
protected function setUp()
{
//设置浏览器
$this->setBrowser('*firefox');
//设置用于测试的基址URL(http://localhost/test/)
$this->setBrowserUrl('http://www.example.com/');
}
public function testTitle()
{
$this->open('http://fcwr.jstv.com/');
$this->assertTitle('非诚勿扰官方网站 江苏卫视新派交友电视节目 fcwr.jstv.com | 江苏网络电视台');
}
}
?>
或
<?php
//文件名:MySeleniumTestCase.php
//PHPUnit_Extensions_Selenium2TestCase
class MySeleniumTestCase extends PHPUnit_Extensions_Selenium2TestCase
{
protected function setUp()
{
//设置浏览器
$this->setBrowser('firefox');
//设置用于测试的基址URL(http://localhost/test/)
$this->setBrowserUrl('http://www.example.com/');
}
public function testTitle()
{
$this->open('http://fcwr.jstv.com/');
$this->assertTitle('非诚勿扰官方网站 江苏卫视新派交友电视节目 fcwr.jstv.com | 江苏网络电视台');
}
}
?>
<?php
// 测试套件TestSuite.php
require_once 'PHPUnit/Autoload.php';
class MyTestSuite extends PHPUnit_Framework_TestSuite {
// SetUp方法是在每个测试用例运行前进行一些初始化的工作,比如创建业务对象,让其他测试方法也可以使用业务对象,或数据库连接对象
protected function setUp(){
$this->data= "somesthing";
}
//tearDown则在每个测试用例运行后进行一些比如资源的释放等工作的工作
protected function tearDown(){
//$this->sharedFixture= null;
}
//注意此处设置为static
public static function suite() {
$suite = new self();
$suite->addTestFile("MySeleniumTestCase.php");
return $suite;
}
}
?>
执行phpunit TestSuite.php,
phpunit 自动在服务端打开浏览器,并请求 http://fcwr.jstv.com/,并验证title
Selenium Server API: Setup
void setBrowser(string $browser)
Selenium RC服务器使用的浏览器。void setBrowserUrl(string $browserUrl)
设置用于测试的基址URL,比如http://localhostvoid setHost(string $host)
设置连接到Selenium RC服务器的主机名。IP(192.168.8.24) 或主机名void setPort(int $port)
设置连接到Selenium RC服务器的端口号。默认4444void setTimeout(int $timeout)
设置连接到Selenium RC服务器的超时时间。void setSleep(int $seconds)
设置Selenium RC客户端向Selenium RC服务器发送动作指令之间睡眠的秒数。Selenium Server 支持的浏览器
Supported browsers include:
*firefox
*mock
*firefoxproxy
*pifirefox
*chrome
*iexploreproxy
*iexplore
*firefox3
*safariproxy
*googlechrome
*konqueror
*firefox2
*safari
*piiexplore
*firefoxchrome
*opera
*webdriver
*iehta
*custom
配置多浏览器
<?php
//文件名:MySeleniumTestCase.php
class MySeleniumTestCase extends PHPUnit_Extensions_SeleniumTestCase
{
public static $browsers = array(
array(
'name' => 'Firefox on Linux',
'browser' => '*firefox',
'host' => 'localhost',
'port' => 4444,
'timeout' => 30000,
),
array(
'name' => 'googlechrome',
'browser' => '*googlechrome',
'host' => 'localhost',
'port' => 4444,
'timeout' => 30000,
),
);
protected function setUp()
{
//$this->setBrowser('*googlechrome');
$this->setBrowserUrl('http://www.google.com/');
}
public function testTitle()
{
$this->open('http://www.baidu.com/');
$this->assertTitle('百度一下,你就知道');
}
}
?>
PHPUnit_Extensions_SeleniumTestCase 断言
void assertAlertPresent()
如果不存在警告(对话框)则报错。
void assertNoAlertPresent()
如果存在警告(对话框)则报错。
void assertChecked(string $locator)
如果$locator标识的元素未选中则报错。
void assertNotChecked(string $locator)
如果$locator标识的元素被选中则报错。
void assertConfirmationPresent()
如果不存在确认(对话框)则报错。
void assertNoConfirmationPresent()
如果存在确认(对话框)则报错。
void assertEditable(string $locator)
如果$locator标识的元素不可编辑则报错。
void assertNotEditable(string $locator)
如果$locator标识的元素可编辑则报错。
void assertElementValueEquals(string $locator, string $text)
如果$locator标识的元素的值不等于给定的$text则报错。
void assertElementValueNotEquals(string $locator, string $text)
如果$locator标识的元素的值等于给定的$text则报错。
void assertElementContainsText(string $locator, string $text)
如果$locator标识的元素不含给定的$text则报错。
void assertElementNotContainsText(string $locator, string $text)
如果$locator标识的元素包含给定的$text则报错。
void assertElementPresent(string $locator)
如果$locator标识的元素不存在则报错。
void assertElementNotPresent(string $locator)
如果$locator标识的元素存在则报错。
void assertLocationEquals(string $location)
如果当前位置(location)不等于给定的$location则报错。
void assertLocationNotEquals(string $location)
如果当前位置(location)等于给定的$location则报错。
void assertPromptPresent()
如果不存在提示(对话框)则报错。
void assertNoPromptPresent()
如果存在提示(对话框)则报错。
void assertSelectHasOption(string $selectLocator, string $option)
如果给定的选项不可用则报错。
void assertSelectNotHasOption(string $selectLocator, string $option)
如果给定的选项可用则报错。
void assertSelected($selectLocator, $option)
如果给定的标签未选中则报错。
void assertNotSelected($selectLocator, $option)
如果给定的标签被选中则报错。
void assertIsSelected(string $selectLocator, string $value)
如果给定的值未选中则报错。
void assertIsNotSelected(string $selectLocator, string $value)
如果给定的值被选中则报错。
void assertSomethingSelected(string $selectLocator)
如果$selectLocator标识的选项未选中则报错。
void assertNothingSelected(string $selectLocator)
如果$selectLocator标识的选项被选中则报错。
void assertTextPresent(string $pattern)
如果给定的$pattern不存在则报错。
void assertTextNotPresent(string $pattern)
如果给定的$pattern存在则报错。
void assertTitleEquals(string $title)
如果当前标题不等于给定的$title则报错。
void assertTitleNotEquals(string $title)
如果当前标题等于给定的$title则报错。
void assertVisible(string $locator)
如果$locator标识的元素不可见则报错。
void assertNotVisible(string $locator)
如果$locator标识的元素可见则报错。
- phpunit api PHPUnit_Extensions_SeleniumTestCase
- phpunit api PHPUnit_Framework_TestCase
- phpunit api PHPUnit_Framework_TestSuite.php
- phpunit api PHPUnit_Extensions_OutputTestCase
- phpunit api PHPUnit_Extensions_Database_TestCase
- PHPunit
- phpunit
- phpunit api 未完成和跳过的测试
- 安装PHPUnit
- PHPUnit+HTMLRunner
- PHPUnit系列
- PHPUnit安装
- phpunit是什么?
- PHPUnit manual
- PHPUnit 安装
- phpunit ubuntu
- phpunit - selenium
- phpunit安装
- 资格赛d题
- 资格赛e题
- 资格赛j题
- 程序里
- vb
- phpunit api PHPUnit_Extensions_SeleniumTestCase
- CSS弹出框样式
- 记事本(含剪切、复制、粘贴、全选、撤销)核心设计
- 电脑Wifi热点设置详解
- select事件
- 【PB】pb打开pbw时提示Attempt to open datawindow failed错误解决办法
- 【android】android开发环境搭建
- 交叉编译,配置eclipse编译环境
- RTP视频传输播放延时(时间戳)