gpt4 book ai didi

php - 是否可以使用 Behat + Mink 测试 CSS 样式表?

转载 作者:行者123 更新时间:2023-11-28 20:20:24 26 4
gpt4 key购买 nike

有什么方法可以测试某些元素的 css 参数(来自 css 样式表)?例如。段落的颜色。或 div 等的背景颜色...

我知道 selenium2 测试框架可以做到这一点,但是在带有 selenium2 驱动程序的 Behat + Mink 中我找不到如何做到这一点的方法。

提前致谢。

最佳答案

是的,您需要使用 Selenium2 驱动程序以及 Behat 和 Mink + 自定义 JS 调用来验证特定样式。下面的示例 (Behat 3) 使用 jQuery 断言 div.myClass color 属性符合预期。它将脚本发送到 Selenium,Selenium 对其进行评估并返回结果,您可以像往常一样在 PHP 中处理该结果。

<?php

class MyContext extends RawMinkContext
{

/**
* @Then /^The div.myClass color should be black$/
*/
public function assertCssValue()
{

// JS script that makes the CSS assertion in the browser.

$script = <<<JS
(function(){
return $('div.myClass').css('color') === 'rgb(0, 0, 0)';
})();
JS;

if (!$this->getSession()->evaluateScript($script)) {
throw new Exception();
}
}
}

您可以轻松地将其扩展为一个更通用的实例,该实例将执行所有不同类型的断言,但大多数逻辑将在 JS 中。

此外,还有其他 CSS 测试框架/替代方案,例如 PhantomCSS ,理论上应该通过 Selenium Driver 和 Mink 与 PhantomJS 一起工作。 Google 的“css 测试框架”……

关于php - 是否可以使用 Behat + Mink 测试 CSS 样式表?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25494456/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com