Kiedy szydząc zależności węźle Ja się na następujących bibliotek:Proxyquire, ReWire, SandboxedModule i Sinon: plusy i minusy
Wszystkie wydają się robić mniej więcej to samo: allo w kpić z połączeń require()
(z wyjątkiem Sinona, który kpi prawie ze wszystkiego). Wszystkie wydają się wymagać dość skomplikowanej konfiguracji, zwracając uwagę na dokładną składnię łańcucha przekazanego do require
- niezbyt dobrą podczas refaktoryzacji.
Jakie są plusy i minusy każdej biblioteki? Kiedy wybrałbym jedną nad drugą? Jakie są przykładowe przypadki użycia, w których każda biblioteka jest doskonała? Jakie są inne produkty w tej przestrzeni, które są lepsze?
Zupełnie nie oszukiwać - samoodpowiadają się świetnie! –
Czy masz pomysł z góry, jak ważny jest "koszt wydajności za test"? Czy ktoś zrobił jakieś testy perfekcyjne? Używamy SandboxedModule i wydaje się bardzo powolny. Używałem proxyquire przed i lubię to. Zastanawiasz się, czy warto się zmienić. – tandrewnichols
Nie przeprowadziłem między nimi perfekcyjnych testów, ale przekonwertowałem kod z Sandboxed na Proxyquire (aby obejść błąd v1.0) i przypadkowo uzyskałem bardzo znaczące zyski wydajności. – robrich