Frage

Gibt es eine Möglichkeit, PHPUnit automatisch nur mit NPM/Grunt zu installieren?

Ich weiß davon grunt-phpunit Paket, aber dies erfordert immer noch, dass Sie PHPUnit selbst mit Composer oder etwas anderem installieren.Gibt es eine einfache Möglichkeit, dies zu automatisieren?

Ich arbeite daran, einige automatisierte Testfunktionen einzurichten, die lokal ausgeführt und geteilt werden, und ich möchte die Anweisungen wie folgt belassen:

npm install -g grunt-cli
npm install
grunt
War es hilfreich?

Lösung

Ich habe eine Lösung dafür gefunden.Es fügt einen weiteren Schritt hinzu (grunt install), aber es funktioniert.

Verwenden Sie grundsätzlich die grunt-wget Paket, um die Composer-Datei von der Download-Seite herunterzuladen.

Verwenden Sie dann dieses benutzerdefinierte Skript, um die Composer-Datei auszuführen und herunterzuladen:

module.exports = function (grunt) {
    grunt.registerTask('install-composer', function() {
        var spawn = require('child_process').spawn;
        var done = this.async();

        var php = spawn('php', ['composer-install.php'], {cwd: 'test/download'});

        php.stdout.on('data', function (data) {
            grunt.log.debug(data);
        });

        php.stderr.on('data', function (data) {
            grunt.log.error(data);
            done(false);
        });

        php.on('close', function (code) {
            done(code === 0);
        });
    });
};

'test/download' ist der Ort, an dem ich die Datei „composer.phar“ speichere und an dem ich die Datei vom Server heruntergeladen habe.Wenn Sie das ändern möchten, ändern Sie einfach das Ziel.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top