2013-05-08 12 views
15

Obecnie używam PhantomJS do uruchamiania testów jednostek JavaScript w frameworkach QUnit i Sinon na naszym serwerze kompilacji.Testowanie jednostek Javy za pomocą V8

Ale PhantomJS używa JavaScriptCore z kompilatorem JIT jako silnikiem JavaScript. Zamiast tego chcę użyć silnika V8, który jest używany w Google Chrome, lub Chakra, który jest używany w IE. Chcę to zrobić, ponieważ chcę sprawdzić zgodność platformy z kodem.

Czy są dostępne popularne testery, takie jak PhantomJS, które korzystają z tych silników?

Odpowiedz

11

Najbliższym, o czym mogę pomyśleć, jest Zombie.js, czyli przeglądarka bez nagłówka napisana w Javascript, która działa pod Node.js.

To nie jest prawdziwa przeglądarka w taki sposób, w jaki jest Phantom, więc są rzeczy, których nie możesz z nią zrobić, ale możesz używać Phantoma, ale ponieważ używa on Node.js, to oczywiście używa Silnik V8, więc spełnia twoje kryteria.

Ale jeśli naprawdę chcesz przetestować wszystkie przeglądarki w różnych silnikach, twoja druga opcja to oczywiście użycie prawdziwej przeglądarki. Nie musisz mieć widocznego dla niego interfejsu; użyj narzędzia takiego jak Selenium lub Sahi, które może uruchamiać i uruchamiać przeglądarkę ze skryptu i uruchamiać ją na maszynie wirtualnej; nie musisz nawet na niego patrzeć. To nie może być tak szybkie jak przy użyciu fantomu ale to będzie prawdziwy sprawdzian, który jest wyraźnie co jesteś naprawdę zainteresowany.

[EDIT]
Warto dodać notatkę do tej odpowiedzi, bo niedawno dowiedziałem się o SlimerJS, który jest projektem open source mającym na celu stworzenie przeglądarki zgodnej z PhantomJS, która używa silnika Gecko. Ponownie, nie jest to dokładnie to, o co pytano w pytaniu, ale jest zgodne z duchem; wspaniale jest mieć inne narzędzie ułatwiające testowanie między platformami.