Юнит-тест для скрипта Python3 с использованием unittestPython

Программы на Python
Ответить Пред. темаСлед. тема
Anonymous
 Юнит-тест для скрипта Python3 с использованием unittest

Сообщение Anonymous »


У меня есть небольшой скрипт Python3. Что-то вроде этого

импортировать систему содержимое = sys.stdin.read() распечатать (содержание) Для этого мне нужно написать модульный тест, используя import unittest. Я пытаюсь понять, как имитировать стандартный ввод с помощью unittest.

Я нашел здесь несколько статей

и здесь, но я все равно не смог с этим справиться, потому что после запуска тестовых скриптов программа ожидает от меня ввода стандартного ввода.

Не могли бы вы помочь мне переписать этот код (или написать другой) для тестирования моего скрипта
импортировать модульный тест из патча импорта unittest.mock импортировать модуль_under_test класс MyTestCase(unittest.TestCase): защита setUp(self): # raw_input не изменяется перед тестом утверждать, что модуль_under_test.raw_input равен __builtins__.raw_input защита test_using_with(self): входные_данные = "123" ожидаемый = int (входные_данные) с patch.object(module_under_test, "raw_input", create=True, return_value=ожидается): # create=True необходим, поскольку raw_input не находится в глобальных переменных # модуль_under_test, но на самом деле находится в __builtins__ . фактический = модуль_under_test.function() self.assertEqual(ожидаемое, фактическое) @patch.object(module_under_test, "raw_input", create=True) защита test_using_decorator(self, raw_input): raw_input.return_value = input_data = "123" ожидаемый = int (входные_данные) фактический = модуль_under_test.function() self.assertEqual(ожидаемое, фактическое) защита TearDown (сам): # необработанный ввод восстанавливается после теста утверждать, что модуль_under_test.raw_input равен __builtins__.raw_input если __name__ == "__main__": unittest.main()
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение
  • Codeception: приемочный тест выполняется как первый тест в группе тестов, где тест API определяется как первый тест в гр
    Anonymous » » в форуме Php
    0 Ответы
    94 Просмотры
    Последнее сообщение Anonymous
  • Юнит-тест Hangfire с NSubstitute
    Anonymous » » в форуме C#
    0 Ответы
    9 Просмотры
    Последнее сообщение Anonymous
  • Юнит-тест Symfony Messenger
    Anonymous » » в форуме Php
    0 Ответы
    7 Просмотры
    Последнее сообщение Anonymous
  • Ошибка импорта. Запуск Unittest в Python3
    Anonymous » » в форуме Python
    0 Ответы
    4 Просмотры
    Последнее сообщение Anonymous
  • Издевательский тест pytest с декоратором @patch unittest.mock
    Anonymous » » в форуме Python
    0 Ответы
    20 Просмотры
    Последнее сообщение Anonymous

Вернуться в «Python»