Учебники

.NET Core — выполнение тестов в Visual Studio

В этой главе мы обсудим, как запускать тесты в Visual Studio. .NET Core был разработан с учетом тестируемости, поэтому создание модульных тестов для ваших приложений стало проще, чем когда-либо прежде. В этой главе мы запустим и выполним наш тестовый проект в Visual Studio.

Давайте откроем решение FirstApp в Visual Studio.

Решение FirstApp

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

Давайте сначала добавим папку и назовем ее тестовой .

Тестовое задание

Щелкните правой кнопкой мыши на тестовой папке.

Тестовая папка

Выберите файл project.json и нажмите « Открыть» .

Проект Json File

На следующем снимке экрана показан код в файле Tests.cs в качестве вывода.

тесты

Это реализация по умолчанию, и она просто проверяет, что True равен true. Это среда тестирования xUnit, и вы увидите атрибут Fact, который аннотирует и обозначает метод теста.

using System; 
using Xunit; 
  
namespace Tests { 
   public class Tests { 
      [Fact] 
      public void Test1() { 
         Assert.True(true); 
      } 
   } 
} 

Ниже приведена реализация файла project.json .

{ 
   "version": "1.0.0-*", 
   "buildOptions": { 
      "debugType": "portable" 
   }, 
   "dependencies": { 
      "System.Runtime.Serialization.Primitives": "4.1.1", 
      "xunit": "2.1.0", 
      "dotnet-test-xunit": "1.0.0-rc2-192208-24" 
   }, 
   "testRunner": "xunit", 
   "frameworks": { 
      "netcoreapp1.0": { 
         "dependencies": { 
            "Microsoft.NETCore.App": { 
               "type": "platform", 
               "version": "1.0.1" 
            }
         }, 
         "imports": [ 
            "dotnet5.4", 
            "portable-net451+win8" 
         ] 
      } 
   } 
}

В файле project.json наиболее важной зависимостью от среды тестирования является xunit, который содержит атрибут Fact. Он включает в себя среду тестирования и API для тестирования с помощью xunit.

У нас также есть dotnet-test-xunit , он адаптирован для того , чтобы xunit мог работать с .NET Core, особенно с утилитой командной строки для тестирования dotnet . Затем вы увидите testRunner, который запустит xunit, и вы также увидите среду netcoreapp1.0 .

Вы увидите зависимость .NETCore.App ниже.

Чтобы запустить тестирование в Visual Studio, давайте откроем Test Explorer из пункта меню Test → Window → Test Explorer .

Тестовый проводник

И вы можете видеть, что Visual Studio автоматически обнаруживает тест. Имя теста состоит из namespace.className.TestMethodName . Теперь давайте нажмем кнопку « Запустить все» в Test Explorer .

Кнопка «Запустить все»

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

using System; 
using Xunit; 
  
namespace Tests { 
   public class Tests { 
      [Fact] 
      public void Test1() { 
         Assert.True(false); 
      } 
   } 
} 

Давайте выполним тест еще раз, нажав на ссылку Run All .

Запустить все

Теперь вы можете увидеть провал теста .