yii2-logstock

Yii2 + codeception testing extension

Testing Extension for Yii 2

This extension provides recording and asserting application trace. Based on yii\debug module.

Cover

Support

  1. Unit
  2. Functional (without web server) - does not support
  3. Acceptance (throughout web server)

Latest Stable Version Build Status Total Downloads

Installation

The preferred way to install this extension is through composer.

Either run

php composer.phar require --prefer-dist pastuhov/yii2-logstock

or add

"require-dev": {
    "pastuhov/yii2-logstock": "~1.0.0"
    ...

to the require section of your composer.json file.

Usage

Once the extension is installed, simply modify your application configuration as follows:

...
if (YII_ENV_TEST) {
    // configuration adjustments for 'test' environment
    $config['bootstrap'][] = 'logstock';
    $config['modules']['logstock'] = [
        'class' => \pastuhov\logstock\Module::class,
    ];

}
...

Add pastuhov\logstock\UnitHelper to suit config

modules:
    enabled:
        - pastuhov\logstock\UnitHelper

Use assertLog() method in tests

...
    public function testExampleUnitUsage()
    {
        $this->tester->assertLog(function (){
            Yii::info('Test info message');
            Yii::$app->getDb()->createCommand('SELECT * FROM page')->execute();
        }, Yii::$app);
    }
...

First time trace will be recorded

1) Test example unit usage (unit\ExampleUnitTest::testExampleUnitUsage)
Fixture has aggregated. Please restart test!

Recorded trace log:

Entry: console

Test info message

SELECT * FROM page

in subsequent test runs log will be compared

For more info see tests.

Testing

./vendor/bin/codecept run unit,acceptance

If web server needed:

./tests/bin/yii serve&

Security

If you discover any security related issues, please email [email protected] instead of using the issue tracker.

Related Repositories

yii2-logstock

yii2-logstock

Yii2 + codeception testing extension ...