Обозреватель тестов visual studio как открыть

Обновлено: 07.07.2024

По какой-то причине я не могу открыть окно обозревателя тестов в Visual Studio 2012. Я нажимаю Test-> Windows-> Test Explorer, и ничего не происходит .

Эта проблема могла быть вызвана недавним удалением DotCover. Я сделал это, потому что срок моей лицензии истек, и у меня были проблемы с запуском тестов без нее (контекстные меню не работали).

Любые предложения или советы очень ценятся!

В VS2012 в обозревателе тестов есть ошибка, заключающаяся в том, что окно не получает фокус при нажатии Тест> Windows> Обозреватель тестов . Вместо этого пункт меню не действует, если окно не было полностью скрыто, и в этом случае оно отображается.

Ошибка означает, что если Test Explorer свернут с Auto Hide, пункт меню ничего не делает. Убедитесь, что в обозревателе тестов нет автоматически скрываемой вкладки где-то слева или справа (то есть на вкладке с текстом, написанным вертикально, как в обозревателе серверов и панели инструментов по умолчанию).

Обновление: ошибка исправлено в VS2013.

У меня VS 2015. Я не мог найти свой Test Explorer, даже с Test-> Windows-> Test Explorer. Я наконец понял, что он отображается слева, а не справа.

Быстрый путь для тех, кто где-то потерял Test Explorer!

  1. Ctrl + Q (для быстрого запуска)
  2. Вы могли бы заметить фокус на небольшом текстовом поле в правом верхнем углу VS.
  3. Введите «Обозреватель тестов» и выберите вариант с надписью «Тест»> «Windows»> «Обозреватель тестов».

У меня такая же проблема; Оказалось, что это была надстройка Corbis Route, которая вызывала ошибку в сочетании с надстройкой «Я ненавижу регионы», из-за чего тестовое окно генерировало исключение.

После удаления обеих надстроек окно снова появилось после сброса макета окна VS 2013. (Windows> Сбросить макет окна)

Это сработало для меня (VS2015):

В качестве серьезного исправления я на самом деле решил сбросить все настройки VS (не идеально, поскольку вы теряете все свои пользовательские настройки, такие как настройки форматирования и отладки!).

Для этого откройте строку cmd и cd в каталог VS (мой был C: \ Program Files (x86) \ Microsoft Visual Studio 11.0 \ Common7 \ IDE ) и введите:

Надеюсь, это поможет кому-то в будущем .

Нашел это решение здесь, и это единственное , что у меня сработало.

Удалите все файлы из этой папки: user \ AppData \ Local \ Microsoft \ VisualStudio \ 11.0 \ ComponentModelCache

Для меня исправление было:

    Сфокусируйтесь на тестовом окне, выбрав Test> Windows> TestExplorer.

Использование Win + Влево / Вправо для перемещения окна на активный экран

Выполните сборку проекта, чтобы запустить обнаружение на основе сборок.

Выполните сборку проекта и убедитесь в том, что в разделе Сервис > Параметры > Тест включено обнаружение на основе сборок.

Обозреватель тестов, символ плюса (+)

Что означает символ "+" (плюс) в верхней строке обозревателя тестов?

Символ "+" (плюс) означает, что после сборки и выполнения обнаружения на основе сборок могут быть обнаружены дополнительные тесты. Этот символ отображается, если в проекте обнаружены динамически определяемые тесты.

Символ "плюс" в строке сводной информации

Обнаружение на основе сборок

Обнаружение на основе сборок перестало работать в моем проекте. Как включить его снова?

Выберите пункты Сервис > Параметры > Тест и установите флажок Также вести обнаружение тестов в сборках после их создания.

Вариант обнаружения на основе сборок

Обнаружение тестов в режиме реального времени

Теперь тесты появляются в обозревателе тестов сразу при вводе кода, не дожидаясь сборки. Что изменилось?

Эта возможность называется Обнаружение тестов в реальном времени. На основе анализатора Roslyn она обнаруживает тесты и переносит данные о них в обозреватель тестов прямо в режиме реального времени, еще до сборки проекта. Дополнительные сведения об алгоритме обнаружения для динамически определяемых тестов, например с использованием теорий или пользовательских признаков, см. в разделе Обнаружение динамических тестов.

Совместимость с обнаружением тестов в реальном времени

Какие языки и платформы тестирования поддерживают обнаружение тестов в реальном времени?

