Помогите мне начать с поблочным тестированием в Visual Studio 2008

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

Но мы можем помочь немного улучшить этот код:

SaveFileDialog1.Filter = "PDF Files |*.pdf"
If SaveFileDialog1.ShowDialog() = DialogResult.OK AndAlso Not String.IsNullOrWhitespace(SaveFileDialog1.FileName) Then    
    Using writer As StreamWriter = File.AppendText(SaveFileDialog1.FileName) 
        writer.WriteLine()
    End Using
End If

Основываясь на названии вопроса, может быть, вы сначала хотели показать OpenFileDialog? Вы пробовали это? А потом может быть FolderBrowserDialog вместо SaveFileDialog?

7
задан Click Upvote 7 April 2009 в 00:49
поделиться

5 ответов

Получите книгу Прагматическое Поблочное тестирование в C# с NUnit или Разработка через тестирование с Microsoft.NET и работайте через одного из них. Принципы будут применимы ко многим различным средам тестирования, хотя определенные идиомы могут отличаться.

4
ответ дан 6 December 2019 в 21:19
поделиться

Наблюдайте связанные с поблочным тестированием скринкасты и видео по http://www.asp.net/learn/

И также проверьте здесь (Вебкасты MSDN, связанные с Поблочным тестированием):

http://www.google.com/search?q=unit+testing+site%3Amsevents.microsoft.com

2
ответ дан 6 December 2019 в 21:19
поделиться

Для меня я начал путем записи модульных тестов на часть нашего кода обработки строк низкого уровня. Я создал новый проект быть тестами и связанный в строковой библиотеке. Затем я прошел каждый метод и записал модульные тесты на них - граничные условия, ожидаемые выводы для известных исходных данных, и т.д. Сначала это походило на бессмысленный excersize, но затем.........

Я нашел ОШИБКУ!!

Я продаюсь.

Так теперь я добавляю к проекту тестирования, как я перемещаю выше foodchain в наши библиотеки.

2
ответ дан 6 December 2019 в 21:19
поделиться

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

Затем считайте Работу Эффективно С Унаследованным кодом - это покажет Вам, как добавить поблочное тестирование к старым противным проектам.

2
ответ дан 6 December 2019 в 21:19
поделиться

Я загрузил бы ReSharper (и следующие плагины: Исключительный, Агент Smith, Агент Johnsson), инструмент № 1, чтобы улучшить качество кода и ускорить разработку. Resharper не свободен, но это стоит денег ;)

Затем загрузка Xunit: http://xunit.codeplex.com

Создать тест просто:

public class MyObjectTest
{
  MyObject _objectToTest = new MyObject();

  [Fact]
  private void TestStart()
  {
    _objectToTest.Start();
    Assert.True(_objectToTest.IsStarted);
  }
}

ReSharper, интегрированный с xunit, даст Вам значок рядом с каждым методом тестирования. Значок позволяет Вам протестировать (и отладка) метод непосредственно в IDE без Вас имеющий необходимость запустить всю программу. Не может быть легче.

Большинство разработчиков сказало бы, что Разработка через тестирование означает создание теста сначала и объекта после него. Я обычно начинаю с создания класса, добавляя обязательные методы к нему, и затем создайте тест. Это немного быстрее, и Вы, вероятно, начнете осуществлять рефакторинг класс, когда Вы начали создавать тест.

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

2
ответ дан 6 December 2019 в 21:19
поделиться