2011-08-25 9 views
8

Sebbene strumenti come RUnit, svUnit e testthat siano utili per gli sviluppatori di pacchetti, penso che sarebbe utile disporre di alcuni metodi per caricare script di test o anche solo esempi di utilizzo per pacchetti particolari. Gli utenti che eseguono l'integrazione continua (ad es. Jenkins) o persino i test di unità di base potrebbero già avere tali test e potrebbero trovare utile inserire script per l'uso dei manutentori dei pacchetti.Contribuire agli script di test R

Esiste tale funzionalità, tramite CRAN o RForge, o tramite altri siti, come github? Se è così, c'è un importante esempio di utilizzo di un repository, ad es. github, per consentire agli utenti di fornire test?


(Grazie a @mariotomo per avermi ricordato di svUnit.)

+1

Questa è davvero una buona idea, per R e per altre lingue. – Owen

+3

Ho avuto alcune persone che hanno contribuito a test tramite richieste pull su github – hadley

+1

non dimenticare svUnit! :) fa abbastanza bene all'interno di Jenkins. – mariotomo

risposta

4

vorrei suggerire di non complicare le cose. Perché non solo qualcosa di simile:

  • Guarda le fonti di un determinato pacchetto (cioè sulla rforge, rforge, GitHub, ... o fonti CRAN rette),

  • capire il suo schema di collaudi (ovvero la directory tests/, esempi nelle pagine di manuale o uno dei tre framework di test dell'unità da CRAN) e

  • contribuire con nuovi test.

Questo è davvero tutto quello che c'è. Lo stesso vale per documentazione di supporto, script dimostrativi, nuovo codice, .... Possiamo e dovremmo concentrarci sullo aperto in open source.

+0

+1 Buon consiglio. Avevo trascurato la directory 'tests /'. Avevo voluto che i test fossero visibili anche agli altri utenti, indipendentemente dal fatto che influissero o meno sul rilascio (ad esempio se l'autore intende modificare il comportamento, anche se alcuni test si interrompono, la visibilità è utile per gli altri). Ho fatto una supervisione sul lato utente e non ho integrato i risultati 'test /' come parte della fase di convalida prima di utilizzare un pacchetto aggiornato. Grazie per un ottimo promemoria. – Iterator

+0

Piacere. La vostra richiesta di piccoli contributi incrementali è buona nel suo focalizzarsi su cose piccole e attuabili. –

+0

Una ruga che ho appena scoperto in un piccolo campione di pacchetti, anche se diversi che sono fondamentali per il mio lavoro, è che quelli con una directory 'tests /' sono, molto probabilmente, scritti da R Core o almeno da sviluppatori molto esemplari. Il resto è stato scritto da ricercatori molto solidi, ma potrebbero non avere molta esperienza nello sviluppo. Dovrò chiedermi se è meglio evangelizzare i test su molti manutentori di pacchetti o semplicemente pubblicare test per un gruppo di pacchetti in un repository. – Iterator