Журналы обозревателя тестов

Как можно включить журналы для обозревателя тестов?

Откройте Сервис > Параметры > Тест и найдите раздел "Ведение журнала".

Обнаружение тестов UWP

Почему мои тесты в проектах UWP не обнаруживаются без развертывания приложения?

Тесты UWP ориентируются на другую среду выполнения при развертывании приложения. Это означает, что для точного обнаружения тестов для проектов UWP нужно не только собрать, но и развернуть проект.

Сортировка в обозревателе тестов

Как работает сортировка результатов тестирования в иерархическом представлении?

Иерархическое представление сортирует тесты по алфавиту, а не по результату. Предыдущие параметры группирования сортировали результаты тестов по результату, а затем по алфавиту. Вы по-прежнему можете включить сортировку по результату, щелкнув правой кнопкой мыши заголовок столбца в обозревателе тестов, включив столбец "Состояние", а затем щелкнув заголовок столбца "Состояние", чтобы применить сортировку по этому столбцу. Вы можете оставить отзыв о такой схеме сортировки в этом вопросе в GitHub.

Иерархическое представление в обозревателе тестов

В иерархическом представлении возле группирований родительских узлов есть значки пройденных, непройденных, пропущенных и невыполненных тестов. Что означают эти значки?

Значки возле группирований проектов, пространств имен и классов указывают на состояние тестов в определенном группировании. См. приведенную ниже таблицу.

Поиск по пути к файлу

В поле поиска обозревателя тестов исчез фильтр "Путь к файлу".

Фильтр "Путь к файлу" в поле поиска обозревателя тестов удален в Visual Studio 2017 версии 15.7. Эта функция используется мало. Чтобы обозреватель тестов получал методы теста быстрее, ее можно исключить. Если это изменение прерывает ваш поток разработки, сообщите нам, отправив отзыв в сообщество разработчиков.

Удаление недокументированных интерфейсов

Некоторые интерфейсы API, относящиеся к тесту, отсутствуют в Visual Studio 2019. Что изменилось?

В Visual Studio 2019 будут удалены некоторые API окон тестов, которые были ранее помечены как общедоступные, но никогда не были официально задокументированы. Они были помечены как "нерекомендуемые" в Visual Studio 2017, чтобы заранее предупредить группы обслуживания расширений. Насколько нам известно, с этими API-интерфейсами работала и была связана лишь незначительная часть расширений. К ним относятся IGroupByProvider , IGroupByProvider<T> , KeyComparer , ISearchFilter , ISearchFilterToken , ISearchToken и SearchFilterTokenType . Если это изменение влияет на ваше расширение, сообщите нам, отправив сведения об ошибке в сообщество разработчиков.

Ссылка NuGet для адаптера теста

В Visual Studio 2017 версии 15.8 тесты обнаруживаются, но не выполняются.

Если вы используете адаптер теста NUnit 2 и не можете перейти на адаптер теста NUnit 3, можно отключить это новое поведение обнаружения в версии Visual Studio 15.8 в разделе Сервис > Параметры > Тест.

Поведение адаптера теста в параметрах меню "Сервис"

UWP TestContainer не найден

Мои тесты UWP больше не выполняются в Visual Studio 2017 версии 15.7 и более поздних версий.

Последние тестовые проекты UWP указывают свойство сборки платформы тестирования, что позволяет повысить производительность при обнаружении тестовых приложений. Если у вас есть тестовый проект UWP, который был инициализирован в версии Visual Studio ниже 15.7, в разделе Вывод > Тесты вы можете увидеть следующую ошибку.

System.AggregateException: произошла одна или несколько ошибок. ---> System.InvalidOperationException: не удалось найти следующий объект TestContainer <> в Microsoft.VisualStudio.TestWindow.Controller.TestContainerProvider <GetTestContainerAsync>d__61.MoveNext()

  • Обновите свойство сборки тестового проекта, используя следующий код.
  • Обновите версию пакета SDK TestPlatform, используя следующий код.

Использование предварительных версий функций

В Visual Studio 2019 включить предварительные версии функции в разделе "Инструменты" > "Параметры" > "Среда" > "Предварительные версии функций" .

Использование флагов функций

Как включить флаги функций, чтобы испытать новые возможности тестирования?

