dingus

Szoftver screenshot:
dingus
Szoftver adatai:
Változat: 0.3.4
Feltöltés dátuma: 14 Apr 15
Fejlesztő: Gary Bernhardt
Engedély: Ingyenes
Népszerűség: 76

Rating: 4.0/5 (Total Votes: 3)

dingus a fajta, mint egy ál objektumot. A fő különbség az, hogy itt nem állítunk fel várakozásokat idő előtt. Te csak fuss a kódot, egy dingus helyett egy másik objektum vagy osztály, és akkor rögzíti mi történik vele. Aztán, ha a kód nem éltek, tudod, hogy állításait arról hogy mit csináltak a dingus.
Egy új dingus jön létre a Dingus osztályban. Adhat dinguses nevét, ami segít a hibakeresés a vizsgálatok, különösen akkor, ha több dinguses játékban.
& Nbsp; >>> from dingus importálni Dingus
& Nbsp; >>> d = Dingus ('root')
& Nbsp; >>> d
& Nbsp;
Hozzáférés minden attribútuma dingus visszatér egy új dingus.
& Nbsp; >>> d.something
& Nbsp;
Van azonban néhány kivétel speciális dingus módszerek. Meglátjuk, néhányan egy kicsit.
A dingus is nevezhető, mint egy függvény vagy metódus. Nem érdekel, hogy hány érvek adsz, vagy mi ezek az érvek. Kéri, hogy a dingus mindig vissza ugyanazt az objektumot, függetlenül az érveket.
& Nbsp; >>> d ()
& Nbsp;
& Nbsp; >>> d ("érv")
& Nbsp;
& Nbsp; >>> d (55)
& Nbsp;
A felvétel és állításokat
Bármikor kaphatunk egy listát a hívások, hogy tettek egy dingus. Minden bejegyzés a híváslista tartalmazza:
& Nbsp; * a módszer neve is nevezik (vagy "()", ha a dingus magát hívták)
& Nbsp; * A érveket, vagy (), ha nincs
& Nbsp; * A kulcsszó argumnets, vagy {}, ha nincs
& Nbsp; * az értéket, amelyet a hívónak
Itt van egy lista a hívások tettük, hogy d eddig:
& Nbsp; >>> from pprint import pprint
& Nbsp; >>> pprint (d.calls)
& Nbsp; [('()', (), {}, ),
& Nbsp; ("()", (az "érv",), {}, ),
& Nbsp; ("()", (55,), {}, )]
Szűrheti nevén szólít, érvek, és a kulcsszó érvek:
& Nbsp; >>> pprint (d.calls ('()', 55))
& Nbsp; [('()', (55,), {}, )]
Ha nem érdekel egy adott argumentum értékét, akkor az értéket DontCare szûrésénél:
& Nbsp; >>> from dingus importálni DontCare
& Nbsp; >>> pprint (d.calls ('()', DontCare))
& Nbsp; [('()', (az "érv",), {}, ),
& Nbsp; ("()", (55,), {}, )]
Dinguses többet tehet, mint csak azt attribútumok elérhető és hívható. Támogatják az Python szereplők. A cél az, hogy, és rögzíti, semmilyen beavatkozást:
& Nbsp; >>> d = Dingus ('root')
& Nbsp; >>> (2 ** d.something) ['hello'] () / 100 * 'ize'
& Nbsp;
(Remélhetőleg a valós dingus felvételek nem így néz ki!)
foltozása
Dingus biztosít összefüggésben vezetője folt tárgyakat a próbák során. Például:
& Nbsp; >>> from dingus import javítás
& Nbsp; >>> import urllib2
& Nbsp; >>> patch ("urllib2.urlopen"):
& Nbsp; ... print urllib2.urlopen .__ class__
& Nbsp;
& Nbsp; >>> print urllib2.urlopen .__ class__
& Nbsp;
Ön is használja ezt a dekoratőr a vizsgálati módszerek:
& Nbsp; >>>patch ("urllib2.urlopen)
& Nbsp; ... def test_something (self):
& Nbsp; ... passz
& Nbsp; ...
BALESETVESZÉLYES MAGIC
Dingus is automatikusan helyettesíti a modul globals futtatásakor tesztek. Ez lehetővé teszi, hogy írjon teljesen elszigetelt egység vizsgálatok. Lásd a példákat / urllib2 / test_urllib2.py egy példát. A szerző már nem ajánlja ezt a funkciót, mivel ösztönözheti nagyon törékeny tesztek. Meg kell érezni a fájdalmat a kézzel gúnyos függőségek; A fájdalom jelezni fogja, ha egy osztály működik együtt túl sokan vannak.

követelmények :

  • Python

Hasonló program

inFusion
inFusion

20 Feb 15

TestManager
TestManager

20 Feb 15

pyjslint
pyjslint

14 Apr 15

prego
prego

20 Feb 15

Más szoftver fejlesztő Gary Bernhardt

expecter
expecter

20 Feb 15

Hozzászólások a dingus

Hozzászólás nem található
Megjegyzés hozzáadása
Kapcsolja be a képeket!