expecter ay tumutulong sa iyo na magsulat ng assertions. Huwag kailanman muli ikaw ay kalimutan na inaasahan at kung ano ang aktwal na!
Pangunahing mga inaasahan ay madali:
& Nbsp; >>> mula expecter import inaasahan
& Nbsp; >>> inaasahan ('ilang' + 'bagay') == 'isang bagay'
& Nbsp; inaasahan ('isang bagay')
& Nbsp; >>> inaasahan (1)> 100
& Nbsp; Traceback (pinakahuling tawag huling):
& Nbsp; ...
& Nbsp; AssertionError: Inaasahang isang bagay na mas malaki sa 100 ngunit Nakakuha 1
Basahin lamang ang mga inaasahan tulad ng isang pangungusap. "Inaasahan (2) == 1 + 1" bumabasa ng "Asahan 2-pantay na 1 + 1". Malinaw, ang pag-asa ay tungkol sa 2, at ang pagkaka ay kumpara sa 1 + 1. Walang kalabuan!
pagbubukod
Mga inaasahan tungkol sa pagbubukod gamitin ang pahayag na "may". Ang lahat ay mabuti kung ang mga inaasahang pagbubukod ay tinataas:
& Nbsp; >>> mula __future__ with_statement pag-import
& Nbsp; >>> may expect.raises (KeyError):
& Nbsp; ... {} [123]
Kung hindi ito itinaas, itataas Expecter Gadget ng AssertionError:
& Nbsp; >>> may expect.raises (KeyError):
& Nbsp; ... pass
& Nbsp; Traceback (pinakahuling tawag huling):
& Nbsp; ...
& Nbsp; AssertionError: Inaasahang ng pagbubukod ng uri KeyError ngunit mayroon none
Mga Pagbubukod na hindi tumutugma sa mga inaasahan ang isa ay hindi kinain, kaya ang iyong pagsubok ay error tulad ng iyong inaasahan:
& Nbsp; >>> mula __future__ with_statement pag-import
& Nbsp; >>> may expect.raises (NameError):
& Nbsp; ... {} [123]
& Nbsp; Traceback (pinakahuling tawag huling):
& Nbsp; ...
& Nbsp; KeyError: 123
CUSTOM INAASAHAN
Maaari kang magdagdag ng custom na pag-asa sa mga pamamaraan add_expectation. Bigyan mo ito ng isang tambalan na dapat nagbabalik ng tunay na kung ang pag-asang magtagumpay at hindi totoo kung nabigo ito. Ang lahat ng mga bagay-asa ay lalaki ang isang pamamaraan na may pangalan ng iyong paraan ng tambalan (kaya huwag gumamit ng lambda). Tama lang sa pagbubukod ng mga mensahe ay mabubuo kapag nabigo ang iyong tambalan:
& Nbsp; >>> import expecter
& Nbsp; >>> def can_meow (bagay):
& Nbsp; ... balik bagay == 'Kitty'
& Nbsp; >>> expecter.add_expectation (can_meow)
& Nbsp; >>> inaasahan ('Kitty') can_meow ().
& Nbsp; >>> inaasahan ('tuta') can_meow ().
& Nbsp; Traceback (pinakahuling tawag huling):
& Nbsp; ...
& Nbsp; AssertionError: Inaasahang na 'tuta' can_meow, ngunit hindi maaaring
Mga Kinakailangan :
- Python
Mga Komento hindi natagpuan