Флаги функций позволяют предоставить экспериментальные или незавершенные части продукта энтузиастам, которые готовы опробовать новые функции до официального выпуска и прислать отзыв о них. Их применение может нарушить работу интегрированной среды разработки. Используйте их только в безопасных средах разработки, например на виртуальных машинах. Использование флагов функций всегда сопряжено с некоторым риском и для них не предоставляются гарантии. Экспериментальные функции вы можете включить с помощью расширения флагов функций или в командной строке разработчика.

Расширение флагов функций

Чтобы включить флаг функции через командную строку разработчика Visual Studio, используйте следующую команду. Укажите в ней путь к локальной папке, где установлена среда Visual Studio, и раздел реестра для нужного флага функции.

Этой же командой можно отключить флаг, изменив значение после dword c 1 на 0.

Уроки программирования, алгоритмы, статьи, исходники, примеры программ и полезные советы

Модульное тестирование в Visual Studio

Создание проекта программы, модули которой будут тестироваться

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

Class1 переименуем в Geometry.

В классе реализуем метод, вычисляющий площадь прямоугольника. Для демонстрации остановимся на работе с целыми числами. Код программы приведён ниже.

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

Создание проекта для модульного тестирования в Visual Studio

Чтобы выполнить unit-тестирование, необходимо в рамках того же самого решения создать ещё один проект соответствующего типа.

Создание проекта для модульного тестирования в Visual Studio

Модульное тестирование в Visual Studio

Перед Вами появится следующий код:

using Microsoft . VisualStudio . TestTools . UnitTesting ;

Директива [TestMethod] обозначает, что далее идёт метод, содержащий модульный (unit) тест. А [TestClass] в свою очередь говорит о том, что далее идёт класс, содержащий методы, в которых присутствуют unit-тесты.

В соответствии с принятыми соглашениями переименуем класс UnitTest1 в GeometryTests.

Добавление ссылки на проект, который будет тестироваться

Также в коде необходимо подключить с помощью директивы using следующее пространство имён:

Займёмся написание теста. Проверим правильно ли вычисляет программа площадь прямоугольника со сторонами 3 и 5. Ожидаемый результат (правильное решение) в данном случае это число 15.

Тестирующий метод обычно содержит три необходимых компонента:

  1. исходные данные: входные значения и ожидаемый результат;
  2. код, вычисляющий значение с помощью тестируемого метода;
  3. код, сравнивающий ожидаемый результат с полученным.

Соответственно тестирующий код будет таким:

using Microsoft . VisualStudio . TestTools . UnitTesting ;

Для сравнения ожидаемого результата с полученным используется метод AreEqual класса Assert. Данный класс всегда используется при написании unit тестов в Visual Studio.

Окно Обозреватель тестов

В студии появится следующее окно:

Обозреватель тестов в Visual Studio

Unit тест

Синяя табличка с восклицательным знаком означает, что указанный тест никогда не выполнялся. Выполним его.

Успешное выполнение модульного тестирования

Зелёный кружок с галочкой означает, что модульный тест успешно пройден: ожидаемый и полученный результаты равны.

Изменим код метода RectangleArea, вычисляющего площадь прямоугольника, чтобы сымитировать провал теста и посмотреть, как поведёт себя Visual Studio. Прибавим к возвращаемому значению 10.

Имитация провала unit теста

Как Вы видите, красный круг с крестиком показывает провал модульного теста, а ниже указано, что при проверке ожидалось значение 15, а по факту оно равно 25.

Вы можете скачать исходник решения по ссылке ниже или перейти в репозиторий данного проекта на GitHub:

Приведём правило, которым следует руководствоваться при написании и проведении тестов для оценки правильного функционирования программ.

Удобнее всего будет рассмотреть пример основанный на математике.

Так или иначе тестируемый метод или функция (или вся программа в целом) имеет свою область допустимых входных значений. Для проверки правильности работы метода достаточно провести тестирование метода на входных значениях начала и конца области допустимых значений (ОДЗ), одного значения из внутренней части области, а также -1 от левой и +1 от правой границы области.

по какой-то причине я не могу открыть тест ехплорер в Visual Studio 2012. Я нажимаю Test - >Windows - >Test Explorer и ничего не происходит.

эта проблема может быть вызвана недавним удалением DotCover. Я сделал это, потому что моя лицензия истекла, и у меня были проблемы с запуском тестов без нее (контекстные меню не работали).

