Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Рабочая тетрадь(4)

.pdf
Скачиваний:
35
Добавлен:
10.02.2016
Размер:
7.33 Mб
Скачать

Тесты можно считать хорошими, если их:

Легко научиться писать

Легко написать

Легко прочитать

Легко выполнить

Быстро выполняются

Поддерживается изолированность

Поддерживается комбинируемость

Ограничения:

Легкость обучения написанию тестов противоречит легкости написания

Изолированность противоречит скорости выполнения

echo

print

print_r

var_dump

var_export

assert

assert_options(ASSERT_ACTIVE, 1); assert_options(ASSERT_WARNING, 0); assert_options(ASSERT_QUIET_EVAL, 1);

function my_assert_handler($file, $line, $code){ echo "Assertion Failed:<br />

File '$file'<br /> Line '$line'<br /> Code '$code'<hr />";

}

assert_options(ASSERT_CALLBACK, 'my_assert_handler');

assert('mysql_query("")');

Модульное тестирование

англ. unit testing

процесс в программировании, позволяющий проверить на корректность отдельные модули исходного кода программы

Поощрение изменений

Упрощение интеграции

Документирование кода

Отделение интерфейса от реализации

PhpUnit

http://www.phpunit.de

Установка

pear remote-info phpunit

pear channel-discover pear.phpunit.de

pear remote-list -c phpunit

pear install phpunit/PHPunit

require_once 'PHPUnit/Framework.php';

class MyClassTest extends

PHPUnit_Framework_TestCase{

public function testMyFunction(){

$this->assertEquals($val1, $val2){}

$this->assertTrue($val){}

$this->assertFalse($val){}

phpunit test-file.php

require_once 'PHPUnit/Framework.php';

class MyClassTest extends

PHPUnit_Framework_TestCase{

public function testOne(){}

/**

* @depends testOne */

public function testTwo(){}

/**

*@dataProvider provider

*/

public function testFoo($a, $b){}

public function provider(){ return array(

array(1, 1), array(1, 2), array(2, 3), array(3, 4),

);

}

setUpBeforeClass()

tearDownAfterClass()

setUp()

tearDown()

assertPreConditions()

assertPostConditions()

onNotSuccessfulTest()

<dataset>

<table name="post">

<column>post_id</column>

<row>

<value>1</value>

</row>

</table>

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]