СМ-Консалт
 

Реализация среды ITCL или IBM с использовании Rational Functional Tester

Статьи Тестирование программного обеспечения

Введение

Существует множество форумов и сообществ, которые определяют среду IBM (или ITCL): что она собой представляет, как работает, каковы ее основные преимущества. Данная статья посвящена реализации среды IBM. В статье будет рассмотрено, как можно реализовать среду IBM с использованием IBM® Rational® Functional Tester для автоматизации функционального тестирования приложения.


Среда

Среда IBM, ранее известная как среда ITCL, была разработана командой Quality Software Engineering (качественная разработка ПО) в сотрудничестве с опытными командами по автоматизации корпорации IBM. Среда состоит из трехярусной архитектуры, реализуемой посредством (appobjects) объектов приложения, (tasks) задач и (test cases packages) пакетов контрольных примеров (пакет программ IBM).

Принципы, лежащие в основе объектов приложения, заданий и пакетов контрольных примеров:

  • Многоуровневая архитектура
  • Разграничение понятий «что» и «как»
  • Возможность многократного использования кода
  • Согласованная и четкая организация
  • Возможность быстро активизироваться
  • Быстрая отладка
  • Эффективная организация файлов
  • Возможность сотрудничества
  • Возможность учиться у других

Здесь объясняются объекты приложения, задачи и контрольные примеры.

  • (AppObjects) Объекты приложения: здесь вы будете хранить информацию об элементах GUI вашего приложения. Здесь будут также записываться методы Getter, которые возвращают объекты, позволяя методу Caller запрашивать элементы GUI и управлять ими. Эти методы обычно вызываются внутри уровня Task .
  • (Tasks) Задачи: здесь вы будете разрабатывать методы многократного использования, выполняющие обычные функции в вашем приложении. Здесь вы также будете создавать методы, которые будут управлять и запрашивать комплексные, специфические для приложения задачи управления. Методы в Задаче (Task) вызываются Test Cases (контрольными примерами).
  • (Test Cases) Контрольные примеры: методы, которые перемещаются по приложению, проверяют его состояние и регистрируют результаты в журнале.

Методология реализации

Методология, описанная в данном разделе, определяет пятишаговую процедуру реализации среды IBM.

Шаг 1. Прежде всего, создайте новый проект на локальном устройстве. В данном проекте будет находиться хранилище архив, в котором вы можете хранить, поддерживать, компилировать и запускать код автоматизации. В Functional Tester выберите File > New > Functional Test Project. Задайте имя вашего проекта и нажмите Finish.

Шаг 2. Импортируйте в ваш проект пакет IBM, классы утилит, которые будут широко использоваться в скриптах автоматизации. И, хотя можно просто проложить путь к файлу ibm.jar file, импортирование пакета IBM в проект позволит вам с большей простотой изучить содержание пакета и вернуться к нему позже, во время отладки. Пакет IBM вы можете загрузить непосредственно из раздела загрузки, находящейся в конце данной статьи.

Импортирование пакета ibm.jar

  1. В IBM Rational Functional Tester перейдите к представлению Projects в левой части экрана и нажмите на проект, созданный в Шаге 1.
  2. Выберите File > Import. Выберите Zip file и нажмите Next. Воспользуйтесь кнопкой Browse (просмотр), чтобы найти файлы ibm.jar или ibm.zip там, где вы решили их хранить.
  3. Оставьте все установки в положении «по умолчанию» и нажмите Finish.
  4. Вы увидите, что ваш проект расширен в представлении Functional Test Projects. Внизу вы появится папка с именемibm.

Шаг 3. Создайте пакет, назвав его AppObject (объект приложения).

  1. В Rational Functional Tester перейдите к представлению Projects в левой части экрана слева и нажмите на проект, созданный в Шаге 1.
  2. Выберите File > New > New Test Folder.
  3. Назовите папку AppObject.
  4. Нажмите Finish.
  5. Повторите Шаги с 1 по 4, чтобы также создать папки Tasks и TestCase.

Что представляет собой пакет AppObject?

В данном пакете вам придется отображать все объекты приложения, которое вы тестируете. Общая рекомендация: подготовьте отдельные скрипты для каждого изображения (экрана), чтобы обеспечит более успешное повторное использование, организацию объектов и классификацию. Например, создайте скрипт, назвав его login, в нем будут содержаться все документы, относящиеся к экрану login. Вы также можете создать другие скрипты, относящиеся к sent, inbox и т.п.

