Как предоставить уникальные идентификаторы для тест-кейсов код-восприятия?

У меня есть тестовые случаи, которые я автоматизирую, и у них есть уникальные идентификаторы.

//Plain English testcase
ID: 1234
1. Go to url: "example.com"
2. Click on button named: "Don't click me"
3. See if the button got angry 

Где я могу включить вышеуказанный идентификатор тестового набора в автоматизированную версию этого тестового набора (расположенного ниже)?

//Automated version of the above testcase
$I = new AcceptanceTester($scenario);
$I->amOnUrl("example.com");
$I->see("Don't click me");
$I->click("#angry_button");
$I->see('......') // some result

Имейте в виду, что идентификатор должен присутствовать в отчете xml всякий раз, когда генерируется первый:

codecept run acceptance --xml

2 ответа

Ты можешь использовать

$I->wantTo("Test ID: 1234");

Но если вы ссылаетесь на уникальный идентификатор для каждого теста, вы можете просто использовать дату в качестве обходного пути.

Например:

$time = date("m-j-Y-G:i:s");
$I->wantTo("Test ID ".$time);

Начните использовать тестовые случаи Cest в коде. Это сделает вашу жизнь намного проще. Поверьте мне, я также начал с Cept.

Итак, когда вы используете Cest, вы можете сделать следующее:

Используйте имя вашей функции в качестве уникального идентификатора. В моем тесте у меня есть:

public function testPageElementsAvailability(AcceptanceTester $I)
{ 
  test some thing
}

Это производит следующий XML

<?xml version="1.0" encoding="UTF-8"?>
<testsuites>
  <testsuite name="acceptance" tests="1" assertions="1" failures="0" errors="0" time="3.954338">
    <testcase file="..../createCest.php" name="testPageElementsAvailability" class="post\createCest" feature="test page elements availability" assertions="1" time="3.954338"/>
 </testsuite>
</testsuites>
Другие вопросы по тегам