Tôi quen thuộc với các thư viện giả mạo khác bằng các ngôn ngữ khác như Mockito trong Java, nhưng thư viện mock
của Python làm xáo trộn cuộc sống của tôi.Mocking chỉ một phương thức duy nhất trên một đối tượng
Tôi có lớp học sau mà tôi muốn kiểm tra.
class MyClassUnderTest(object):
def submethod(self, *args):
do_dangerous_things()
def main_method(self):
self.submethod("Nothing.")
Trong các thử nghiệm của tôi, tôi muốn chắc chắn rằng submethod
được gọi khi main_method
được thực hiện và nó được gọi với các đối số đúng. Tôi không muốn submethod
chạy, vì nó làm những việc nguy hiểm.
Tôi hoàn toàn không chắc chắn về cách bắt đầu với điều này. Tài liệu của Mock vô cùng khó hiểu và tôi không chắc phải làm gì hay làm thế nào để giả lập nó.
Làm cách nào tôi có thể thử chức năng submethod
, trong khi chỉ rời khỏi chức năng ở một mình là main_method
?
Cảm ơn, vì một lý do nào đó, tôi đã gặp khó khăn trong việc hiểu tất cả các phương pháp 'vá' khác nhau và cách sử dụng chúng. –
ok. Hãy hỏi tôi – oleg