Работа с папкой AppObject

  1. Создайте пустой скрипт в пакете AppObject.
  2. Выберите пакет AppObject и, нажав правую кнопку мыши, выберите Add Empty Script, как показано на рисунке 1.

Рисунок 1. Добавление пустого скрипта.
Добавление пустого скрипта
  1. Установите Login в качестве имени и нажмите Finish
  2. В проводнике по скрипту (script explorer) двойным щелчком выберите Private Object Map.
  3. Убедитесь, что сайт mail.yahoo.com (или тестируемое приложение) открыто.
  4. В карте Private Object нажмите Test Object > Insert Object (s), как показано на рисунке 2.

Рисунок 2. Вставка объекта тестирования
Вставка объекта тестирования
  1. Перетащите иконку в виде руки из диалогового окна, находящегося внизу, на объект, который вы хотите отобразить, как показано на рисунках 3 и 4.

Рисунок 3. Выбор объекта путем перемещения
Выбор объекта путем перемещения

Рисунок 4. Выбранный объект
Выбранный объект
  1. Нажмите Finish.
  2. Ваш экран Private Object Map должен выглядеть так, как показано на рисунке 5.

Рисунок 5. Завершенная карта частных объектов (Private Object Map)
Завершенная карта частных объектов
  1. Выберите объект, который вы недавно добавили, нажмите на него правой кнопкой мыши и выберите Add to Script AppObject.Login.
  2. Повторите шаги 6-10 для всех объектов, которые вы хотите добавить к скрипту.
  3. Нажмите File > Save в Private Test Object и закройте его. Проводник по скрипту должен выглядеть так, как показано на рисунке 6.

Рисунок 6. Проводник по скрипту Login
Проводник по скрипту для Login
  1. Следуя предложенной схеме, вы можете создать столько скриптов, сколько вы хотите добавить в проект, вы также можете добавить и относящиеся к нему объекты.

Автоматическое создание кода AppObjects

После того, как вы добавили объекты в ваши карты объектов, вы можете автоматически создать методы getter, написав несколько строк кода. Эти методы getter обеспечат вам доступ к объектам всего проекта, добавленным в скрипт. Вы создадите пустой скрипт внутри папки AppObject. Далее следует написать код, показанный в листинге 1, чтобы автоматичсеки создать метод getter.

  1. Создайте пустой скрипт под названием getter внутри папки AppObjectetter.
  2. Создайте код в листинге 1.

Листинг 1. Код для автоматической генерации методов getter
                
//Импортируйте эти два выражения в начале скрипта
import java.util.Vector; 
import ibm.tools.ClassGenerator;
//запишите представленный ниже код в функцию TESTMAIN
public void testMain (Object[] args) 
        {
                Vector v = new Vector ();
                v.addElement  (new AppObject.Login  ());
        //Добавьте элемент для всех скриптов, имеющихся в вашем AppObject
                new ClassGenerator ().updateScripts (v);
        }                                
                                

  1. Содержание скрипта Getter должно выглядеть так, как показано на рисунке 7.

Рисунок 7. Скрипт Getter
Скрипт Getter
  1. Запустите скрипт, выбрав Script > Run.
  2. Когда, после однократного запуска, вы нажмете скрипт Login, появится окно с вопросом, хотите ли вы (загрузить) сохранить изменения.
  3. Нажмите Yes, и вы должны увидеть, что в вашем скрипте Login есть функция Getter, так, как показано на рисунке 8.

Рисунок 8. Функция Login в скрипте Getter
Функция Login в скрипте Getter

Шаг 4. Создание задач

В задачах вы будете записывать наиболее часто используемые комплексные коды.

  1. Сначала, создайте скрипт в папке Tasks (так же как раньше создавали документ в папке AppObject).
  2. Выберите папку Tasks. Нажмите на него правой кнопкой мыши и выберите Add Empty Script.
  3. Задайте имя и нажмите Finish.
  4. Вставьте код в листинге 2 в скрипт.

Листинг 2. Задача Login
                
//Объявите объект скриптов, существующих в APPOBJECT 
public AppObject.Login lgn = new AppObject.Login ();
….
….
public AppObject.Login lgn = new AppObject.Login ();
        public void AssignLoginInfo ()
        {
                lgn.getText_login ().setText ( «abc»);
                lgn.getText_passwd ().setText ( «New1»);
        }

public void testMain (Object[] args) 
{
}                                                        
                                

  1. Содержание вашего скрипта должно выглядеть так, как показано на рисунке 9.

