Как интегрировать PHPunit с testrail

Я хочу интегрировать результаты моего функционального теста с TestRail . Поскольку тестовая рейка принимает обновление состояния, это означает, что тест пройден успешно или не пройден для интеграции с ним. Но функции PHPunit, такие как assertEqual, assertTrue и т. Д., Не возвращают никаких значений. Как мы можем это сделать?

public function testGetItem()
{
    $this->specify("Verify the functionality of the method ", function ($itemId, $orgId, $expectedResult) {

    $result = $this->itemRepository->getItemInfo($ItemId , $orgId);
    //$this->assertEquals($expectedResult , $result) 
    $testRail=new TestRailIntegration();
    if($this->assertEquals($expectedResult , $result)){
        $testRail->postResultsToTestRail("34530","1");
    } else{
        $testRail->postResultsToTestRail("34530","");
    }
    //34530 is testrail id
}

когда тест не пройден, он не переходит в другое условие.

1 ответ

Простой ответ заключается в том, чтобы поймать исключение, опубликовать результат и перебросить исключение.

public function testGetItem()
{
    $this->specify("Verify the functionality of the method ", function ($itemId, $orgId, $expectedResult) {

    $testRail = new TestRailIntegration();
    try {
        $result = $this->itemRepository->getItemInfo($ItemId , $orgId);
        $this->assertEquals($expectedResult, $result);
        $testRail->postResultsToTestRail("34530", "1");
    } catch (\Exception $e) {
        $testRail->postResultsToTestRail("34530", "");
        throw $e;
    }
}
Другие вопросы по тегам