У меня есть статический класс, который создает экземпляр класса базы данных. Я ищу способ подделать/заглушить этот класс базы данных в своих тестах.Удаление класса, созданного статическим классом
public partial class Y : Form
{
static Models.DBModel db = new Models.DBModel();
....
К сожалению, я не могу изменить код. Есть ли способ, которым я могу издеваться над этим классом базы данных в своих тестах?
Если вызов этой переменной проходит один метод, вы можете переопределить этот метод. Othervise, вы можете попробовать использовать некоторые специальные структуры, такие как [TypeMock] (http://www.typemock.com/) или [Fakes] (https://msdn.microsoft.com/en-us/library/hh549175 (v = vs.110) .aspx) –
Я использую подделки! Извините, кто-то удалил эту информацию из заголовка темы. Я просил о том, чтобы сделать это с помощью подделок. Я попытался создать прокладку DB перед созданием статического класса, но экземпляр DB, созданный статическим классом, не использует прокладку. – rev
О, я не видел - информация о Microsoft Fakes была перенесена в тег. Это частное поле? Можете ли вы изменить его на защищенный, а затем вы можете переопределить этот класс и инициализировать это поле в construnctor. –