it-swarm.com.ru

Как запустить тесты NUnit в Visual Studio 2017?

Я только что установил VS 2017. У меня есть проект, использующий NUnit для тестовых случаев. Ctrl+R-T больше не запускает тесты, и Test Explorer больше не находит тесты, помеченные атрибутом TestCase.

Есть ли способ запустить NUnit или найти обновление? Я переустановил NUnit из диспетчера пакетов Nuget до последней версии без каких-либо улучшений.

150
Dan Violet Sagmiller

Добавьте пакет NuGet тестового адаптера NUnit в свои тестовые проекты 

Или установите расширение Visual Studio для тестового адаптера. Есть один для 

Я предпочитаю пакет NuGet, потому что он будет синхронизирован с версией NUnit, используемой вашим проектом, и, таким образом, будет автоматически соответствовать версии, используемой на любом сервере сборки.

169
jessehouwing

Вам необходимо установить NUnitTestAdapter. Последняя версия NUnit - 3.x.y (3.6.1), и вы должны установить NUnit3TestAdapter вместе с NUnit 3.x.y

Чтобы установить NUnit3TestAdapter в Visual Studio 2017, выполните следующие действия:

  1. Щелкните правой кнопкой мыши Project -> щелкните «Управление пакетами Nuget ..» в контекстном меню.
  2. Перейдите на вкладку Обзор и найдите NUnit.
  3. Выберите NUnit3TestAdapter -> нажмите «Установить» справа -> нажмите «OK» во всплывающем окне «Просмотр»  enter image description here
31
Ripon Al Wasim

Этот помог мне: https://www.infragistics.com/community/blogs/dhananjay_kumar/archive/2015/07/27/getting-started-with-net-unit-testing-using-nunit.aspx

В принципе: 

  • Добавьте библиотеку NUnit 3 в Nuget.
  • Создайте класс, который вы хотите проверить. 
  • Создайте отдельный класс тестирования, над ним должно быть [TestFixture]. 
  • Создайте функцию в классе тестирования, над ней должно быть [Test]. 
  • Затем перейдите в TEST/WINDOW/TEST Explorer (через верх). 
  • Нажмите «Выполнить» слева, и он расскажет вам, что прошло, а что не удалось.

Мой пример кода здесь:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using NUnit.Framework;

namespace NUnitTesting
{
    class Program
    {
        static void Main(string[] args)
        {
        }
    }

    public class Maths
    {
        public int Add(int a, int b)
        {
            int x = a + b;
            return x;   
        }
    }

    [TestFixture]
    public class TestLogging
    {
     [Test]
     public void Add()
        {
            Maths add = new Maths();
            int expectedResult = add.Add(1, 2);
            Assert.That(expectedResult, Is.EqualTo(3));
        }
    }
}

Это вернет true, если вы измените параметр в Is.Equal, он потерпит неудачу и т.д.

16
Lee
  • Вы должны выбрать архитектуру процессора юнит-тестов в VS:
    Test > Test Settings > Default processor architecture

  • Тестовый адаптер должен быть открыт для просмотра тестов: (VisualStudio, например:
    Test->Windows->Test Explorer


Дополнительную информацию о том, что происходит, вы можете рассмотреть в «VS-Output-Window», выбрать выпадающий «Show output from» и установить «Tests».

3
MichiBack

Вам необходимо установить 3 пакета NuGet:

  • Nunit
  • NUnit3TestAdapter
  • Microsoft.NET.Test.Sdk

Удачи в написании юнит-тестов!

2
David Liang

Используя CLI, создать работающий проект NUnit очень просто. шаблон делает все за вас.

dotnet new -i NUnit3.DotNetNew.Template
dotnet new nunit

В .NET Core это определенно мой предпочтительный путь.

0
Dejan

Чтобы запустить или отладить тест в Visual Studio 2017, нам нужно установить «NUnit3TestAdapter». Мы можем установить его в любой VS, но он работает правильно в версии VS для сообщества. Для установки вы можете добавить его через Nuget Package.

0
Parmeshwar Karale