expecter giúp bạn viết khẳng định. Không bao giờ một lần nữa bạn sẽ quên được mong đợi và đó là thực tế!
Mong đợi cơ bản là dễ dàng:
& Nbsp; >>> từ nhập khẩu expecter mong đợi
& Nbsp; >>> mong đợi ('một số' + 'điều') == 'cái gì'
& Nbsp; mong đợi ('cái gì')
& Nbsp; >>> mong đợi (1)> 100
& Nbsp; Traceback (cuộc gọi gần đây nhất cuối cùng):
& Nbsp; ...
& Nbsp; AssertionError: Dự kiến một cái gì đó lớn hơn 100, nhưng có 1
Chỉ cần đọc những kỳ vọng như một câu. "Mong đợi (2) == 1 + 1" đọc như "Mong đợi 2 đến bằng 1 + 1". Rõ ràng, những kỳ vọng là khoảng 2, và nó được so sánh với 1 + 1. Không có sự mơ hồ!
ngoại lệ
Kỳ vọng về ngoại lệ sử dụng "với" tuyên bố. Tất cả mọi thứ là tốt nếu các ngoại lệ dự kiến được nêu ra:
& Nbsp; >>> từ __future__ with_statement nhập khẩu
& Nbsp; >>> với expect.raises (KeyError):
& Nbsp; ... {} [123]
Nếu nó không được nâng lên, Expecter Gadget sẽ nâng cao một AssertionError:
& Nbsp; >>> với expect.raises (KeyError):
& Nbsp; vượt qua ...
& Nbsp; Traceback (cuộc gọi gần đây nhất cuối cùng):
& Nbsp; ...
& Nbsp; AssertionError: Dự kiến một ngoại lệ của loại KeyError nhưng đã không bị ảnh
Trường hợp ngoại lệ không phù hợp với một dự kiến sẽ không được nuốt, để thử nghiệm của bạn sẽ báo lỗi như bạn mong đợi:
& Nbsp; >>> từ __future__ with_statement nhập khẩu
& Nbsp; >>> với expect.raises (NameError):
& Nbsp; ... {} [123]
& Nbsp; Traceback (cuộc gọi gần đây nhất cuối cùng):
& Nbsp; ...
& Nbsp; KeyError: 123
KỲ VỌNG CUSTOM
Bạn có thể thêm một kỳ vọng tùy chỉnh với các phương pháp add_expectation. Bạn cung cấp cho nó một vị ngữ nên trở về đúng nếu kỳ vọng thành công và sai nếu nó không thành công. Tất cả các đối tượng mong đợi sẽ phát triển một phương pháp với tên của phương pháp ngữ của bạn (do không sử dụng một lambda). Thông điệp ngoại lệ thích hợp sẽ được tạo ra khi vị ngữ của bạn không:
& Nbsp; >>> nhập expecter
& Nbsp; >>> def can_meow (điều):
& Nbsp; ... trở lại điều == 'kitty'
& Nbsp; >>> expecter.add_expectation (can_meow)
& Nbsp; >>> mong đợi ('kitty') can_meow ().
& Nbsp; >>> mong đợi ('puppy') can_meow ().
& Nbsp; Traceback (cuộc gọi gần đây nhất cuối cùng):
& Nbsp; ...
& Nbsp; AssertionError: Dự kiến "puppy" can_meow, nhưng nó không thể
Yêu cầu :
- Python
Bình luận không