2014-10-01 3 views
1

Я впервые набираю единицу теста для существующего программного обеспечения, и мой босс попросил меня написать единый тестовый план/план.C# Проверка формы Windows Form

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

Я создал документ excel с несколькими листами, представляющими каждый проект в моих решениях. Я смущен тем, как документ для всех возможных результатов и ресурсов, особенно при работе с методами void и bool. Или при передаче моделей в метод, в котором передано много значений.

Как я могу передать документы, пропустить, ожидаемые результаты для следующего метода 2, базовый контур - это все, что я ищу, а не конкретная документация :

public static void ManualEntryToggleStateChanged(bool isChecked) 
     { 
      /* check for manual entry 
      * if manual entry information can be entered 
      * focus user to reg no 
      */ 
      moTextboxRegName.ReadOnly = !isChecked; 

      moTextboxRegHerd.ReadOnly = !isChecked; 

      if (isChecked) 
      { 
       moTextboxRegHerd.Text = ""; 
       moTextboxRegName.Text = ""; 
       moDropDownListBreed.Focus(); 
      } 

     } 
    public static void LoadAllLabs(nsHacBusSrv.SortMode Sort = nsHacBusSrv.SortMode.NotSorted) 
    { 
     try 
     { 
      moDropDownListLab.DataSource 
       = moBusinessServices.GetAllLabs(Sort); 

      moDropDownListLab.DisplayMember = "Name"; 

      moDropDownListLab.ValueMember = "Idn"; 

      nsTelWinUi.RadListDataItem oDefaultItem 
       = new nsTelWinUi.RadListDataItem("", ""); 

      moDropDownListLab.Items.Add(oDefaultItem); 

      moDropDownListLab.SelectedValue = ""; 
     } 
     catch (System.Exception ex) 
     { 
      Debug.Fail(ex.Message); 

      throw; 
     } 
    } 
+0

У вас больше шансов преуспеть в задаче, если вы попросите образец аналогичного документа/работы ... –

+0

Псевдонимы, подобные этим, являются забавным соглашением. Никогда не видел этого раньше. –

ответ

4

Зачем использовать Excel? Если бы я был вами, я бы добавил тестовый проект к решению. Перейдите к каждому решению и добавьте единичные тесты для каждого из методов. Если у вас есть правильные плагины для визуальной студии, они создадут для вас все тестовые заглушки.

Насколько это можно проверить, это участник искусства, но в основном наука. Все это оборачивается этим. «Любой заданный параметр исчерпывающе проверен, если проверяются следующие условия: Min, Min-1, Min + 1, Max, Max-1, Max + 1 .. Есть два других особых случая, которые вы должны учитывать при просмотре строк .empty и null. Это дает вам всего 8 перестановок для исчерпывающего тестирования всего, но вы обнаружите, что большую часть времени вы можете уменьшить это количество тестов на основе того, что вы тестируете. Например, значение bool имеет только две перестановки. Но строка parm имеет по крайней мере 7 подстановок.

Художественная часть теста вращается вокруг шаблонов пятен и определения того, сколько perumatation действительно необходимо. Например, для двух параметров строки потребуется 7! -1 перестановок, чтобы проверить все возможности. различные тесты, чтобы получить все состояния, но, если вы посмотрите на код достаточно часто, вы можете значительно уменьшить эти числа.

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

+1

Спасибо, что нашли время, чтобы предоставить этот ответ, я нашел это очень полезным. – Mark

1

вы можете написать тест, где вы утверждаете указанные свойства на объектах moTextboxRegName и moDropDownListLab. Это предполагает, что у вас есть способ разоблачить эти объекты через ваш api. При проведении модульного тестирования вы должны написать свой код с учетом тестов, чтобы проверить свой код.