Тесты то проходят то нет

Всё про тестирование в Yii 2.0
Ответить
an.viktory@gmail.com
Сообщения: 512
Зарегистрирован: 2016.09.05, 23:21

Тесты то проходят то нет

Сообщение an.viktory@gmail.com » 2019.07.23, 12:20

1. Тестовая база postgresql
2. Используются текстуры.
3. Базы чистятся перед и после тестов.

не могу понять почему иногда тесты проходят а иногда нет (50% на 50%)!

Код: Выделить всё

 public function testDoNotGetFlightsWithPromoCodeGot()
    {

        $compPackage = new CompPackage(['flight_id' => 1001, 'promo_code_id' => 123, 'number' => "jljflsjdfjs", 'status' => CompPackage::STATUS_BUSY]);

        $this->assertTrue($compPackage->save());
        
        // test 1 flight

        /** @var Flight $flight */
        // time of start period
        $time = time() - TaskGetCompPackets::DAYS_BEFORE_PERIOD * 24 * 60 * 60 - TaskGetCompPackets::OFFSET * 3600;

        $flight = Flight::findOne(1001);
        $flight->std = gmdate("Y-m-d H:i", $time + 60);
        $this->assertTrue($flight->save());

        $flight = Flight::findOne(1002);
        $flight->std = gmdate("Y-m-d H:i", $time + 60);
        $this->assertTrue($flight->save());

        $task = new TaskGetCompPackets();

        $flights = TestHelper::callMethod($task, 'getFlights');

        codecept_debug(ArrayHelper::getColumn($flights, 'id'));

        $this->assertNotContains(1001, ArrayHelper::getColumn($flights, 'id'));


    }
    

Аватара пользователя
samdark
Администратор
Сообщения: 9201
Зарегистрирован: 2009.04.02, 13:46
Откуда: Воронеж
Контактная информация:

Re: Тесты то проходят то нет

Сообщение samdark » 2019.09.11, 14:48

Думаю, дело в timestamp-ах и времени выполнения тестов.

an.viktory@gmail.com
Сообщения: 512
Зарегистрирован: 2016.09.05, 23:21

Re: Тесты то проходят то нет

Сообщение an.viktory@gmail.com » 2019.10.11, 12:55

Спасибо.
Ошибка была в составлении тестов.
Но теперь у меня НОВЫЙ ступор.
Почему, когда делаю тесты API, некоторые маршруты не отрабатываются т.е. их не находит но если делаю это запрос сторонним клиентом то запрос проходит.
И это только для не которох тестов. т.е. остальный тесты, которые использвуют кофигурационный файл с настроками маршрутов отрабатывают как надо.

Ответить