Я пытаюсь реализовать модульный тест для типа документа Frappe без использования класса FrappeTestCase. Моя реализация работает нормально при запуске тестов с помощью команды стендового запуска-тестов, но не работает с pytest. Вот моя реализация Doctype и unittest. ПРИМЕЧАНИЯ:
Я хочу запустить тест с pytest без использования команды стенда.
Использование команды стендового запуска работает, но с использованием pytest нет.
Выполнение тестов с помощью python -m unittest также дает ту же ошибку.
Я пытаюсь реализовать модульный тест для типа документа Frappe без использования класса FrappeTestCase. Моя реализация работает нормально при запуске тестов с помощью команды стендового запуска-тестов, но не работает с pytest. Вот моя реализация Doctype и unittest. [b]ПРИМЕЧАНИЯ[/b]: [list] [*]Я хочу запустить тест с pytest без использования команды стенда. [*]Использование команды стендового запуска работает, но с использованием pytest нет. [*]Выполнение тестов с помощью python -m unittest также дает ту же ошибку. [/list] [b]Реализация типа документа:[/b] [code]class FeedbackClassification(Document): def validate(self): self.validate_classification_code()
try: self.mock_feedback_classification.validate() except UniqueValidationError: self.fail("validate() raised UniqueValidationError unexpectedly!") [/code] [b]При запуске теста с помощью pytest я получаю следующую ошибку:[/b] [code]doctype/feedback_classification/test_feedback_classification.py::TestFeedbackClassification::test_validate_duplicate_classification_code failed: /usr/local/lib/python3.11/unittest/mock.py:1372: in patched with self.decoration_helper(patched, /usr/local/lib/python3.11/contextlib.py:137: in __enter__ return next(self.gen) /usr/local/lib/python3.11/unittest/mock.py:1354: in decoration_helper arg = exit_stack.enter_context(patching) /usr/local/lib/python3.11/contextlib.py:505: in enter_context result = _enter(cm) /usr/local/lib/python3.11/unittest/mock.py:1443: in __enter__ original, local = self.get_original() /usr/local/lib/python3.11/unittest/mock.py:1406: in get_original original = target.__dict__[name] frappe-bench/env/lib/python3.11/site-packages/werkzeug/local.py:311: in __get__ obj = instance._get_current_object() _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
def _get_current_object() -> T: try: return get_name(local) # type: ignore[return-value] except AttributeError: > raise RuntimeError(unbound_message) from None E RuntimeError: object is not bound
frappe-bench/env/lib/python3.11/site-packages/werkzeug/local.py:490: RuntimeError [/code] [b]Что я пробовал:[/b] [list] [*]Выполнение теста с помощью стендовых тестов работает без любые проблемы. [*]Проверка правильности применения исправлений. [/list] [b]Ожидаемое поведение: [list] [*]Тест должен пройти успешно с помощью pytest так же, как и при стендовых тестах. [/list] Среда:[/b] [list] [*]Версия Frappe: 14.78.2 [*]Python версия: 3.11 [*]версия pytest: 8.3.2 [/list]
Я пытаюсь реализовать модульный тест для типа документа Frappe без использования класса FrappeTestCase. Моя реализация работает нормально при запуске тестов с помощью команды стендового запуска-тестов, но не работает с pytest. Вот моя реализация...
Я пытаюсь реализовать модульный тест для типа документа Frappe без использования класса FrappeTestCase. Моя реализация работает нормально при запуске тестов с помощью команды стендового запуска-тестов, но не работает с pytest. Вот моя реализация...
Я пытаюсь реализовать модульный тест для типа документа Frappe без использования класса FrappeTestCase. Моя реализация работает нормально при запуске тестов с помощью команды стендового запуска-тестов, но не работает с pytest. Вот моя реализация...
Я создаю веб-сайт с системой пожертвований на благотворительность в качестве бесплатного проекта. После того, как пользователь сделает памятное пожертвование, необходимо создать PDF-файл с данью и отправить его получателю.
У меня есть модульный тест...