Перейти к содержимому

Фотография

Помогите пож.определиться с тест-кейсами


  • Авторизуйтесь для ответа в теме
Сообщений в теме: 8

#1 derossi

derossi

    Новый участник

  • Members
  • Pip
  • 2 сообщений
  • ФИО:Виталий

Отправлено 29 августа 2011 - 20:50

Здравствуйте.
Не поможете ли вы в такой задаче.

В базе данных есть данные:
Иванов Иван 01.01.1990 0671111111
Петров Петр 03.03.1993 0961111111
Петров Петр 03.03.1993 0501111111

И есть довольно странная форма логина:
- Поле Фамилия
- Поле Имя
- Поле Дата рождения

Логика программы следующая:
- если вводишь верно имя, фамилию и дату рожд. уникального пользователя (Иванов Иван 01.01.1990), тебя залогинивает и переносит на след.страницу.
- если вводишь верно имя, фамилию и дату рожд. НЕуникального пользователя (Петров Петр 03.03.1993) программа выдает ERROR
- если вводишь несуществующего пользователя (Сидоров Сидор 01.01.2000) программа выдает ERROR (точно такую же ошибку. НЕ ДРУГУЮ!)
- если вводишь всякую фигню, цифры, пустые поля, иероглифы, программа выдает тот же самый(!) ERROR.

Конечно я немного утрирую ситуацию, упрощаю, но так легче для вопроса.

А вопрос следующий:
Есть вариант 1, написать на все это дело 2 тесткейса (по количеству выходных состояний программы).
В первый положительный flow, а во второй - все остальное: и пустые поля, и иероглифы, и вполне нормальные данные те которые приведут к ERROR (например, Петров Петр 03.03.1993, ERROR - т.к. таких двое в базе).
Есть вариант 2,сделать большее кол-во тесткейсов, например на данные с уникальным пользователем тесткейс позитивный, на данные с неуникальными пользователями негативный, еще один для корректного, но несуществующего, еще один для всякой фигни, типа пустых полей и иероглифов.

Делается это все для автотестирования, регрессии, все данные пишутся в отдельный файл из которого потом будут браться.

Кому какой подход больше нравится?
  • 0

#2 Drag

Drag

    Активный участник

  • Members
  • PipPip
  • 123 сообщений


Отправлено 30 августа 2011 - 01:58

Первый по моему более адекватен.
  • 0

#3 Vader

Vader

    Активный участник

  • Members
  • PipPip
  • 129 сообщений
  • Город:Харьков

Отправлено 30 августа 2011 - 07:32

Да уж форма логина у вас удивительная... Имхо, правильней сделать 3 кейса:
1. уникальный пользователь
2. неуникальный пользователь
3. все остальное
т.к. несмотря на то, что вы видите одинаковые ошибки в кейсе 2 и 3, обрабатываются эти ситуации в коде, скорее всего, по-разному.
  • 0

#4 Drag

Drag

    Активный участник

  • Members
  • PipPip
  • 123 сообщений


Отправлено 30 августа 2011 - 08:44

Там дело не в обработке, а в корявой логике. По идее 2 теста я мотивировала тем, что первый это позитивный, второй это негативные, т.е. сгруппировать по результату.
  • 0

#5 Vader

Vader

    Активный участник

  • Members
  • PipPip
  • 129 сообщений
  • Город:Харьков

Отправлено 30 августа 2011 - 09:24

Там дело не в обработке, а в корявой логике. По идее 2 теста я мотивировала тем, что первый это позитивный, второй это негативные, т.е. сгруппировать по результату.

Это не совсем группировка по результату. Я же написал, что результаты выглядят одинаково только внешне. Внутри происходит вот что:
if (user.isExists()) and (user.isUnique()){
 doLogin();
}
else{
 throw UnableToLoginException;
}
и если это немножко развернуть, то можно получить вот такое:
try{
 if (user.isExists()){
  if (user.isUnique()){
   doLogin();
  }
  else{
   throw UserNotUniqueException;
  }
 }
 else{
  throw UserDoesntExistException;
 }
}
catch{
 throw UnableToLoginException;
}
Поэтому объединение в один тест кейс всех негативных результатов выглядит, как по мне, нелогично. Если уж очень не хочется писать много тест кейсов, то лучше объединить проверку на уникальность/неуникальность в один кейс, т.к. они проверяют одно и то же условие в коде.
  • 0

#6 LeshaL

LeshaL

    Профессионал

  • Members
  • PipPipPipPipPipPip
  • 1 094 сообщений
  • ФИО:Алексей Лянгузов
  • Город:Saint-Petersburg


Отправлено 30 августа 2011 - 21:04

если вводишь верно имя, фамилию и дату рожд. НЕуникального пользователя (Петров Петр 03.03.1993) программа выдает ERROR

По мне так это ошибка в программе - должно логинить
  • 0
Regards,
Alexey

#7 Drag

Drag

    Активный участник

  • Members
  • PipPip
  • 123 сообщений


Отправлено 31 августа 2011 - 00:24

Хм) все зависит на каком уровне тестировать, по мне так там просто ошибка, а этот кейс конечно можно вынести в отдельный, а можно и не выносить. Ведь по тест дизайну мы можем как делить значения на различные по обработке, а можем и по конечному результату.
  • 0

#8 elfische

elfische

    Постоянный участник

  • Members
  • PipPipPip
  • 186 сообщений
  • ФИО:Андреева Татьяна
  • Город:Казань


Отправлено 31 августа 2011 - 05:38

Честно говоря с точки зрения, что это будет выполняться автоматически, я бы дробила. Тем самым будет возможность покрыть больше вариантов.
  • 0

#9 Sataly

Sataly

    Новый участник

  • Members
  • Pip
  • 16 сообщений

Отправлено 19 сентября 2011 - 14:38

По мне так должно быть 2 еррора:
- нет такого пользователя
- введена/не введена "фигня"
Соответственно 3 результата и на каждый тест-кейс.

С не уникальными данными - бага системы создания пользователей, а не авторизации!
  • 0


Количество пользователей, читающих эту тему: 1

0 пользователей, 1 гостей, 0 анонимных