любые предложения или советы очень ценятся!

в VS2012, Test Explorer имеет ошибку в том, что окно не получает фокус при нажатии кнопки Тест > Windows > Test Explorer. Вместо этого пункт меню не имеет никакого эффекта, если окно не было полностью скрыто, и в этом случае оно отображается.

ошибка означает, что если Test Explorer свернут с Auto Hide, пункт меню ничего не делает. Убедитесь, что Test Explorer не находится на вкладке автоматического скрытия где-то слева или справа (т. е. на вкладке с текстом, написанным вертикально, например Server Explorer и Toolbox по умолчанию).

обновление: ошибка исправлено в VS2013.

Window - > Reset window Layout исправил проблему для меня.

нашел это решение здесь, который является только вещь, которая сработала для меня.

удалить все файлы из этой папки: user\AppData\Local\Microsoft\VisualStudio\11.0\ComponentModelCache

для меня исправление было:

    фокус на тестовом окне с помощью Test > Windows > TestExplorer

использование Win + влево / вправо для перемещения окна на активный экран

то же самое работало для окна сеансов модульного тестирования ReSharper.

как жестокое исправление я на самом деле решил сбросить все настройки VS (не идеально, так как вы теряете все свои пользовательские настройки, такие как форматирование и отладка настроек!).

для этого откройте строку cmd и cd в каталог VS (мой был C:\Program файлы (x86)\Microsoft Visual Studio 11.0\Common7\IDE) и типа:

надеюсь, это поможет кому-то в будущем.

Это сработало для меня (VS2015):

У меня была та же проблема; оказалось, что это была надстройка маршрута Corbis, которая вызывала ошибку в сочетании с надстройкой "я ненавижу Регионы", которая заставила тестовое окно выдать исключение.

после удаления обеих надстроек окно снова появилось после сброса макета окна VS 2013. (Windows > Сброс Макета Окна)

короткий путь для тех, кто потерял Test Explorer где-то !

  1. Ctrl + Q (для быстрого запуска)
  2. вы заметили бы фокус на маленьком текстовом поле в правом верхнем углу VS.
  3. введите "Test Explorer" и выберите опцию, которая говорит Test> Windows> Test Explorer

У меня есть VS 2015. Я не мог найти свой тестовый проводник, даже с Test->Windows->Test Explorer. В конце концов я решил, что это видно слева, а не справа.

Пошаговое руководство. Создание и запуск модульных тестов для управляемого кода

Создайте проект для тестирования

Запустите Visual Studio.

В меню Файл выберите Создать > Проект.

Откроется диалоговое окно Новый проект .

Присвойте проекту имя Bank и нажмите кнопку ОК.

Будет создан проект Bank. Он отобразится в обозревателе решений, а его файл Program.cs откроется в редакторе кода.

[!NOTE] Если файл Program.cs не откроется в редакторе, дважды щелкните Program.cs в обозревателе решений, чтобы открыть его.

Запустите Visual Studio.

На начальном экране выберите Создать проект.

Назовите проект Bank и щелкните Далее.

Будет создан проект Bank. Он отобразится в обозревателе решений, а его файл Program.cs откроется в редакторе кода.

[!NOTE] Если файл Program.cs не откроется в редакторе, дважды щелкните Program.cs в обозревателе решений, чтобы открыть его.

Переименуйте файл в BankAccount.cs, щелкнув его правой кнопкой мыши и выбрав команду Переименовать в обозревателе решений.

В меню Сборка нажмите Построить решение (или нажмите клавиши CTRL + SHIFT + B).

Теперь у вас есть проект с методами, которые можно протестировать. В этой статье тестирование проводится на примере метода Debit . Метод Debit вызывается, когда денежные средства снимаются со счета.

Создание проекта модульного теста

В меню Файл выберите Добавить > Создать проект.

[!TIP] В обозревателе решений щелкните решение правой кнопкой мыши и выберите пункты Добавить > Создать проект.

В поле Имя введите BankTests , а затем нажмите кнопку ОК.

Проект BankTests добавляется в решение Банк.

Назовите проект BankTests и щелкните Далее.

Проект BankTests добавляется в решение Банк.

В проекте BankTests добавьте ссылку на проект Банк.

В обозревателе решений щелкните Зависимости в проекте BankTests, а затем выберите в контекстном меню Добавить ссылку.

