2
ล้อเลียนชั้นเรียน: Mock () หรือ patch ()?
ฉันใช้การเยาะเย้ยกับ Python และสงสัยว่าสองวิธีนี้ดีกว่า (อ่าน: pythonic เพิ่มเติม) วิธีที่หนึ่ง : เพียงสร้างวัตถุจำลองและใช้สิ่งนั้น รหัสมีลักษณะดังนี้: def test_one (self): mock = Mock() mock.method.return_value = True self.sut.something(mock) # This should called mock.method and checks the result. self.assertTrue(mock.method.called) วิธีที่สอง : ใช้โปรแกรมแก้ไขเพื่อสร้างภาพจำลอง รหัสมีลักษณะดังนี้: @patch("MyClass") def test_two (self, mock): instance = mock.return_value instance.method.return_value = True self.sut.something(instance) # This should called …