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

Фотография

Model Based Testing (Тестирование на основе моделей)


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

#1 lurk

lurk

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

  • Members
  • PipPipPip
  • 180 сообщений


Отправлено 31 августа 2015 - 15:54

Предупреждение: Сложная тема. 

 

Тестирование на основе модели (model-based testing): Тестирование, основанное на модели исследуемого компонента или системы. Например: модели роста надежности, моделей использования (таких как функциональный разрез) или поведенческих моделей (таких как таблицы альтернатив или таблиц переходов состояний). [ISTQB Стандартный глоссарий терминов, используемых в тестировании программного обеспечения Версия 2.2]

 

Видео:

1. Тестирование на основе моделей: "ужас-ужас" или всё не так страшно? (Алексей Баранцев SQA Days 15)

2. Применение MBT для генерации тестовых сценариев для ручного и автоматического тестирования (Юлия Саенко SQA Days 13)

3. Micro Model Based Testing (Роман Иовлев SQA Days 17)

4. Тестирование на основе моделей (3 лекции Виктор Кулямин)

5. Тестирование на основе Модели (Александр Боциев - Intel, г. Нижний Новгород встреча QA Alliance 21 марта 2015)

6. Вы можете купить видео "Функциональное тестирование на основе моделей" (Алексей Баранцев).

 

Статьи:

1. Тестирование на основе моделей (Александр Петренко, Елена Бритвина, Сергей Грошев, Александр Монахов, Ольга Петренко)

2. Архитектура автоматизированных функциональных тестов: прагматичный подход к использованию Model-Based техник автоматизированного тестирования (Михаил Давыдов)

3. Тестирование на основе моделей (к.ф.-м.н. В. В. Кулямин) - можно скачать лекции по данному курсу

4. Метод разработки тестов для программных интерфейсов приложений на основе конечно-автоматной модели тестирования (К. В. Рубинов, В. В. Веденеев)

 

Цитаты:

Ага, я понял. Сергей, Вы смешиваете два понятия -- анализ моделей (model checking) и тестирование на основе моделей (model-based testing).

Анализ моделей -- это техника, цель которой состоит в моделировании какого-либо явления и изучения этой модели на полноту, непротиворечивость и т.д. Здесь действительно довольно хорошо работают методы логического программирования.

Тестирование на основе моделей -- это несколько другая техника, которая не занимается изучением того, хороша модель или плоха. Модель принимается за эталон, и задача ставится иначе -- проверить, что данная реализация соответствует модели (в более общем случае -- проверить соответствие двух моделей разного уровня абстракции, ибо реализацию тоже можно трактовать как модель). Для этого, конечно, тоже можно применять методы формального анализа (то есть формально выводить, что если некоторое свойство выполняется в одной модели, то оно выполняется и в другой), но, к сожалению, если на относительно простых моделях эти методы работают, применять их к реальным программам не удается из-за очень высокой сложности. Поэтому применяются другие методы и термин "тестирование на основе моделей" обычно относится именно к этим другим.

Чтобы понять разницу более фактурно, представьте, что Вы разработали замечательную модель, включающую всё, что Вам хочется (в том числе стихийные бедствия, пожары и т.д. :)), потом проверили, что эта модель действительно удовлетворяет всем требованиям, короче -- конфетка. А потом Ваши программисты разработали реальную программную систему, которая ЯКОБЫ реализует эти требования и ЯКОБЫ должна соответствовать модели. А как проверить, соответствует ли на самом деле? Вот этим и занимается model-based testing.

 

Здравствуйте!

 

Давно интересует вопрос, использует ли кто-то на практике тестирование на основе моделей (Model-Based Testing). Я имею в виду, для действительно сложных случаев, когда автоматически сформированные тестовые последовательности было бы сложно реализовать вручную.

 

Фактически, MBT соответствует технике тест-дизайна с применением диаграммы состояний и переходов.

Так вот, на практике встречал 3 случая:

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

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

3) Юнит-тесты, которые проходят за мгновения, поэтому несколько тысяч тестов - не проблема.

 

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

Или же это всё миф, и концепт не имеет практического применения для "медленных" UI-тестов.

 

В качестве бонуса про model-based тестирование уже - Томми Такала и Мико Катара из Техноголического Университета Тампере применяя свой model-based-testing софт для BBC News виджета на Андроиде сообщили следующие цифры - 2/3 обнаруженных этим методом проблем были обнаружены в процессе составления модели, а еще 1/3 после прогона этих тестов. Это не повод не заниматься этим в принципе, но повод составить модель даже если у вас нет ПО или ресурсов на полноценную автоматизацию (да, я знаю что в model-based тестировании составление модели это чуть ли не самая затратная часть). (Сергей Высоцкий) - Отсюда.


  • 3

#2 Artegor

Artegor

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

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

Отправлено 15 февраля 2018 - 06:34

Есть ли какая-то более современная информация по этому поводу или подход теряет популярность? Прошелся быстрым поиском по гуглу, но большинство информации 3-5 годовалой давности и в основном англоязычная.
  • 0

#3 maxim_rumyantsev

maxim_rumyantsev

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

  • Members
  • Pip
  • 2 сообщений
  • ФИО:МАКС Р


Отправлено 08 апреля 2021 - 11:49

Добавлю:

1. https://2019.codefest.ru/lecture/1462  доклад  Model Based Testing в связке с Agile development/testing

2. https://www.youtube....F2X07Zyw5A&t=1s - Оценка методологии автоматизации - MBT


  • 0


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

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