Quando beffardo dipendenze Nodo, mi è capitato sulle seguenti librerie:Proxyquire, ricollegare, SandboxedModule, e Sinon: pro e contro
Tutti sembrano fare più o meno la stessa cosa: allo vuoi prendere in giro le chiamate require()
(con l'eccezione di Sinon che prende in giro praticamente tutto). Sembrano tutti richiedere un setup piuttosto elaborato, notando l'esatta sintassi della stringa passata a require
- non eccezionale durante il refactoring.
Quali sono i pro e i contro di ciascuna libreria? Quando dovrei scegliere l'uno rispetto all'altro? Quali sono i casi d'uso d'esempio in cui ogni biblioteca eccelle? Quali sono gli altri prodotti in questo spazio che sono migliori?
Totalmente non barare - le risposte di sé sono fantastiche! –
Hai idea di quanto sia significativo il "costo di prestazione per test"? O qualcuno ha fatto qualche perf-test? Usiamo SandboxedModule e sembra molto lento. Ho usato proxyquire prima e mi piace. Mi chiedo se valga la pena lo sforzo di dev di cambiare. – tandrewnichols
Non ho eseguito test di perf tra di loro, ma ho convertito una base di codice da Sandboxed a Proxyquire (per aggirare il bug v1.0) e ho accidentalmente prodotto guadagni di prestazioni molto significativi. – robrich