2016-03-14 2 views
6

У меня есть следующий DIV ->Как проверить результат деления, нажатого с помощью Laravel? (PHPUnit)

<div id="grid"> 
    <div id="grid-item" onClick="sendServer(1)">Data 1 </div> 
    <div id="grid-item" onClick="sendServer(2)">Data 2 </div> 
    <div id="grid-item" onClick="sendServer(3)">Data 3 </div> 

</div> 

sendServer() является Ajax, что проверить и отправить ДАННЫЕ на сервер и перейти к маршруту '/irCurso{id}'.

Я хочу проверить результат, когда эти div нажали, я знаю, что я не могу использовать метод ->click(), потому что он просто работает с тегом <a>. Это мой код:

$this->visit('/cursos') 
      ->click('id=grid-item') 
      ->seePage('irCurso/1'); 

Спасибо :)

+0

Хороший вопрос. Если бы вы рассматривали что-то вроде «codeception», вы могли бы легко «щелкнуть» («# grid-item») 'или' click ('. Grid-item') '. Также вы можете прибегнуть к 'xpath', когда атрибутов, классов и идентификаторов недостаточно. К сожалению, кривая обучения не слишком приятна. – user2094178

+1

[Вы должны избегать использования одного и того же идентификатора несколько раз в одном документе html] (http://programmers.stackexchange.com/a/127180/72522) (я имею в виду 'id =" grid-item "') –

+0

Почти 1 год спустя , нет ответа? –

ответ

-1

Если вы используете 5.3 или понизить его не представляется возможным проверить результат DIV щелкнули тестовый API Laravel.

Когда вы нажимаете в своем div, вы ожидаете запустить функцию JS. К сожалению, API-интерфейс Laravel не будет перефразировать ваши js, поэтому он не будет выполнен. И поскольку он не выполняется, результаты не подлежат оценке.

Но с помощью Dusk (in laravel 5.4) вы можете протестировать javascript через API-интерфейс Laravel. Ознакомьтесь с документами для получения дополнительной информации о сумерках: https://laravel.com/docs/master/dusk

+0

Было бы лучше ответить, как решить проблему, а не говорить, что есть способ ее решить. –

Смежные вопросы