[Python] ANN: pytest-nodev v0.9.3 - Test-driven code search

Alessandro Amici alexamici a gmail.com
Gio 25 Feb 2016 14:57:36 CET


Valerio,

On Thu, 25 Feb 2016 at 13:46 Valerio Maggio <valerio.maggio a 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
-------------- parte successiva --------------
Un allegato HTML è stato rimosso...
URL: <http://lists.python.it/pipermail/python/attachments/20160225/c8de2360/attachment.html>


Maggiori informazioni sulla lista Python