我用 PHP 编写了一个 selenium RC 测试脚本。如果在页面上找不到元素,则在某些情况下我的脚本会结束。所以,我的问题是,如果脚本失败,我们可以重新运行该脚本吗?
问问题
343 次
1 回答
0
您确实需要找出第一次测试失败的原因,但假设您使用 PHPUnit 运行测试,那么在技术上是可能的......
首先, phpunit 有一个 --repeat 选项,
或者其次...
在测试用例中,您可以使用 ->onNotSuccessfulTest() 调用 ->runBare() 重新运行测试,如下所示:
class yourTestCase extends \PHPUnit_Extensions_Selenium2TestCase
{
// ...
static public $retryCount = 0;
public function onNotSuccessfulTest(\Exception $e)
{
// Rethrow tests which failed due to being marked as skipped or incomplete
if ($e instanceof /* Put skipped or Incomplete classes here */) {
throw $e;
}
if (self::$retryCount < 3) {
self::$retryCount++;
return $this->runBare();
} else {
self::$retryCount = 0;
throw $e;
}
}
//...
}
同样,您确实想调查测试失败的原因,但您提出的问题是可能的!
于 2013-07-11T15:57:16.913 回答