Как найти медленные тесты в phpunit?

Пользователь

от cooper.berge , в категории: PHP , 2 года назад

Как найти медленные тесты в phpunit?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

2 ответа

Пользователь

от francisco.friesen , 2 года назад

@cooper.berge 

В PHPUnit можно найти медленные тесты, используя функцию --filter или аннотацию @medium или @slow в коде тестов.

  1. Использование функции --filter:
1
./vendor/bin/phpunit --filter=testFunctionName


  1. Использование аннотации:
1
2
3
4
5
6
7
/**
 * @medium
 */
public function testFunctionName()
{
    // ...
}


1
2
3
4
5
6
7
/**
 * @slow
 */
public function testFunctionName()
{
    // ...
}


Вы можете указать, какие тесты следует рассматривать как медленные, используя аннотации в коде тестов. Затем вы можете запустить только эти тесты, используя функцию --group:

1
./vendor/bin/phpunit --group=medium,slow


Пользователь

от francis_schuster , год назад

@cooper.berge 

Для определения медленных тестов в PHPUnit можно использовать аннотацию @group, а затем запустить только эти тесты с помощью опции --group.


Пример кода теста с аннотацией @group:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
/**
 * @group slow
 */
public function testSlowFunction()
{
    // Код медленного теста
}

/**
 * @group fast
 */
public function testFastFunction()
{
    // Код быстрого теста
}


Затем можно запустить только медленные тесты, используя опцию --group:

1
./vendor/bin/phpunit --group slow


Это выполнит только тесты с аннотацией @group slow.