งวงเป็นส่วนขยายของจมูกที่อำนวยความสะดวกการทดสอบระดับที่สูงขึ้น
การเปลี่ยนแปลงวิธีการเรียนการทดสอบได้รับการค้นพบโดยบังคับให้พวกเขาในการลงทะเบียนผ่านทางตกแต่งที่มีเมตาดาต้าที่มีประโยชน์เช่นกลุ่มสิ่งที่พวกเขาอยู่ในหรือไม่พวกเขามีการอ้างอิงในการทดสอบอื่น ๆ และถ้าพวกเขาควรละเลย
ทุกประเภทงวงทดสอบที่ลงทะเบียนทั้งหมดเป็นเพื่อการทำงานที่ต้องการแล้วสร้างชุดทดสอบที่มันผ่านไปจมูก นอกจากนี้ยังสามารถกรองรายการนี้เพื่อให้ว่ามันเป็นไปได้ที่จะระบุว่ากลุ่มของการทดสอบที่คุณต้องการเพื่อให้ทำงานได้โดยไม่ต้องผ่านในชั้นเรียนการทดสอบที่แน่นอน ที่รันไทม์การทดสอบซึ่งขึ้นอยู่กับการทดสอบอื่น ๆ ที่ล้มเหลวมีการทำเครื่องหมายโดยอัตโนมัติข้ามเป็น
มากของการทำงานนี้คือ "แรงบันดาลใจ" โดย TestNG ถ้าคุณมาจากกรอบที่คุณสมบัติหลักงวงขณะนี้มีการสั่งซื้อจะขึ้นอยู่กับการทดสอบ (จำกัด อยู่ในปัจจุบันในระดับชั้น) และความสามารถในการจัดให้มีการทดสอบของคุณลงในกลุ่มที่เป็นอิสระจากโครงสร้างของโมดูลของพวกเขาหรือแพคเกจ
ด้วยงวงมันเป็นไปได้ที่จะเขียนการทดสอบซึ่งขึ้นอยู่กับบริการเว็บ (หรือบางพึ่งพาอื่น ๆ ที่คุณต้องการที่จะเริ่มต้นเพียงครั้งเดียว) เช่นนี้
@test (กลุ่ม = ["service.tests"], depends_on_groups = ["service.initialization"])
& nbsp; & nbsp; & nbsp; ชั้น WhenConnectingAsAdmin (unittest.TestCase):
& nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; def test_change_profile_image (ตัวเอง):
& 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 ())
แล้วเขียนโค้ดที่จะเริ่มต้นและหมดจดปิดที่บริการเว็บในโมดูลอื่นใดตามที่ทดสอบชั้นแรกของตัวเอง:
@test (กลุ่ม = ["service.initialization"])
& nbsp; & nbsp; & nbsp; ชั้น StartWebServer (unittest.TestCase):
& nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; def test_start (ตัวเอง):
& nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; # เริ่มขึ้นเว็บเซิร์ฟเวอร์แล้วปัญหาการเชื่อมต่อ
& 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; ลูกค้า = 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 (กลุ่ม = ["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; ชั้น StopService (unittest.TestCase):
& nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; def test_stop (ตัวเอง):
& nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; ลูกค้า = mymodule.ServiceClient (service_config)
& nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; ถ้า 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 ())
ใช้งวงคุณสามารถมั่นใจได้การทดสอบจะดำเนินการในการสั่งซื้อที่ต้องการแม้ว่าคุณจะเพิ่มการเรียนการทดสอบเพิ่มเติมเปลี่ยนชื่อของพวกเขาหรือย้ายไปยังโมดูลที่แตกต่างกัน
ต้องการ .
- หลาม
- จมูก
ความคิดเห็นที่ไม่พบ