<a>
Описание
Проверяет:
- наличие ответа от бота;
- текст ответа;
- состояние, в котором ответ был сгенерирован;
- состояние, с которого началось выполнение сценария.
На каждую реплику бота a необходим тег <a> в тестах.
Атрибуты
class— стейт, с которого началось выполнение сценария для текущего запроса, необязательный атрибут.state— стейт, в котором был сгенерирован ответ, необязательный атрибут.
Тело
Текст ожидаемого ответа, необязательно.
Примеры
<a></a>
<a>Текст ответа</a>
Вместо текста в ответе <a> можно указать стейт, в который переходит система. Для этого используйте атрибуты class и state.
Атрибут class будет указывать на стейт, в который запрос пользователя был классифицирован.
Атрибут state — на стейт, из которого был получен ответ. Например:
<test>
<test-case>
<q>Как дела?</q>
<a state="/Offtopic/HowAreYou"/>
</test-case>
</test>
Если нужно проверить, что сначала система попадает в один стейт, а потом при помощи go! переходит в другой, то можно использовать class как атрибут, указывающий на стейт, в который система попала первым. Затем используйте state как атрибут, указывающий на стейт, в который система попадает далее.
Если после первого стейта идет последовательность переходов, они также должны быть описаны при помощи атрибута state. Например:
<test>
<test-case>
<q>Как дела?</q>
<a class="/Offtopic/HowAreYou"/>
<a state="/Offtopic/Fallback"/>
<a state="/Offtopic/HowCanIHelpYou"/>
</test-case>
</test>
class и state могут совпадать. Если проверяется один переход в стейт, целесообразнее использовать один из этих атрибутов при тестировании. Полная запись:
<test-case>
<q>Как дела?</q>
<a class="/Offtopic/HowAreYou" state="/Offtopic/HowAreYou"/>
</test-case>