目
:
支持各级别
代码自动测试
使用:
phpunit AllTests #全部测试
phpunit V2007_AllTests #V2007项目测试
phpunit V2007_Example_AllTests #V2007项目中Example模块测试
实现:
Tests
----| AllTests (All Test With test
: AllTests)
----| V2007 (A Project folder)
--------| AllTests.php (Project Testsuit, With test
: V2007_AllTests)
--------| Example.php (Module API Test
, With test
: V2007_ExampleTest)
--------| Example (A Module folder)
------------| AllTests.php (Model Testsuit, With test
: V2007_Example_AllTests)
------------| ArrayTest.php (Function Test
, With test
V2007_Example_ArrayTest)
文件及类
命名方式规范标准:
1. TestCase 以"Test"结尾
2. TestSuit 以"Tests"结尾
3. 目录结构和类名根据逻辑测试结构而定
如需V2007项目
Example模块
Array类/
测试用例
则文件置于V2007/Example/ArrayTest.php
其类名为V2007_Examlpe_ArrayTest
4. 每次测试以TestSuit进行
不支持单独运行TestCase测试
代码举例:
/**
* AllTests.php
*/
(!d('PHPUnit_MAIN_METHOD')) {
('PHPUnit_MAIN_METHOD', 'AllTests::');
}
//List your projects HERE
require_once 'V2007/AllTests.php';
V2007_AllTests
{
public function
{
PHPUnit_TextUI_TestRunner::run(self::suite);
}
public function suite
{
$suite = PHPUnit_Framework_TestSuite('V2007 rollenc.com');
//Add your project tests HERE
$suite->addTest(V2007_AllTests::suite);
$suite;
}
}
(PHPUnit_MAIN_METHOD 'AllTests::') {
AllTests::;
}
/**
* V2007/AllTests.php
*/
(!d('PHPUnit_MAIN_METHOD')) {
('PHPUnit_MAIN_METHOD', 'V2007_AllTests::');
}
//List your modules HERE
require_once 'V2007/Example.php'; // For APIs
require_once 'V2007/Example/AllTests.php';
V2007_AllTests
{
public function
{
PHPUnit_TextUI_TestRunner::run(self::suite);
}
public function suite
{
$suite = PHPUnit_Framework_TestSuite('V2007 - Rollenc.com');
$suite->addTestSuite('V2007_ExampleTest');
$suite->addTest(V2007_Example_AllTests::suite);
$suite;
}
public function suite
{
$suite = PHPUnit_Framework_TestSuite('V2007 - rollenc.com');
//Add your Module tests HERE
$suite->addTest(V2007_Example_AllTests::suite);
$suite;
}
}
(PHPUnit_MAIN_METHOD 'V2007_AllTests::') {
V2007_AllTests::;
}
/**
* V2007/Example/AllTest.php
*/
(!d('PHPUnit_MAIN_METHOD')) {
('PHPUnit_MAIN_METHOD', 'V2007_Example_AllTests::');
}
//List your Function HERE
require_once 'V2007/Example/ArrayTest.php';
require_once 'V2007/Example/StringTest.php';
require_once 'V2007/Example/FunctionTest.php';
V2007_Example_AllTests {
public function {
PHPUnit_TextUI_TestRunner :: run(self :: suite);
}
public function suite {
$suite = PHPUnit_Framework_TestSuite('V2007 - V2007_Example');
$suite->addTestSuite('V2007_Example_ArrayTest');
$suite->addTestSuite('V2007_Example_StringTest');
$suite->addTestSuite('V2007_Example_FunctionTest');
$suite;
}
}
(PHPUnit_MAIN_METHOD 'V2007_Example_AllTests::') {
V2007_Example_AllTests::;
}
/**
* V2007/Example/ArrayTest.php
*/
V2007_Example_ArrayTest extends PHPUnit_Framework_TestCase
{
public function Up {
$this->a = .gif' />(1,2,3,4,5,6,7,8,9);
}
public function testA {
.gif' />_push($this->a, 0);
$this->assertEquals(count($this->a), 10);
$this->assertEquals(1, 1);
}
public function testB {
$this->assertEquals(count($this->a), 9);
}
public function tearDown {
$this->a = .gif' />;
}
}