2011-08-25 21 views
8

Chociaż narzędzia takie jak RUnit, svUnit i testthat są dobre dla twórców pakietów, myślę, że byłoby użyteczne mieć pewne sposoby przesyłania skryptów testowych, a nawet tylko przykłady użycia dla konkretnych pakietów. Użytkownicy, którzy wykonują ciągłą integrację (np. Jenkins) lub nawet podstawowe testy jednostkowe, mogą już mieć takie testy i mogą uważać za korzystne dodawanie skryptów do użytku opiekunów pakietów.Współużytkowanie skryptów testowych R

Czy taka funkcjonalność istnieje, za pośrednictwem CRAN lub RForge, lub za pośrednictwem innych witryn, takich jak github? Jeśli tak, czy istnieje poważny przykład korzystania z repozytorium, np. github, aby umożliwić użytkownikom wnoszenie testów?


(Dzięki @mariotomo za przypomnienie mi svUnit.)

+1

To naprawdę świetny pomysł dla R i innych języków. – Owen

+3

Miałem kilka osób, które przyczyniły się do testów poprzez prośby o ściągnięcie github – hadley

+1

, nie zapomnij o svUnit! :) w Jenkinsie robi się całkiem przyjemnie. – mariotomo

Odpowiedz

4

Proponuję powstrzymać się od overcomplicating rzeczy. Dlaczego nie po prostu coś takiego:

  • Spójrz na źródła danego pakietu (tzn na rforge, rforge, github ... lub prosty źródeł Cran)

  • zrozumieć jego schemat Próby (tj. katalog tests/, przykłady na stronach manualnych lub jeden z trzech szkieletów testujących urządzenia z CRAN) i

  • przyczynić się do nowych testów.

To naprawdę wszystko. To samo dotyczy dokumentacji wnoszącej wkład, skryptów demonstracyjnych, nowego kodu .... Możemy i powinniśmy skupić się na otwartym kodzie źródłowym.

+0

+1 Dobra rada. Przeoczyłem katalog 'tests /'. Chciałem, aby testy były widoczne dla innych użytkowników, niezależnie od tego, czy mają one wpływ na wydanie (np. Czy autor zamierza zmienić zachowanie, nawet jeśli niektóre testy się zepsują - widoczność dla tego jest przydatna dla innych). Zrobiłem nadzór po stronie użytkownika i nie wykorzystałem wyników 'test /' jako części fazy sprawdzania poprawności przed użyciem uaktualnionego pakietu. Dzięki za bardzo dobre przypomnienie. – Iterator

+0

Przyjemność. Twoje wezwanie do małych przyrostowych wkładów dobrze skupia się na drobnych, możliwych do podjęcia działaniach. –

+0

Jedną z pomarszczeń, którą właśnie odkryłem w małej próbce pakietów, choć kilka z nich jest krytycznych dla mojej pracy, jest to, że osoby z katalogiem 'tests /' są, najprawdopodobniej, napisane przez R Core lub przynajmniej bardzo przykładnych programistów. Reszta została napisana przez bardzo solidnych badaczy, ale mogą oni nie dysponować dużą wiedzą na temat rozwoju. Będę musiał zastanowić się, czy lepiej jest ewangelizować testy dla wielu opiekunów pakietów, czy po prostu testować pakiety w repozytorium. – Iterator

Powiązane problemy