2015-10-26 17:32 GMT+01:00 Perini Matteo <perini.mat...@gmail.com>: > 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 -*- > > import numpy as np > > def plusone(x): > return x+1 > > class CC(): > self.a = 2 > self.b = 4 > self.c = 5 > > def somma(self): > return self.a+self.b+self.c > > somma()
L'indentazione non è corretta; cosa stai facendo esattamente? > > ------------------- > Come faccio a testare la funzione somma? Scrivi una funzione di test, tipo `test_somma`, e chiami la funzione somma con diversi parametri di input e controlli che l'output sia corretto. > L'unico modo che ho trovato è stato quello di cambiare la funzione della > classe così: > > def somma(self,a,b,c): > self.a=a > self.b=b > self.c=c > return self.a+self.b+self.c > somma(CC,self.a,self.b,self.c) > > ma mi sembra una complicazione inutile. Io non vedo il senso di quello che vuoi fare... > > Ho un file esterno per richiamare tutti i test_xxx.py fatto così: > > from xxx import * > from xxx import CC > > > def test_somma(): > assert somma(2,3,3)==8 > > > Il test funziona ma non mi sembra proprio il modo giusto di operare > È l'unico modo. Ah, e **cerca** di evitare * nell'import. Ciao Manlio _______________________________________________ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python