В диалоговом окне Диспетчер ссылок разверните Проекты, выберите Решение и выберите элемент Банк.

Создание тестового класса

Создание тестового класса, чтобы проверить класс BankAccount . Можно использовать UnitTest1.cs, созданный в шаблоне проекта, но лучше дать файлу и классу более описательные имена.

Переименуйте файл и класс

  1. Чтобы переименовать файл, в обозревателе решений выберите файл UnitTest1.cs в проекте BankTests. В контекстном меню выберите команду Переименовать (или нажмите клавишу F2), а затем переименуйте файл в BankAccountTests.cs.
  1. Чтобы переименовать класс, выберите Да в открывшемся диалоговом окне, предлагающем также переименовать ссылки на элемент кода.
  1. Чтобы переименовать класс, поместите курсор в UnitTest1 в редакторе кода, щелкните правой кнопкой мыши и выберите команду Переименовать (или нажмите клавиши F2). Введите название BankAccountTests и нажмите клавишу ВВОД.

Файл BankAccountTests.cs теперь содержит следующий код:

Добавьте оператор using

Можно также добавить оператор using в класс, чтобы тестируемый проект можно было вызывать без использования полных имен. Вверху файла класса добавьте:

Требования к тестовому классу

Минимальные требования к тестовому классу следующие:

Атрибут [TestClass] является обязательным в любом классе, содержащем методы модульных тестов, которые необходимо выполнить в обозревателе тестов.

Каждый метод теста, предназначенный для запуска в обозревателе тестов, должен иметь атрибут [TestMethod] .

Можно иметь другие классы в проекте модульного теста, которые не содержат атрибута [TestClass] , а также иметь другие методы в тестовых классах, у которых атрибут — [TestMethod] . Можно вызывать эти другие классы и методы в методах теста.

Создание первого тестового метода

В этой процедуре мы напишем методы модульного теста для проверки поведения метода Debit класса BankAccount .

Существует по крайней мере три поведения, которые требуется проверить:

Метод создает исключение xref:System.ArgumentOutOfRangeException , если сумма по дебету превышает баланс.

Метод создает исключение xref:System.ArgumentOutOfRangeException, если сумма по дебету меньше нуля.

Если значение дебета допустимо, то метод вычитает сумму дебета из баланса счета.

[!TIP] Метод по умолчанию TestMethod1 можно удалять, так как он не используется в этом руководстве.

Создание метода теста

Первый тест проверяет, снимается ли со счета нужная сумма при допустимом размере кредита (со значением меньшим, чем баланс счета, и большим, чем ноль). Добавьте следующий метод в этот класс BankAccountTests :

Метод очень прост: он создает новый объект BankAccount с начальным балансом, а затем снимает допустимое значение. Он использует метод xref:Microsoft.VisualStudio.TestTools.UnitTesting.Assert.AreEqual%2A?displayProperty=nameWithType, чтобы проверить, что конечный баланс соответствует ожидаемому. Такие методы, как Assert.AreEqual , xref:Microsoft.VisualStudio.TestTools.UnitTesting.Assert.IsTrue%2A?displayProperty=nameWithType и другие, зачастую используются в модульном тестировании. Дополнительную концептуальную информацию о написании модульного теста см. в разделе Написание тестов.

Требования к методу теста

Метод теста должен удовлетворять следующим требованиям:

Он декорируется атрибутом [TestMethod] .

Он возвращает void .

Он не должен иметь параметров.

Сборка и запуск теста

В меню Сборка нажмите Построить решение (или нажмите клавиши CTRL + SHIFT + B).

Откройте Обозреватель тестов, выбрав Тест > Windows > Обозреватель тестов в верхней строке меню (или нажмите клавиши CTRL + E, T).

Выберите Запустить все, чтобы выполнить тест (или нажмите клавиши CTRL + R, V).

Во время выполнения теста в верхней части окна Обозреватель тестов отображается анимированная строка состояния. По завершении тестового запуска строка состояния становится зеленой, если все методы теста успешно пройдены, или красной, если какие-либо из тестов не пройдены.

В данном случае тест пройден не будет.

Выберите этот метод в обозревателе тестов для просмотра сведений в нижней части окна.

Исправление кода и повторный запуск тестов

Модульный тест обнаружил ошибку: сумма списания добавляется на баланс счета, вместо того чтобы вычитаться.

Повторный запуск теста

