1

文字列で WebTestCase の Crawler を使用する方法はありますか? 通常、WebTestCase を使用してテストを行いたい場合は、クライアントを使用して次のようにします。

public function testInitialPage()
{
    $client = $this->createClient();
    $crawler = $client->request('GET', '/');

    $this->assertCount(1, $crawler->filter('h1:contains("Contact us")'));
    ...
}

さて、私は知りたいのですが、どうにかしてクローラーを文字列で使用することは可能ですか?それは以下のようなものになります:

public function testInitialPage()
{
    ...
    $crawler = Crawler::createCrawler("<h1>Contact us</h1>");
    $this->assertCount(1, $crawler->filter('h1:contains("Contact us")'));
    ...
}

ありがとう!

4

1 に答える 1

0

DomCrawlerコンポーネントから Crawler クラスをインポートすると、それをテストで使用できます。

namespace Acme\Tests;

//...
use Symfony\Component\DomCrawler\Crawler;

class ContactTest extends WebTestCase
{
    public function testHeadlineOnContactUs()
    {
        $crawler = new Crawler("<h1>Contact us</h1>");
        $this->assertCount(1, $crawler->filter('h1:contains("Contact us")'));
    }
}
于 2013-03-13T10:39:57.073 に答える