Jak zacząć pisanie narzędzie pokrycia kodu?

głosy
20

Szukam książek lub innych odniesień, które mówią faktycznie jak napisać narzędzie pokrycia kodu w Javie; niektóre z różnych technik i sztuczek - źródło vs. instrumentacji kodu bajtowego.

To jest dla języka skryptowego, który generuje kod bajtowy Java pod maską.

Utwórz 05/08/2008 o 12:15
źródło użytkownik
W innych językach...                            


5 odpowiedzi

głosy
2

Thxm, Mc! http://asm.objectweb.org / jest jeszcze jeden. Doskonała dokumentacja instrumentacji kodu bajtowego, ale nic „bezpośrednio” na celu pisanie narzędzie pokrycie - tylko kilka wskazówek i pomysłów.

Odpowiedział 05/08/2008 o 13:50
źródło użytkownik

głosy
7

Czy Twój język skryptowy generowania kodu bajtowego? Czy to generować metadane debugowania? Jeśli tak, oprzyrządowanie kod bajtowy jest chyba do zrobienia. W rzeczywistości istniejące narzędzia, takie jak prawdopodobnie będzie działać; być może przy minimalnej modyfikacji (typowy problem to narzędzia są zapisywane do pracy z Java i zakładamy com.foo.Bar.class odpowiada com / foo / Bar.java. odwijanie to założenie może być uciążliwe.) EMMA jest ClassLoader że robi byte-code ponowne pisanie do odbioru kodu pokrycia w Javie. Styl kodowania jest trochę funky, ale polecam czytanie źródło dla niektórych pomysłów.

Jeśli język skryptowy jest interpretowany następnie trzeba będzie coś na wyższym poziomie (poziom źródło), który przechwytuje do tłumacza.

Odpowiedział 10/08/2008 o 08:19
źródło użytkownik

głosy
1

Można również uzyskać źródło z pomocą Otwórz kod źródłowy narzędzia pokrycia i uczyć się od niego.

Odpowiedział 12/08/2008 o 18:58
źródło użytkownik

głosy
2

Można również użyć coś takiego BCEL do analizy, które linie źródła rzeczywiście istnieje w bajtowego kodu. Nie chcesz zgłosić, że rzeczy takie jak puste linie i komentarze nie zostały pokryte.

Odpowiedział 15/09/2008 o 19:36
źródło użytkownik

głosy
2

Jeśli mówisz ColdFusion (co zakładam jesteś z tagami) to nie jestem pewien, że to jest wykonalne, ale może być bardzo źle mi tu ...

IIRC, gdy CF kompiluje go zasadniczo kompiluje interpretowany w postaci CFML jako zwykły stary plik źródłowy Java, to następnie kompilowany do klasy. Dlatego każde oprzyrządowanie, że być może trzeba będzie zastosować do wersji pośredniczącego zamiast samego CFML.

Mówiąc, że choć, Adobe mam teraz CF debuggera, które mogą zwiększyć chociaż kod, więc proszę udowodnić mi źle - Chciałbym pokrycia kodu w CFML.

Odpowiedział 06/11/2008 o 00:48
źródło użytkownik

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more