В обозревателе тестов выберите Запустить все, чтобы запустить тест повторно (или нажмите клавиши CTRL + R, V). Красно-зеленая строка становится зеленой, чтобы указать, что тест был пройден.

Обозреватель тестов в Visual Studio 2019 отображает пройденный тест

Использование модульных тестов для улучшения кода

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

Мы создали тестовый метод для подтверждения того, что допустимая сумма правильно вычитается в методе Debit . Теперь проверим, что метод создает исключение xref:System.ArgumentOutOfRangeException, если сумма по дебету:

Создание и запуск новых методов теста

Создадим метод теста для проверки правильного поведения в случае, когда сумма по дебету меньше нуля:

Мы используем метод xref:Microsoft.VisualStudio.TestTools.UnitTesting.Assert.ThrowsException%2A для подтверждения правильности созданного исключения. Этот метод приводит к тому, что тест не будет пройден, если не возникнет исключения xref:System.ArgumentOutOfRangeException. Если временно изменить тестируемый метод для вызова более общего исключения xref:System.ApplicationException при значении суммы по дебету меньше нуля, то тест работает правильно — то есть завершается неудачно.

Чтобы проверить случай, когда размер списания превышает баланс, выполните следующие действия:

Создать новый метод теста с именем Debit_WhenAmountIsMoreThanBalance_ShouldThrowArgumentOutOfRange .

Скопировать тело метода из Debit_WhenAmountIsLessThanZero_ShouldThrowArgumentOutOfRange в новый метод.

Присвоить debitAmount значение, превышающее баланс.

Выполните два теста и убедитесь, что они пройдены.

Тестируемый метод можно дополнительно улучшить. При такой реализации мы не можем знать, какое условие ( amount > m_balance или amount < 0 ) приводят к исключению, возвращаемому в ходе теста. Нам просто известно, что ArgumentOutOfRangeException где-то возникает в методе. Было бы лучше знать, какое условие в BankAccount.Debit вызвало исключение ( amount > m_balance или amount < 0 ), чтобы быть уверенными в том, что наш метод правильно проверяет свои аргументы.

Еще раз проанализировав тестируемый метод BankAccount.Debit , можно заметить, что оба условных оператора используют конструктор ArgumentOutOfRangeException , который просто получает имя аргумента в качестве параметра:

Рефакторинг тестируемого кода

Затем изменим два условных оператора в методе Debit :

Рефакторинг тестовых методов

В этом случае метод Debit_WhenAmountIsMoreThanBalance_ShouldThrowArgumentOutOfRange может выглядеть следующим образом:

Повторное тестирование, переписывание и анализ

Метод теста сейчас обрабатывает не все требуемые случаи. Если тестируемый метод Debit не смог выдать исключение xref:System.ArgumentOutOfRangeException, когда значение debitAmount было больше остатка (или меньше нуля), метод теста выдает успешное прохождение. Это нехорошо, поскольку метод теста должен был завершиться с ошибкой в том случае, если исключение не создается.

Это является ошибкой в методе теста. Для решения этой проблемы добавим утверждение xref:Microsoft.VisualStudio.TestTools.UnitTesting.Assert.Fail%2A?displayProperty=nameWithType в конце тестового метода для обработки случая, когда исключение не создается.

Однако повторный запуск теста показывает, что тест теперь оказывается непройденным при перехватывании верного исключения. Блок catch перехватывает исключение, но метод продолжает выполняться, и в нем происходит сбой на новом утверждении xref:Microsoft.VisualStudio.TestTools.UnitTesting.Assert.Fail%2A?displayProperty=nameWithType. Чтобы разрешить эту проблему, добавим оператор return после StringAssert в блоке catch . Повторный запуск теста подтверждает, что проблема устранена. Окончательная версия метода Debit_WhenAmountIsMoreThanBalance_ShouldThrowArgumentOutOfRange выглядит следующим образом:

Усовершенствования тестового кода привели к созданию более надежных и информативных методов теста. Но что более важно, в результате был также улучшен тестируемый код.

[!TIP] В этом пошаговом руководстве используется платформа модульных тестов Microsoft для управляемого кода. Обозреватель тестов также может запускать тесты c платформ модульных тестов стороннего производителя, которые имеют адаптеры для обозревателя тестов. Дополнительные сведения см. в разделе Установка платформ модульного тестирования сторонних поставщиков.

Читайте также: