Макетные объекты pyodbc для тестирования Python - PullRequest
0 голосов
/ 02 июля 2018

Отказ от ответственности * Я не спрашиваю, как ввести мой макет в мой модульный тест с unittest.mock. Это о том, как смоделировать макет pyodbc.

Мне нужно получить макет некоторых pyodbc объектов, чтобы я мог протестировать различные функции моего приложения на Python, но я нахожу это исключительно трудным для выполнения. Традиционно способ сделать это - просто наследовать от объекта, который я хочу смоделировать, а затем переопределить любые проблемные методы или свойства со статическими значениями для проверки.

Однако, когда я пытаюсь унаследовать от pyodbc.Connection или pyodbc.Row, я получаю ошибку:

TypeError: тип 'pyodbc.Connection' не является допустимым базовым типом

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

У кого-нибудь есть идеи, как это сделать в Python?

...