ฉันได้เริ่มทำงานกับโปรเจ็กต์ Python ที่ค่อนข้างใหญ่ (มัลติเธรด) พร้อมการทดสอบ (หน่วย) มากมาย ปัญหาที่สำคัญที่สุดคือการเรียกใช้แอปพลิเคชันต้องใช้สภาพแวดล้อมที่กำหนดไว้ล่วงหน้าซึ่งดำเนินการโดยผู้จัดการบริบท จนถึงตอนนี้เราได้ใช้โปรแกรมวิ่งทดสอบหน่วยเวอร์ชันที่ได้รับการแก้ไขแล้วซึ่งจะเรียกใช้การทดสอบภายในตัวจัดการนี้ แต่ไม่อนุญาตให้สลับบริบทระหว่างโมดูลทดสอบต่างๆ
ทั้งจมูกและ pytest สนับสนุนสิ่งนี้เนื่องจากรองรับการติดตั้งที่รายละเอียดต่างๆดังนั้นเราจึงกำลังมองหาการเปลี่ยนไปใช้จมูกหรือ pytest ไลบรารีทั้งสองนี้ยังรองรับการทดสอบ 'การแท็ก' และเรียกใช้เฉพาะส่วนย่อยที่ติดแท็กเหล่านี้ซึ่งเป็นสิ่งที่เราต้องการทำเช่นกัน
ฉันได้ดูเอกสารของทั้ง nose และ pytest เล็กน้อยและเท่าที่ฉันเห็นส่วนที่ใหญ่กว่าของไลบรารีเหล่านั้นสนับสนุนฟังก์ชันการทำงานเดียวกันเป็นหลักยกเว้นว่าอาจมีชื่อแตกต่างกันหรือต้องการไวยากรณ์ที่แตกต่างกันเล็กน้อย นอกจากนี้ฉันสังเกตเห็นความแตกต่างเล็กน้อยในปลั๊กอินที่มีอยู่ (จมูกมีการสนับสนุนหลายกระบวนการเช่น pytest ดูเหมือนจะไม่)
ดูเหมือนว่าปีศาจจะอยู่ในรายละเอียดซึ่งหมายถึง (อย่างน้อยที่สุด) ด้วยรสนิยมส่วนตัวและเราควรไปกับห้องสมุดที่เหมาะกับรสนิยมส่วนตัวของเราที่สุด
ดังนั้นฉันจะขอการโต้แย้งโดยอัตวิสัยว่าทำไมฉันควรใช้จมูกหรือ pytest เพื่อเลือกคอมโบห้องสมุด / ชุมชนที่เหมาะกับความต้องการของเรามากที่สุด