2015-10-28 14:42 GMT+00:00 Manlio Perillo :
> Si, alla fine credo sia la cosa migliore, eseguendo il codice in un
> processo separato come suggerisci.
> Magari se ho tempo lo implemento per la mia libreria, anche se
> probabilmente non la userò molto.
> Forse usando fork/vfork (e ignorando Windows
2015-10-28 15:24 GMT+01:00 enrico franchi :
>
>
> 2015-10-28 11:38 GMT+00:00 Manlio Perillo :
>>
>>
>> > Eh... come dicevo, fanno tutti cosi', e' sensato farlo anche solo per
>> > semplificare il ragionamento ai tuoi utenti.
>> > Sebbene, a mio avviso, ancora una volta Go rompe gli schemi per fare
2015-10-28 11:38 GMT+00:00 Manlio Perillo :
>
> > Eh... come dicevo, fanno tutti cosi', e' sensato farlo anche solo per
> > semplificare il ragionamento ai tuoi utenti.
> > Sebbene, a mio avviso, ancora una volta Go rompe gli schemi per fare la
> cosa
> > giusta.
> >
>
> Go può farlo perchè è safe
2015-10-28 10:56 GMT+01:00 enrico franchi :
> [...]
>> Tempo fa avevo sviluppato una libreria per l'unit testing in C (oddio,
>> quanto codice ho che non ho mai publicato...).
>> La libreria usa il protocollo TAP, eppure avevo deciso di interrompere
>> l'esecuzione della funzione di test
>> in caso
2015-10-27 19:29 GMT+00:00 Manlio Perillo :
> 2015-10-27 15:51 GMT+01:00 enrico franchi :
> > [...]
> >> La libreria standard di Go usa questo metodo, ed in effetti può essere
> >> visto come un problema.
> >
> >
> > In realta' non lo e'. Il punto e' che tutto questo discorso dei test e'
> nato
>
2015-10-27 15:51 GMT+01:00 enrico franchi :
> [...]
>> La libreria standard di Go usa questo metodo, ed in effetti può essere
>> visto come un problema.
>
>
> In realta' non lo e'. Il punto e' che tutto questo discorso dei test e' nato
> attorno ad una primitiva come assert che quando hai un proble
On Tue, Oct 27, 2015 at 1:30 PM, Manlio Perillo
wrote:
>
> Bello, non lo conoscevo; grazie.
> In effetti io uso solo unittest standard.
>
https://github.com/rik0/ParamUnittest
Feel free to contribute.
Che io sappia ci sono solo un paio di magagne se hai ereditarieta'
complicata nei TestCase.
On Tue, Oct 27, 2015 at 1:47 PM, enrico franchi
wrote:
>
> 2015-10-26 19:31 GMT+00:00 Manlio Perillo :
>>
>> Per testare funzioni come somma di solito è preferibile usare una
>> tabella con l'input e l'output corretto; ad esempio:
>>
>> table = [ ((1, 2, 3), 5), ((3, 5, 7), 15), ...]
>>
>> def tes
2015-10-26 19:31 GMT+00:00 Manlio Perillo :
> Per testare funzioni come somma di solito è preferibile usare una
> tabella con l'input e l'output corretto; ad esempio:
>
> table = [ ((1, 2, 3), 5), ((3, 5, 7), 15), ...]
>
> def test_somma():
> for in, out in table:
> cc = CC(*in)
>
Il 27/10/2015 13:40, Manlio Perillo ha scritto:
Ti ho detto che non devi usare la classe in questo modo!
https://docs.python.org/2/tutorial
La classe la devi*instanziare*.
Pian piano si impara
Grazie dell'aiuto
M
___
Python mailing list
Python@lists.p
2015-10-27 11:47 GMT+01:00 Perini Matteo :
> Il 26/10/2015 21:31, Manlio Perillo ha scritto:
>>
> [...]
> class CC():
> def __init__(self):
> self.a = 2
> self.b = 4
> self.c = 5
> def menouno(self,x):
> return x-1
> def somma(self):
> return self
Il giorno 27 ottobre 2015 11:47, Perini Matteo ha
scritto:
> from pt import CC
>
> def test_somma():
> CC.__init__(CC)
> assert CC.somma(CC)==10
Occhio che anche il test deve essere codice Python buono! :)
Prova, ad esempio, a creare all'interno di test_somma una istanza valida di
CC e
Il 26/10/2015 21:31, Manlio Perillo ha scritto:
Un ultimo consiglio.
Per testare funzioni come somma di solito è preferibile usare una
tabella con l'input e l'output corretto; ad esempio:
Fatto! grazie
Ora però ho un altro problema che non riesco a risolvere.
Riporto l'esempio di prima con il n
2015-10-26 20:02 GMT+01:00 Perini Matteo :
> Il 26/10/2015 20:02, Manlio Perillo ha scritto:
> [...]
>>
>> E' l'unico modo di fare unit test.
>> Il problema è che quel codice è sbagliato; non è il modo corretto di
>> usare le classi!
>>
>> Il modo corretto è:
>>
>> def test_somma():
>> cc = CC
Il 26/10/2015 20:02, Manlio Perillo ha scritto:
test_somma **non** va messo nel modulo principale, ma nel modulo di test.
Ovvio che non lo trova.
Laggi la documentazione di pytest per vedere come vengono trovate le
funzioni di test.
OK!
E' l'unico modo di fare unit test.
Il problema è che quel
2015-10-26 18:39 GMT+01:00 Perini Matteo :
> Il 26/10/2015 18:56, Manlio Perillo ha scritto:
> [...]
> class CC():
> def __init__(self):
> self.a = 2
> self.b = 4
> self.c = 5
>
> def somma(self):
> return self.a+self.b+self.c
> def test_somma():
>
Il 26 ottobre 2015 18:39, Perini Matteo ha scritto:
Ciao.
Forse sarebbe più sensato, al posto di:
> class CC():
> def __init__(self):
> self.a = 2
> self.b = 4
> self.c = 5
definire __init__ in questo modo:
def __init__(self, a, b, c):
self.a = a
Il 26/10/2015 18:56, Manlio Perillo ha scritto:
Io non vedo il senso di quello che vuoi fare...
Ok scusate... forse riesco a chiarire!
se ho questo codice (pt.py):
#!/usr/bin/env python3
# -*- coding: utf-8 -*-
import numpy as np
def plusone(x):
return x+1
class CC():
def __init__(s
2015-10-26 17:32 GMT+01:00 Perini Matteo :
> Ciao,
> sto iniziando ad usare pytest.
> Probabilmente mi sto perdendo in un bicchier d'acqua ma ho grossi problemi
> con il passaggio di parametri alle funzioni di test.
> Faccio un esempio che forse è più facile
>
> Ipotizziamo un file (xxx.py) fatto c
Ciao,
sto iniziando ad usare pytest.
Probabilmente mi sto perdendo in un bicchier d'acqua ma ho grossi
problemi con il passaggio di parametri alle funzioni di test.
Faccio un esempio che forse è più facile
Ipotizziamo un file (xxx.py) fatto così:
#!/usr/bin/env python3
# -*- coding: utf-8 -*-
20 matches
Mail list logo