Рисунок 9. Исправленное содержание скрипта
Исправленное содержание скрипта
  1. Вы можете добавить столько функций, сколько требуется в один и тот же скрипт, или в новый/е скрипт/ы, столько, сколько требуется для приложения.

Далее вы собираетесь автоматизировать эти функции.

Шаг 5. Создание контрольных примеров

В контрольных примерах (Test Cases) вы пишите фактические шаги, необходимые для выполнения действия. Свойства из Tasks и Appobject будут наследоваться контрольными примерами.

  1. Сначала создайте скрипт внутри папки Tasks (так же, как ранее создавали документ в папке Appobject).
  2. Выберите папку Tasks. Нажмите на него правой кнопкой мыши и выберите Add Empty Script.
  3. Задайте имя и нажмите Finish.
  4. Вставьте код, показанный в листинге 3, в скрипт.

Листинг 3. Контрольный пример
                
//Объявите объект скриптов, существующих в задачах 
//Создание объекта задач скрипта задачи LOGIN
        public Tasks.LoginTask lt = new Tasks.LoginTask ();
….
….
public void testMain (Object[] args) 
{
        //Вызов браузера
        startBrowser ( «mail.yahoo.com»);
        //Присвоили имя пользователя и информацию для LOGIN 
        lt.AssignLoginInfo ();
        //Нажмите на кнопку LOGIN/SUBMIT 
        lt.lgn.getButton_signInsubmit ().click ();
        //Дальнейшее действие может быть написано соответственно                
}

  1. Содержание вашего скрипта должно выглядеть так, как показано на рисунке 10.

Рисунок 10. Окончательный скрипт
Окончательный скрипт
  1. Теперь запустите скрипт на выполнение. Он должен открыть браузер, ввести имя пользователя и пароль, а затем, войти в учетную запись Yahoo.

Резюме

Среда IBM может быть реализована после выполнения пяти шагов, описанных в данной статье. Примеры и отрывки кода, приведенные здесь, относятся к Rational Functional Tester. Они могут быть изменены в зависимости от того, используют ли другие реализации среды IBM какие-либо другие инструменты.



Загрузка

ОписаниеИмяРазмерМетод загрузки
IBM package files ibm_package.zip 551 KB  FTP

24.02.2008

Комментарии

Добавить комментарий (анонимные комментарии не публикуются!!!)

ФИО: 
E-mail: 
Тема: 
Комментарий: 
Оценка:   
 
 
 
 
 
Код подтверждения:
   

Новости СМ-Консалт

Мастер-класс для тренеров и руководителей "Работа в аудитории". 1 ступень уже в марте

Обновлено расписание тренингов до марта 2017 года

Бесплатный вебинар 14 декабря в 14 00 по Мск - «Секреты управления ИТ-командой: 10 важных практик, которые сделают команду эффективной»

Новые статьи в библиотеке

Примеры отраслевых решений на основе BIPULSE

Практика реализации модуля интеграции для Rational Software Architect, позволяющего преобразовывать низкоуровневое представление процесса из IBM Rational ClearQuest в UML

Что удивляет в русских менеджерах иностранцев

Разработка ПО с использованием лучших мировых практик и инструментов на Иркутском авиационном заводе

Презентация доклада для IT Global Meetup Санкт-Петербург: "Почему Agile так популярен? Взгляд циника и психолога"

Отчет, презентация и видео доклада для Октябрьской встречи Петербургского клуба менеджеров проектов в IT - SPM Meetup #36

Заказчики и истории успеха

Наши тренинги, семинары, курсы

Дружите с нами на FaceBook

Проверить настройки
Компания
Сделано в СМ-Консалт
Услуги 
Компетенция
  • CMC-TotalTest (скоро)
    уникальная разработка автоматизации функционального тестирования. Альтернатива HP UFT, IBM RFT и Microsoft!
  • CMC-Bisquiter
    автоматизированное тестирование АБС "Бисквит"
  • CMC-Formater
    тестирование печатных и экранных форм
  • CMC-TerminalTest
    тестирование терминальных приложений
  • ProjectTracker
    интеграция ALM и MS Project
  • GanttChart
    модуль управления проектами для IBM Rational ClearQuest и TeamConcert
    Все разработки СМ-Консалт >
  • ИТ-консалтинг
  • Автоматизированное тестирование
  • Ручное тестирование
  • Аутсорсинг тестирования
  • Оптимизация бизнес-процессов
  • Внедрение методологии и инструментов ALM
  • Обучение и коучинг
  • Разработка ПО
  • Интеграция
ООО СМ-Консалт (СМК), 2004-2016.
Карта сайта