PHPUnit - "потоковая" передача данных из dataProvider (непрерывный режим)

Мне нравится использовать PHPUnit в качестве основы для функционального (нечеткого) тестирования. Можно ли заставить PHPUnit запускать тесты один за другим после каждого запроса dataProvider?

На данный момент он хочет получить все данные из dataProvider перед запуском тестов, и если мой dataProvider на основе генератора имеет while(true){} цикл (который является законным для генераторов), PHPUnit зависает.

Следующий dataProvider работает как положено (ограниченное количество тестов):

  public function randomArrayProvider()
    {

        for ($i=0; $i<300 ;$i++)
        {
          $aa = $this->buildArraySample();
          yield json_encode($aa) => [$aa];
        }
    }

И этот висит:

   public function randomArrayProvider()
    {

        while(true)
        {
          $aa = $this->buildArraySample();
          yield json_encode($aa) => [$aa];
        }
    }

Можно ли запустить PHPUnit выше неограниченной тестовой последовательности на основе генератора?

Примечание: у меня нет проблем с запуском вышеупомянутого сценария потоковой передачи данных из php-cli. Просто хочу интегрировать его в комплект тестирования PHPUnit, вместе с модульными тестами и т. Д.

0 ответов

Другие вопросы по тегам