kärsä on Nokkajatko joka helpottaa korkeampi testaus.
Muutokset miten testi luokat löysi pakottamalla heitä rekisteröitymään kautta sisustajille, jotka sisältävät hyödyllisiä metatietoja kuten mitä ryhmiä he ovat, ovatko ne riippuvuuksia muita testejä, ja jos ne pitäisi ottaa huomioon.
Kärsä lajittelee kaikki rekisteröityneet testit haluttuun ajaa jotta sitten rakentaa testisarja, jonka se kulkee nenä. Se voi myös suodattaa luetteloa niin, että se on mahdollista määrittää, mitkä ryhmät testien haluat ajaa kulkematta tarkka testi luokat. Suorituksen testit, jotka riippuvat muita testejä, jotka eivät ole automaattisesti merkitty ohitetaan.
Suuri osa tästä toiminnallisuus "innoittamana" by testng. Jos olet lähtöisin, että puitteet, pääpiirteet kärsä hetkellä tarjoukset ovat riippuvaisia testi tilaaminen (tällä hetkellä rajoitettu luokan taso) ja kyky järjestää testit ryhmiin riippumaton rakenteesta moduuleja tai paketteja.
Kun kärsä on mahdollista kirjoittaa testejä, jotka riippuvat verkkopalvelun (tai jokin muu riippuvuus haluat vain alustaa kerran) näin:
test (ryhmät = ["service.tests"], depends_on_groups = ["service.initialization"])
& Nbsp; & nbsp; & nbsp; luokan WhenConnectingAsAdmin (unittest.TestCase):
& Nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; def test_change_profile_image (itse):
& Nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; self.client = mymodule.ServiceClient (service_config)
& Nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; self.assertEquals ("default.jpg", self.client.get_profile_image ())
& Nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; self.client.set_profile_image ("spam.jpg")
& Nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; self.assertEquals ("spam.jpg", self.client.get_profile_image ())
Sitten kirjoittaa koodia aloittaa ja siististi sammuttaa että verkkopalvelua muita moduuli ensimmäisen luokan testi itse:
test (ryhmät = ["service.initialization"])
& Nbsp; & nbsp; & nbsp; luokan StartWebServer (unittest.TestCase):
& Nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; def test_start (itse):
& Nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; # Käynnistä web-palvelin, sitten antaa connect.
& Nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; mymodule.start_web_server ()
& Nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; asiakas = mymodule.ServiceClient (service_config)
& Nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; self.assertTrue (client.service_is_up)
& Nbsp; & nbsp; & nbsp; test (ryhmät = ["service.shutdown"]
& Nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; depends_on_groups = ["service.initialization", "service.tests"],
& Nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; never_skip = True)
& Nbsp; & nbsp; & nbsp; luokan StopService (unittest.TestCase):
& Nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; def test_stop (itse):
& Nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; asiakas = mymodule.ServiceClient (service_config)
& Nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; jos client.service_is_up:
& Nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; mymodule.stop_web_server ()
& Nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; self.assertFalse (client.service_is_up ())
Käyttämällä kärsä voit olla varma testit suorittaa halutussa järjestyksessä, vaikka lisäät testi luokat, muuttaa nimensä, tai siirrä ne eri moduuleista.
Vaatimukset :
- Python
- nenä
Kommentteja ei löytynyt