вторник, 19 июня 2012 г.

Lesson 128

Ну нравятся мне красивые картинки, которые рисует git.
Вот это два автотестера нарисовали меньше чем за неделю.
Альбом: bug


Слово Канеру

Автоматизация тестирования основанная на ключевых словах делает создание тестов простым для не-программистов.


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

Во-первых, подход требует общего фреймворка, включающего поддержку запуска тестов, а также библиотеки для настройки, анализа результатов и отчетности. Эта информация будет использована для всех keyword-driven тестов.

Во-вторых, вам придется создать задачу, инкапсулирующую работу с функциональностью продукта. Определить для каждой фичи свою функцию, которая будет использована для тестирования и включить ее в библиотеку. Опишите стартовое состояние, в котором функция применима и конечное состояние, к которому приведет ее выполнение. Это позволит сказать, какие последовательности функций являются допустимыми и избежать ошибок.

В-третьих, добавьте поддержку работы с электронными таблицами. Используя декларации, интерпретируйте первую колонку как имя функции. Следующие колонки будут аргументами функции. Выполните функцию с аргументами, и перейдите к следующей строке.

Результат - keyword-driven автоматизация. Этот подход позволяет избежать сложной логики в тестах(Lesson 125). Так как тесты хранятся в таблицах, они легко читаются не-программистами. Because the tasks to be used and tested are all that the tester specifies, он сможет сконцентрироваться на тестах, а не на языке программирования.

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

Рецензент Hans Buwalda сообщает: «Keyword driven подход может стать хорошей основой. Тем не менее, за много лет работы я узнал, что тестирование и автоматизация тестирования остается очень сложной областью, требующей привлечения опытных специалистов, чтоб сделать ее правильно»
Мы видели хорошие результаты работы с такой техникой. Она позволила существенно сократить время на автоматизацию. Также некоторые команды сообщали нам, что такой подход неустойчив и требует слишком много накладных расходов.
Более подробно у этой технике можно узнать у Pettichord (1996) и у Buwalda и Kasdorp (1999).

3 комментария:

  1. расскажите тестировщикам про git pull --rebase. Картинки сразу станут проще :)

    ОтветитьУдалить
  2. О, дочитал до следующего поста :)))

    ОтветитьУдалить
  3. Ага, у нас ребейс и сквош.
    И ЧСХ самая ровная история оказалась у тестировщиков. Нам, вестимо, делать нечего, окромя как коммитить ровно.

    ОтветитьУдалить