如何在PHPUnit(Symfony2)中单击按钮

Yas*_*oui 4 phpunit click button functional-testing symfony

,我正在写一个功能测试,我想知道如何简单地点击一个按钮,我有一个隐藏的表单,在按钮点击后显示

我尝试像这样进行正常点击:

$button  = $crawler->filter('button:contains("Add")');
$crawler = $client->click($button);
Run Code Online (Sandbox Code Playgroud)

但似乎click()函数采用链接对象而不是Crawler对象.

我怎么能这样做?

Naw*_*rar 6

我假设您使用JS来显示您的隐藏表单.这不起作用,因为爬虫不支持JS,如果你想测试表单的点击和可见性,你最好查找CasperJs或其他一些爬虫.

Symfony2功能测试 - 点击带有jQuery交互的元素

否则,如果测试表单的提交是您想要实现的,那么您可以使用:

$form = $crawler->filter('button#idofyourbutton')->form(array(
            'firstname' => 'Blabla',
            'lastname' => 'Blabla',
            'address' => 'BlablaBlablaBlablaBlabla',
            'zipcode' => '302404',
            'phone' => '30030130269'
        ),'POST');

        $client->submit($form);
Run Code Online (Sandbox Code Playgroud)