Valerio, On Thu, 25 Feb 2016 at 13:46 Valerio Maggio <valerio.mag...@gmail.com> wrote:
> Si avevo guardato il QuickStart.. Se ho capito bene quello che realizzi > con il tuo plugin è di cercare una funzione Python che implementi il > comportamento specificato nel test, giusto ? > Esatto. In altri termini: il test serve da specifica e il plugin cerca (in stdlib o > site-packages) una funzione che implementa quella specifica. > > La mia domanda era: questo matching sul comportamento come lo hai > formalizzato/implementato/tradotto nel tuo plugin? > Provo a fare una ipotesi: come la funzione che passa tutti (o parzialmente) > i test della specifica? Quasi completamente esatto, il plugin esegue ciascuno dei test passando come `wish` una per una tutte le funzioni che riesce a trovare in locale (le varie opzioni servono ad aumentare o ridurre lo spazio di ricerca) e nel summary vengono riportate tutte le funzioni che passano ciascun test. In questa maniera è possibile realizzare specifiche più o meno stringenti, all'interno della stessa test suite (vedi sempre test_rfc3986_parse.py [1] per un esempio). Ovviamente trattandosi di una tecnica piuttosto nuova è importante scrivere buona documentazione e è quello su cui mi sto impegnando ora. Ci sono articoli accademici pubblicati a riguardo, ma non credo ci sia niente di divulgativo, di solito la tecnica viene chiamata test-driven search o test-driven reuse. Alessandro [1] https://github.com/nodev-io/nodev-tutorial/blob/master/tests/test_rfc3986_parse.py
_______________________________________________ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python