2012-01-18 5 views
5

Chcę zmapować dużą liczbę testów (rspec, test-unit, ogórek, selen itp.) Na podstawie bardzo dużej (RoR) kodu i szukać skrzyżowań i zakładek w próbie zmniejszyć liczbę przeprowadzanych testów, jednocześnie utrzymując zasięg kodu. Spojrzałem na SimpleCov (na: Ruby test coverage tool) i nie jest wystarczająco obszerne.Narzędzie do mapowania pokrycia testowego Ruby

Na marginesie, kolega wspomniał o wtyczce Hudsona, która może być tym, czego szukam, ale nie pamiętam jej nazwy, a niektóre podstawowe wyszukiwania nie przyniosły żadnych pożytecznych rezultatów.

Dzięki! -j

+0

Hudson został przemianowany na Jenkins jakiś czas temu. Jest to serwer ciągłej integracji. Może * przeprowadzić * testy zasięgu dla ciebie, ale nie ma żadnych innych. –

+0

Ponieważ 'simplecov' jest tak standardem, dobrze byłoby, gdybyś określił swoje założenia o tym, co czyni go" nie rozległym ". –

+0

Moje założenia, że ​​to" nie jest rozszerzeniem * wystarczającym * ", to to, że nie robi tego, co ja". Zamierzam zrobić, z tego, co widzę. Używam SimpleCov w całej mojej osobistej pracy i na stronie, o której wspomniałem powyżej i jest to świetne narzędzie, to po prostu nie rozwiązuje problemu, który próbuję w moim OP. – jmervine

Odpowiedz

1

Wygląda na to, że podstawową odpowiedzią jest to, że tak naprawdę nic tam nie ma, przynajmniej nie mogłem znaleźć. Jednak w przypadku większości aplikacji iw większości przypadków SimpleCov jest tym, czego szukają ludzie.

1

dlaczego nie jest wystarczająco prostym?

Można spojrzeć na to, co simplecov używa poniżej: http://www.ruby-doc.org/stdlib-1.9.3/libdoc/coverage/rdoc/Coverage.html

SimpleCov jest tylko przy użyciu API dodaną w Ruby 1.9.

+0

Szczerze mówiąc, nie byłem zaznajomiony z SimpleCov (którego używamy) w momencie zadawania tego pytania. To powiedziawszy, biorąc pod uwagę pierwszy problem, o którym wspomniałem, SimpleCov go nie rozwiązuje. Przynajmniej nie z tego, co widziałem. Szukam czegoś, co mogę wpaść na najwyższym poziomie, i wyraźnie zidentyfikować nakładające się testy i zidentyfikować testy, które można usunąć bez utraty zasięgu. Wkopię się nieco głębiej w "cover.so" i zobaczę, czy czegoś tam brakuje. Dzięki! – jmervine

+1

Problem polega na tym, że kiedy zdecydujesz, że dwa testy się pokrywają? dwa testy mogą wykonać ten sam kod bez nakładania się na siebie, trudno jest wszystko wyizolować i nie zawsze jest to dobre. Naprawdę wątpię, że wszystko, co w pełni zautomatyzowane, naprawdę może ci powiedzieć. – Schmurfy

+0

zgodził się, zaczyna myśleć, czego szukam nie istnieje, ponieważ nie jest to dokładnie możliwe. Dzięki! – jmervine