Wciąż otrzymuję następujący błąd:Błąd podczas próby wybrania formularza z robota symfony2?
There was 1 error:
1) Caremonk\MainSiteBundle\Tests\Controller\SecurityControllerFunctionalTest::testIndex
InvalidArgumentException: The current node list is empty.
Ale kiedy przejść do localhost/logowania, moja forma zapełnia z właściwą treścią. Linia, która mówi ...
$form = $crawler->selectButton('login')->form();
powoduje błąd. Co jest nie tak z moim testem?
test funkcjonalny:
<?php
namespace Caremonk\MainSiteBundle\Tests\Controller;
use Symfony\Bundle\FrameworkBundle\Test\WebTestCase;
class SecurityControllerFunctionalTest extends WebTestCase
{
public function testIndex()
{
$client = static::createClient();
$crawler = $client->request('GET', '/login');
$form = $crawler->selectButton('login')->form();
$form['username'] = 'testActive';
$form['password'] = 'passwordActive';
}
}
Gałązka Widok:
{# src/Acme/SecurityBundle/Resources/views/Security/login.html.twig #}
{% if error %}
<div>{{ error.message }}</div>
{% endif %}
<form action="{{ path('caremonk_mainsite_login_check') }}" method="post">
<label for="username">Username:</label>
<input type="text" id="username" name="_username" value="{{ last_username }}" />
<label for="password">Password:</label>
<input type="password" id="password" name="_password" />
{#
If you want to control the URL the user is redirected to on success (more details below)
<input type="hidden" name="_target_path" value="/account" />
#}
<button type="submit">login</button>
</form>
Parametry wymagają podkreślenia poprzedzając, na przykład '' '_username'''' – Tjorriemorrie