Domanda

vorrei confezionare PHPUnit e varie altre dipendenze di prova in un phar e inserirla nel svn. In questo modo posso correre phpunit su qualsiasi macchina client senza bisogno di pera. questo può essere fatto?

È stato utile?

Soluzione

Stato attuale:

Lavorare su una phpunit.phar è iniziata nel phpunit repo , ma il phar generato non è stabile e non completa funzionalità.

Se si arriva ci saranno comunicati ufficiali


risposta originale:

Se si può io ti darò 500 rep, a 100 dollari e il mio primo nato .. beh .. non solo le prime due.

Per essere gravi:

Ho tormentava il creatore di PHPUnit su questo argomento su almeno 3 conferenze subito e bene .. non mi sembra come se fosse possibile.

Ci sono un paio di problemi con questo. Prima di tutto PHPUnit spawn nuovi processi php per l'isolamento di prova. Il problema di questo è che un phar non può dire che eseguibile php chiamato. Quindi, se si inizia con PHPUnit una versione compilata personalizzato sarebbe utilizzare il php "default" installato a deporre le uova le prove isolate.

In secondo luogo, per quanto ne so e è stato detto che non è possibile mettere i file statici, come immagini e CSS in un phar. Il che rende la generazione di copertura del codice molto più difficile. Ciò richiederebbe un certo lavoro da quella parte.

Ci sono altre questioni che posso non ricordo esattamente ricordo destra che hanno a che fare con xDebug essere in grado di fornire una copertura di codice per Phars (e phpunit basandosi su eccedenza non genera per il suo proprio codice e così) e altri cose.

There once was a phar ma dalla mia comprensione che proprio non funziona con la attuale stato di PHPUnit e mai davvero hanno lavorato completamente.


Non sto dicendo che non si può fare solo che diverse persone hanno già rinunciato a creare una phpunit.phar tra cui il ragazzo come lo sviluppa. (Questa è solo una mia impressione, io ovviamente non posso parlare a nome di Sebastian qui e potrebbe essere completamente sbagliato, prendere questo come un po 'di responsabilità)

Mettere PHPUnit in SVN

Non c'è bisogno di costruire un .phar di farlo!

Per la mia azienda ho mantenere una versione svnd di PHPUnit. Non è il metodo consigliato di usarlo ma funziona senza troppi problemi!

"using from a git checkout" istruzioni sul sito phpunit github . È quindi necessario mettere i file nel vostro php percorso di inclusione e funziona.

Il mio suggerimento sarebbe quello di creare un phpunit.sh personalizzata che modifica il percorso comprendono e quindi chiama il phpunit.sh originale passando tutti gli argomenti. E 'un po' di lavoro, ma funziona abbastanza bene ed è un inferno di una partita più facile che creare un archivio phar:)

Altri suggerimenti

nuova pagina PHPUnit :

Distribuiamo una PHP Archive (PHAR) che contiene tutto il necessario per poter usare PHPUnit. Basta scaricarlo da qui , renderlo eseguibile, e metterlo in $ PATH, per esempio. .....

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top