fonsecas72/behat-failurehook-extension

当测试失败时暴露相关内容

1.0.1 2016-08-12 14:07 UTC

This package is not auto-updated.

Last update: 2024-09-14 19:42:11 UTC


README

此behat扩展会在测试失败时触发动作,您可以使用它来执行截图、保存html内容等操作,因为它允许您添加自己的功能。

您的behat.yml应该看起来像这样

default:
    extensions:
        Fonsecas72\FailureExpoExtension:
            expounds:
                - Features\FailureHooks\MySQLDumpExpound

您不需要其他任何东西来使其工作。

添加自己的钩子

钩子的示例

<?php

namespace Features\FailureHooks;

class MySQLDumpExpound extends \Fonsecas72\FailureExpoExtension\Expounds\Expound
{
    public function expose()
    {
        $fs = new \Symfony\Component\Filesystem\Filesystem();
        $destination = 'build/'.$this->description;
        $fs->mkdir($destination);
        shell_exec('mysqldump -uuser -ppass db > '.$destination.'/dbdump.sql');
        echo PHP_EOL.'| MysqlDump captured ~> '.$destination.'/dbdump.sql';
    }
}

工作原理

您的失败钩子应扩展并实现expose方法。当发生失败时,将调用此方法。然后,失败钩子扩展将暴露一个特殊的“描述”属性,用于标识失败的场景。