Existe-t-il un moyen d’utiliser le robot WebTestCase sur une chaîne? Normalement, si je souhaite effectuer un test à l'aide de WebTestCase, je procéderais comme ci-dessous, à l'aide de client:
public function testInitialPage()
{
$client = $this->createClient();
$crawler = $client->request("GET", "/");
$this->assertCount(1, $crawler->filter("h1:contains("Contact us")"));
...
}
Maintenant, j'aimerais savoir s'il est possible d'utiliser le robot sur une chaîne, ce qui donne l'impression suivante:
public function testInitialPage()
{
...
$crawler = Crawler::createCrawler("<h1>Contact us</h1>");
$this->assertCount(1, $crawler->filter("h1:contains("Contact us")"));
...
}
Merci!
Réponses:
0 pour la réponse № 1Si vous importez la classe Crawler à partir du DomCrawler composant, vous pouvez l'utiliser dans votre test.
namespace AcmeTests;
//...
use SymfonyComponentDomCrawlerCrawler;
class ContactTest extends WebTestCase
{
public function testHeadlineOnContactUs()
{
$crawler = new Crawler("<h1>Contact us</h1>");
$this->assertCount(1, $crawler->filter("h1:contains("Contact us")"));
}
}