Как нажать на иконку ссылки с сумерек Laravel?

Если у меня есть ссылка:

<a href="/somewhere">Click Me</a>

я знаю что могу clickLink на основе его текста.

public function testCanClickLink()
{
$this->browse(function ($browser) {
$browser->visit('/welcome')
->clickLink('Click Me');
});
}

Но как я могу нажать на значок ссылки?

<a href="/somewhere">
<i class="fa fa-plus" aria-hidden="true"></i>
</a>

6

Решение

Вы можете настроить таргетинг на href следующим образом:

->click('a[href="/somewhere"]')

3

Другие решения

Это немного глупо, но это то, что я нашел в качестве обходного пути.

  1. Поместите селектор идентификатора на ссылку.

    <a id="link-click-me" href="/somewhere">
    <i class="fa fa-plus" aria-hidden="true"></i>
    </a>
    
  2. Утверждают, что это видно.

  3. Получите атрибут href.
  4. Посетите это.
  5. Путь утверждения верен.

    public function testCanClickLink()
    {
    $this->browse(function ($browser) {
    $browser->visit('/welcome')
    ->assertVisible('#link-click-me')
    ->visit(
    $browser->attribute('#link-click-me', 'href')
    )
    ->assertPathIs('/somewhere');
    });
    }
    
3

По вопросам рекламы [email protected]