21 / 6 / 2
Регистрация: 26.10.2012
Сообщений: 205
Записей в блоге: 1
1

Создание простейшего Unit Test Project в VS2015Community

06.11.2015, 17:09. Показов 1080. Ответов 1
Метки нет (Все метки)

Пытаюсь понять основы тестирования, запнулся на самом начале.

Пробую по инструкции MSDN.
Со своей стороны я сделал простой проект HelloWorld. Создаётся класс Car с одним полем string и двумя конструкторами, с параметром и без. А так же один метод, позволяющий вывести на экран приветственное сообщение или перезаписать текстовое поле.

Goodbyer.cs
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
 
namespace HelloWorld
{
    class Goodbyer
    {
        private string _who;
 
        public Goodbyer()
        {
            _who = "unnamed hero";
        }
 
        public Goodbyer(string who)
        {
            _who = who;
        }
 
        public string Message
        {
            get { return "Goodbye " + _who + "!"; }
            set { _who = value; }
        }
    }
}
Program.cs
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
using System;
 
namespace HelloWorld
{
    class Program
    {
        static void Main(string[] args)
        {
            Goodbyer myHero = new Goodbyer("IAM");
            myHero.Message = "NoAmI";
            Console.WriteLine(myHero.Message);
        }
    }
}
Далее я добавил в Solution ещё один проект типа Unit Test Project и прилиньковал в References ссылку на проект HelloWorld.

Проект HelloWorldTest/UnitTest1.cs готов для написания тестов
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
using System;
using Microsoft.VisualStudio.TestTools.UnitTesting;
 
namespace HelloWorldTest
{
    [TestClass]
    public class UnitTest1
    {
        [TestMethod]
        public void TestMethod1()
        {
        }
    }
}
Далее я так понимаю нужно использовать разнообразные сравнительные методы класса Assert, похож / не похож результат выполнения методов моего тестируемого класса с каким-то эталоном (другим объектом, какой-нибудь константой и др.) Но вот тут у меня как раз затуп. Не могу понять как я например могу протестировать, что вбить в UnitTest1.cs
  • оба конструктора;
  • метод вывода на экран/перезаписи поля _who.

ADD:
По правой кнопке мыши в коде в контекстном меню есть пункт Create Unit Tests, но по нажатию появляется ошибка, где бы я ни нажал Create Unit Tests is supported only within a publuc class or a publuc method.

ADD2:
В других примерах из сети встречал выражение Assert.Throw, но у меня IntelliSense вообще не предлагает такой метод у класса Assert.
__________________
Помощь в написании контрольных, курсовых и дипломных работ здесь
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
06.11.2015, 17:09
Ответы с готовыми решениями:

Доступ к классу с Unit Test Project
Задание: 1. Создайте просто строковый калькулятор с методом int Add(string numbers). 1.1....

Unit Test Project (.NET Framework) - нет доступных тестов
При запуске тестов выдает ошибку - UnitTestProject.dll нет доступных тестов. Убедитесь, что...

Что такое unit test и regression test
Что такое unit test и regression test?

Unit Test
Как пишутся модульные тесты?прочитал несколько книг, но не в одной не встречал глав/заголовков о...

1
Каратель
Эксперт С++
6601 / 4020 / 401
Регистрация: 26.03.2010
Сообщений: 9,273
Записей в блоге: 1
06.11.2015, 18:54 2
класс Goodbyer должен быть public

Добавлено через 52 секунды
либо сборка должна быть помечена атрибутом InternalsVisibleTo

Добавлено через 2 минуты
Цитата Сообщение от arvalon Посмотреть сообщение
Не могу понять как я например могу протестировать, что вбить в UnitTest1.cs
оба конструктора;
метод вывода на экран/перезаписи поля _who
1. сконструировать объект конструктором без параметров и проверить свойство
2. сконструировать объект конструктором с параметрами и проверить свойство
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
06.11.2015, 18:54

Unit Test
Я проверяю результат который я ожидаю и будет ли он выполняться. Я знаю, что по запросу который я...

Project и Unit
Всем привет У меня возник вопрос можно ли как подключить какой нибуть юнит к форме которая...

Unit Test WPF UI
Народ подскажите, где можно найти описание как создать Unit test для WPF UI.

Написание unit test
Разбираюсь с написанием unit test. Вот что не могу понять. В примерах, сами тесты встраивают в само...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2021, vBulletin Solutions, Inc.