пятница, 21 марта 2014 г.

Автоматизированное тестирование

 http://ru.wikipedia.org/wiki/Selenium - 
инструмент тестирования; про него - http://habrahabr.ru/post/152653/ 
супер! - http://selenium2.ru/
 
 http://citforum.ru/SE/testing/unitesk/
другой инструмент тестирования;

TestLink: http://lazy-tester.blogspot.com/2013/05/testlink.html

Форум про автоматизированное тестирование: http://software-testing.ru/forum/index.php?/forum/113-avtomatizirovannoe-testirovanie/

Стандартный глоссарий терминов , используемых в тестировании программного обеспечения Версия 2.0 ( от 4 декабря 2008)

Шаблон позитивного и негативного тест кейса

Тест кейсы разделяются по ожидаемому результату на позитивные и негативные:
  • Позитивный тест кейс использует только корректные данные и проверяет, что приложение правильно выполнило вызываемую функцию.
  • Негативный тест кейс оперирует как корректными так и некорректными данными (минимум 1 некорректный параметр) и ставит целью проверку исключительных ситуаций (срабатывание валидаторов), а также проверяет, что вызываемая приложением функция не выполняется при срабатывании валидатора.
Пример позитивного тест кейса (все поля OK):

Действие
Ожидаемый результат
1. Открываем форму отправки сообщения
  • Форма открыта
  • Все поля по умолчанию пусты
  • Обязательные поля помечены - *
  • Кнопка "Отправить" не активна
2. Заполняем поля формы:
  • Тип обращения = Консультация
  • Контактное лицо = йцукенгшщзйцукенгшщзйцуке
  • Контактный телефон = +7-916-111-11-11
  • Сообщение
  • Поля заполнены
  • Кнопка "Отправить" - активна (Enabled)
3. Нажимаем кнопку "Отправить"
  • Сообщение "Заявка отправлена"выведено на экран.
  • Новая заявка появилась в списке на странице "Заявки".



Пример негативного тест кейса (поле Контактное лицо - NOK):

Действие
Ожидаемый результат
1. Открываем форму отправки сообщения
  • Форма открыта
  • Все поля по умолчанию пусты
  • Обязательные поля помечены - *
  • Кнопка "Отправить" не активна
2. Заполняем поля формы:
  • Тип обращения = Консультация
  • Контактное лицо = @#$%^&;.?,>|\/№"!()_{}[<~
  • Контактный телефон = (916)333-33-33
  • Сообщение = йццуйцуйц(...)йцу - 1024 символа
  • Поля заполнены
  • Кнопка "Отправить" - активна (Enabled)
3. Нажимаем кнопку "Отправить"
  • Валидационное сообщение со всеми ошибками выведено на экран:
    "В поле "Контактное лицо" запрещено использование цифр и спец. символов."
  • Заявка НЕ появилась в списке на странице "Заявки".

Источник: http://www.protesting.ru/testing/testdesign_practice.html

Разрабатываем шаблон теста

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

Действие Ожидаемый результат
1. Открываем форму отправки сообщения
  • Форма открыта
  • Все поля по умолчанию пусты
  • Обязательные поля помечены - *
  • Кнопка "Отправить" не активна
2. Заполняем поля формы:
  • Тип обращения
  • Контактное лицо
  • Контактный телефон
  • Сообщение
  • Поля заполнены
  • Кнопка "Отправить" - активна (Enabled)
3. Нажимаем кнопку "Отправить"
  • Если введенные данные корректны -
    • Сообщение "Заявка отправлена"выведено на экран.
    • Новая заявка появилась в списке на странице "Заявки".
  • Если введенные данные НЕ корректны -;
    • Валидационное сообщение со всеми ошибками выведено на экран.
    • Заявка НЕ появилась в списке на странице "Заявки".

Техники тест дизайна (Test Design Technics)

Наиболее распространенные техники тест дизайна:
  • Эквивалентное Разделение (Equivalence Partitioning - EP). Как пример, у вас есть диапазон допустимых значений от 1 до 10, вы должны выбрать одно верное значение внутри интервала, скажем, 5, и одно неверное значение вне интервала - 0.

  • Анализ Граничных Значений (Boundary Value Analysis - BVA). Если взять пример выше, в качестве значений для позитивного тестирования выберем минимальную и максимальную границы (1 и 10), и значения больше и меньше границ (0 и 11). Анализ Граничный значений может быть применен к полям, записям, файлам, или к любого рода сущностям имеющим ограничения.

  • Причина / Следствие (Cause/Effect - CE). Это, как правило, ввод комбинаций условий (причин), для получения ответа от системы (Следствие). Например, вы проверяете возможность добавлять клиента, используя определенную экранную форму. Для этого вам необходимо будет ввести несколько полей, таких как "Имя", "Адрес", "Номер Телефона" а затем, нажать кнопку "Добавить" - эта "Причина". После нажатия кнопки "Добавить", система добавляет клиента в базу данных и показывает его номер на экране - это "Следствие".

  • Предугадывание ошибки (Error Guessing - EG). Это когда тест аналитик использует свои знания системы и способность к интерпретации спецификации на предмет того, чтобы "предугадать" при каких входных условиях система может выдать ошибку. Например, спецификация говорит: "пользователь должен ввести код". Тест аналитик, будет думать: "Что, если я не введу код?", "Что, если я введу неправильный код? ", и так далее. Это и есть предугадывание ошибки.

  • Исчерпывающее тестирование (Exhaustive Testing - ET) - это крайний случай. В пределах этой техники вы должны проверить все возможные комбинации входных значений, и в принципе, это должно найти все проблемы. На практике применение этого метода не представляется возможным, из-за огромного количества входных значений.
  • Источник:  http://www.protesting.ru/testing/testdesign_technics.html