testing Pakiet
Moduły
| about | |
| dialog_test_client | |
| dialog_test_logger | |
| storage_base_tests |
Podstawowe testy, które wszyscy dostawcy magazynu powinni zaimplementować we własnych testach. Obsługują one asercji oparte na magazynie wewnętrznie. Wszystkie testy zwracają wartość true, jeśli potwierdzenia są przekazywane, aby wskazać, że kod został uruchomiony do ukończenia, przekazując asercji wewnętrznych. W związku z tym wszystkie testy korzystające z tych testów statycznych powinny dokładnie sprawdzić, czy metoda zwraca wartość true. Uwaga: język Python nie może mieć dyktów z właściwościami o wartości None, podobnie jak inne zestawy SDK, mogą mieć właściwości z wartościami null. W związku z tym testy StoreItem mają wartość "e_tag: *", gdzie testy w innych zestawach SDK nie są. Spowodowało to również komentarz do niektórych części tych testów, w których twierdzimy, że "e_tag" jest Brak z tego samego powodu. E_tag o wartości null powinna działać tak samo jak * e_tag podczas pisania, jeśli chodzi o karty magazynujące, więc nie powinno to powodować problemów. :Example: async def test_handle_null_keys_when_reading(self): await reset()
|
Klasy
| DialogTestClient |
Klient do testowania okien dialogowych w izolacji. Utwórz obiekt DialogTestClient, aby przetestować okno dialogowe bez konieczności tworzenia pełnej karty.
W przypadku identyfikatora kanału użyj ciągu "emulator" lub "test", jeśli nie masz pewności co do docelowego kanału. W przeciwnym razie zaleca się użycie identyfikatora dla kanałów, których bot będzie używać i pisać przypadek testowy dla każdego kanału. Można też użyć wystąpienia adaptera testowego. :type channel_or_adapter: Union[str, TestAdapter] :p aram target_dialog: okno dialogowe do przetestowania. Będzie to okno dialogowe głównego klienta testowego. :type target_dialog: Dialog :p aram initial_dialog_options: (Opcjonalnie) dodatkowe argumenty do przekazania do uruchomionego okna dialogowego. :type initial_dialog_options: object :p aram pośredniczące: (Opcjonalnie) Adapter testowy do użycia. Jeśli ten parametr nie zostanie podany, klient testowy użyje domyślnego elementu TestAdapter. :type middlewares: List[Middleware] :p aram conversation_state: (Opcjonalnie) Wystąpienie ConversationState do użycia w kliencie testowym. :type conversation_state: ConversationState |
| DialogTestLogger |
Oprogramowanie pośredniczące do wyprowadzania przychodzących i wychodzących działań jako ciągów json do konsoli podczas testów jednostkowych. Zainicjuj nowe wystąpienie rejestratora testów okna dialogowego. wartość domyślna to logging.getLogger( nazwa).info. :type log_func: Callable[..., None] :p aram json_indent: wcięcie danych wyjściowych json, domyślne wcięcie to 4. :type json_indent: int :p aram time_func: funkcja time do rejestrowania przedziałów czasu, domyślnie time.monotonic. :type time_func: Callable[[], float] |
| StorageBaseTests |