.NET 4.x Доступ к классу с Unit Test Project - C#
Формулировка задачи:
Задание:
1.
Создайте просто строковый калькулятор с методом int Add(string numbers).1.1.
Метод может принимать 0,1 или 2 аргумента и возвращать их сумму. Например “” или “1” или “1,2” (для пустой строки метод должен вернуть 0).1.2.
Начните писать тест с передачи пустой строки, потом одного аргумента и потом 2-х. Для выполнения, я создал проектCalculator
. Там же добавил классMyCalculator
и реализовал функциюint Add(string numbers)
:using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace Calculator { class MyCalculator { public int Add(string numbers) { if (numbers == "") return 0; char delimiter = ','; int Sum = 0; string[] subStrings = numbers.Split(delimiter); foreach (var subString in subStrings) Sum += Convert.ToInt32(subString); return Sum; } } }
CalculatorTest
). В Reference установилNUnit.framework
(так требуется в задании) и отредактировал тестовый класс (TestCalculator
):using System; using NUnit.Framework; namespace CalculatorTests { [TestFixture] public class TestCalculator { [Test] public void Add_CallMethod_ReturnsSum() { //arrange // MyCalculator calc(); <==== ERROR! // ... } } }
для написания
юнит-теста
метода int Add(string numbers) класса MyCalculator нужен доступ к этому классу. Как его получить?P.S. В методичке к лабе есть пример всего процесса построение тестов. Только там основной проект был в виде .dll.
Решение задачи: «.NET 4.x Доступ к классу с Unit Test Project»
textual
Листинг программы
namespace CalculatorTests { [TestFixture] public class TestCalculator { [Test] public void Add_CallMethod_ReturnsSum() { //arrange var calculator = new Calculator.MyCalculator(); // act // ... // assert // ... } } }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д