Тестирование покрытия нескольких условий

При использовании метода тестирования "белого ящика" под названием "Многократное покрытие условий", мы берем все условные операторы или только те, которые имеют несколько условий? Теперь, возможно, подсказки в названии, но я не уверен.

Так что если у меня есть следующий метод

void someMethod()
  {

      if(a && b && (c || (d && e)) )  //Conditional A
      {

      }

      if(z && q)   // Conditional  B
      {
      }

  }

Я сгенерирую таблицу истинности только для "Условного A" или я также создаю Условный B?

Спасибо,

2 ответа

Решение

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

Я нашел следующее на покрытии нескольких условий. Похоже, это указывает на то, что множественное покрытие условий, как следует из названия, применимо только к условным выражениям с несколькими операторами.

Так что для следующих условных:

if ((a>0)&&(b<=4)&&(c>0))

Мы создаем следующее

Test Case   a > 0   b <= 4    c > 0
MCC1        F        F         F
MCC2        F        F         T
MCC3        F        T         F
MCC4        F        T         T
MCC5        T        F         F
MCC6        T        F         T
MCC7        T        T         F
MCC8        T        T         T
Другие вопросы по тегам