2

正如其他地方所解释的(使用 Selenium WebDriver 截屏),您可以使用 Selenium Webdriver 类 PHPUnit_Extensions_Selenium2TestCase 使用 PHPUnit 轻松截屏。

但是,我找不到设置生成的屏幕截图的屏幕大小的方法。默认情况下,它们的宽度似乎限制为 1000 像素。

顺便说一句:上面提到的 Stackoverflow 线程已关闭。所以我不能在那里发布我的问题。

4

2 回答 2

6

您是否尝试过调整浏览器窗口的大小?我在这里找到了关于它的有趣帖子。那里的一些代码片段:

    $this->currentWindow()->size(array(
  'width' => 800,
  'height' => 600,
));
于 2013-09-15T16:40:10.397 回答
3

非常感谢!这解决了我的问题。我发布我的代码以提供更完整的示例:

您可以使用任何窗口,$this->currentWindow()然后size()在其上调用“关闭方法”。我把它放在我的setupPage()方法中。

class DrupalWebtestBase extends \PHPUnit_Extensions_Selenium2TestCase
{
    /* ... */

    public function setUpPage()
    {       
        parent::setUpPage();

        if( $this->width && $this->height )
        {    
            // main window is named ''  
            $this->window('');

            // get window object
            $window = $this->currentWindow();

            // set window size
            $window->size( array(
                            'width'     => $this->width,
                            'height'    => $this->height) );
        }
    }
}

稍后拍摄的屏幕截图反映了上面设置的窗口尺寸。

于 2013-09-15T22:58:56.030 回答