Лабораторні роботи ТПЗ 1-8

Інформація про навчальний заклад

ВУЗ:
Національний університет Львівська політехніка
Інститут:
ІКТА
Факультет:
КН
Кафедра:
Електронні обчислювальні машини

Інформація про роботу

Рік:
2012
Тип роботи:
Лабораторна робота
Предмет:
Тестування програмних засобів

Частина тексту файла (без зображень, графіків і формул):

Міністерство освіти і науки України Національний університет „Львівська політехніка” Кафедра ЕОМ Звіт з лабораторної роботи №7 з дисципліни “ Тестування програмних засобів ” Тема: Засоби автоматизованого тестування програмного забезпечення STAF та STAX Мета: Зробити огляд STAF фреймворку та його компоненти STAX. STAF STAF(Software Testing Automation Framework) – це фреймоврк призначений для автоматизованого тестування ПЗ. Він розроблений компанією IBM з відкритим кодом і базується на ідеї багаторазового використання компонентів. Він призначений для того щоб зробити простішим створення автоматизованих тест-наборів. STAF призначений для підвищення ефективності, продуктивності і якості тестування. Він включає створення автоматизованих тестових випадків, управління та автоматизацію тестового середовища. Набір машин на яких встановлений STAF називається Середовищем STAF. STAF середовище працює як Р2Р мережа. Тут немає клієнт-серверної архітектури(немає центру). Рис 1. Структура STAF середовища При розробці STAF були виконані слідуючі вимоги: мінімізація використання ресурсів системи; простота у використані; висока масштабованість – простота додавання і вилучення компонентів STAF. Складові частини STAF STAFProc STAFProc – це процес, який виконується на так званій машині STAF Клієнт(STAF Client), яка приймає запити і маршрутизує їх до відповідних сервісів. Запити можуть бути від локальної машини, або від іншого STAF Клієнта. STAF виконується як процес-демон(STAFProc) на кожній із систем. Тому, якщо потрібно запустити STAF на 5 тестових машинах, і на своїй локальній машині, слід встановити STAF на всіх 6 машинах. Потім потрібно запустити на кожній машині STAFProc. Через STAFProc відбувається мережна взаємодія та взаємодія з програмою, яку тестують. STAF Робоче завантаження Робоче навантаження – це набір процесів, які виконуються на багатьох комп’ютерах. Це може бути єдиний процес на одній машині, або може бути комплексним, коли багато процесів працюють разом на багатьох машинах комуні куючи між собою для вирішення великого, спільного завдання. STAF був розроблений, щоб створювати та автоматизувати роботу робочих навантажень всіх розмірів. В STAF використовуються імена машин для ідентифікації систем в STAF середовищі. По замовчуванню іменами машин є TCP/IP хост або ІР адреса машини. Так як багато екземплярів STAF може бути запущено на одній машині, використовується також ім'я екземпляру STAF для ідентифікації конкретного екземпляру. Ім'я екземпляру можна задати встановленням значення змінної оточення STAF_INSTANCE_NAME. Значенням по замовчуванню є “STAF”. STAF сервіси STAF сервіси – це компонент багаторазового використання в STAF. Вони і забезпечують всю функціональність STAF. Кожен сервіс надає певний набір функціональності (логування, передача файлів, запуск процесів і т. д. ) і визначає запити, які він може обробляти. Вони можуть бути внутрішніми, в такому випадку виконавчий код сервісу знаходиться в межах STAFProc. Служби також можуть бути зовнішніми, тоді виконавчий код служби знаходиться за межами STAFProc, наприклад в Java. Виконавчий код внутрішніх сервісів знаходиться в межах видимості STAFProc, це означає, що вони завжди доступні і завжди мають фіксовані імена. Таблиця 1. Внутрішні сервіси STAF Сервіс Опис Загальна назва  DIAG Надає послуги діагностики Internal ("DIAG")  DELAY Надає засоби для затримки на певну кількість часу Internal ("DELAY")  ECHO Забезпечує «ехо» при відправці повідомлення. Internal ("ECHO")  FILE SYSTEM Дозволяє отримувати і копіювати файли по мережі Internal ("FS")  HANDLE Надає інформацію про існуючі STAF дескриптори Internal ("HANDLE")  HELP Надає довідку по кодам помилок STAF Internal ("HELP")  MISC Опрацьовує різноманітні команди, наприклад відображення запущеної версії STAF Internal ("MISC")  PING Використовується для перевірки з’єднання між комп’ютерами Internal ("PING")  PROCESS Дозволяє зробити запуск, зупинку та чергування процесів Internal ("PROCESS")  QUEUE Надає мережеві механізми взаємодії між процесорами для програм STAF Internal ("QUEUE")  SEMAPHORE Надає засоби синхронізації процесів – семафори Internal ("SEM")  SERVICE Дозволяє переглядати список доступних сервісів на комп’ютері і запити, які були підтверджені Internal ("SERVICE")  SHUTDOWN Надає засоби для завершення STAF Internal ("SHUTDOWN")  TRACE Забезпечує відстеження інформації про сервіси STAF Internal ("TRACE")  TRUST Інтерфейси з безпекою STAF Internal ("TRUST")  VARIABLE Надає методи для підтримання конфігурації і даних (змінних) в процесі виконання Internal ("VAR")   Оскільки зовнішні служби знаходяться поза STAF, то вони мусять бути зареєстровані в STAF в STAF.cfg файлі з лаштуваннями. Ім’я сервісу задається при його реєстрації. Якщо необхідно, то можна встановити зовнішні STAF сервіси на одній машині тестового середовища, а інші машини можуть через запити звертатися до цієї машини, таким чином немає потреби встановлювати і реєструвати зовнішній сервіс на всіх машинах STAF середовища. В табл. 2 подано список зовнішніх STAF сервісів. Таблиця 2. Зовнішні сервіси STAF Сервіс Опис Де знаходиться  CRON Виклик в сервісах STAF на заданий інтервал часу External (Java)  EMAIL Дозволяє відправляти повідомлення електронної пошти External (Java)  EVENT Забезпечує публікацію/підписку системи сповіщення External (Java)  EVENTMANAGER Дозволяє викликати сервіси STAF, коли відбувається певна подія External (Java)  HTTP Дозволяє робити HTTP запити, які можуть групуватися в сесії External (Java)  LOG Надає повнофункціональну можливість логування External (C++)  MONITOR Дозоляє опублікувати поточний статус виконання тесту для інших сервісів External (C++)  RESOURCE POOL Дозволяє управляти винятковим доступом до набору елементів External (C++)  STAX Надає виконавчий «двигун» на базі XML External (Java)  ZIP Надає засоби для різноманітних архівів External (C++)   STAF сервіси також можуть бути делеговані на іншу машину в STAF середовищі. В цьому випадку, якщо запит зроблений сервісу на локальній STAF машині, тоді він автоматично делегується до машини, якій потрібен цей сервіс. STAF завантажувач сервісів – це зовнішній сервіс, метою якого є завантаження сервісу на вимогу. Це дозволяє сервісам бути завантаженими лише коли на них було зроблено запит, тому вони на завантажують пам’ять без необхідності. Також він дозволяє динамічну реєстрацію сервісів, при запитах до них, тому користувачу немає потреби редагувати конфігураційний файл, щоб зареєструвати сервіс. Коли зроблено запит на неіснуючий сервіс, тоді STAF викличе кожний завантажувач сервісів чи є в них відповідний сервіс, доки не знайде сервіс чи доки не закінчиться список завантажувачів. Якщо він закінчиться буде повернуто стандартну відповідь RC:2. Іншими словами, запит буде надіслано сервісу, який щойно додався. Стандартний завантажувач сервісів вмонтовано в STAF він може динамічно завантажувати LOG, MONITOR, RESPOOL і ZIP сервіси. Користувач має можливість писати власні сервіси і монтувати їх в STAF. Їх можна писати використовуючи JAVA чи С++. Автентифікатори – це спеціальні зовнішні сервіси метою яких є автентифікація користувача з метою надання йому рівня доступу користувача, який може бути використано як додатковий чи взаємозамінний до рівня доступу машини. Автентифікатор – спеціальний сервіс, який приймає запити автентифікації. Користувач не може напряму посилати такі запити, вони йдуть не напряму, а через сервіс дескриптора. На даний момент єдиним мережний інтерфейсом STAF є TCP/IP. Проте STAF надає можливість підключити інтерфейси, які називаються провайдерами з’єднання. Тому користувач може створити свій провайдер з’єднання, який комуні кує через потрібний користувачу протокол (SLL, Serial Line, NetBIOS чи SNA). Провайдери з’єднання є залежними від платформи – оскільки основані на С++. Провайдери з’єднання підтримують IPv4 і IPv6. STAF запити сервісів та їх обробка STAF сервіси можна використовувати посилаючи STAF запити до них. STAF запит — це просто стрічка з описом операції, яку слід виконати. STAF запити можна посилати сервісам на локальній машині чи на віддаленій машині, яка знаходиться в середовищі STAF. STAFProc демон обробляє вхідні і вихідні запити. Запити STAF є в бібліотеках багатьох мов програмування, проте вони також бути надіслані з командної стрічки (через STAF executable). Проте, посилання запитів з командної стрічки має свої обмеження. Якщо посилати запити з командної стрічки, для кожного запиту генерується унікальний дескриптор. Коли запит завершено – дескриптор стає неактивним в STAF, тому якщо буде потрібно послати запит, пов’язаний з попереднім запитом, то це буде неможливо. Тому запити з командної стрічки використовуються, коли необхідно отримати інформацію від STAF сервісу. Цей дескриптор буде активним доти, доки програма не вилогується з STAF, або не завершиться процес. Перед тим, як посилати запити STAF, програмі слід зареєструватися в STAF. STAF надасть програмі унікальний дескриптор, по якому програма може надсилати безліч запитів STAF. Запити, які надсилаються в STAF та результат, який надходить із STAF представляються у вигляді рядків. Рядки можуть містити довільну множину символів, включаючи NULL (нуль, 0) символ. Коли в середовищі використовується різноманітні множини кодувань, STAF перекодує запит і відповідь в потрібне кодування. Це забезпечує, що запит і результат у вигляді рядка символів будуть правильно сприйняті одержувачем. Загалом, використання сервісів STAF, не повинно виникати ніяких «подорожуючих» проблем. «Подорожуючих» в даному контексті означає, що всі запити відбуваються для одної системи із рідним кодуванням, навіть якщо запити відправляються і дані зберігаються. Однак, якщо відправляються запит на логування даних з Японським кодуванням до будь-якої системи, а потім чергові запити до даної системи з англійським кодуванням, ви не будете отримувати коректні дані, так як це не вірно. STAF гарантує, що всі рядки(стрічки) символів будуть містити тільки символи ASCII-7 і будуть збережені при трансляції з/до іншої системи кодування. STAF псевдонім машини STAF надає можливість задати ім’я машини за допомогою конфігураційного оператора MACHINENICKNAME. Це дозволить перевизначити ім’я машини яке встановлене в змінні STAF/Config/Machine по замовчуванню. В першу чергу це впливає на дані, які записуються такими сервісами STAF як LOG і MONITOR, які зберігають дані на комп’ютері, на якому вони запущені використовуючи системну змінну STAF/Config/MachineNickname, як частину шляху до каталогу, коли створюються основні журнальні дані та дані монітору. Зміна STAF/Config/MachineNickname дозволяє покращити рівень управління даними. Ім’я комп’ютера не використовується для спілкування з іншими системами і не робить ніякого впливу на рівні довіри. Ця опція використовується в обох під’єднаному та не під’єднаному режимах(не під’єднаний означає те, що не використовується мережний інтерфейс). Синтаксис команди: MACHINENICKNAME <Nickname> <Nickname> – ім’я комп’ютера, яке ми хочемо використати. Ім’я є чутливе до регістру. STAF дескриптори Дескриптор — це унікальний ідентифікатор, що використовується при обробці запитів STAF від багатьох процесів на різних машинах. Дескриптор складається з імені екземпляру STAF, і однозначно ідентифікує процес STAF. Доступ до конкретного процесу здійснюється через дескриптор. Інші дані поєднані з дескриптором наступним чином: NAME (ім’я) – описове ім’я, пов’язане з дескриптором, яке надається коли процес реєструється в STAF; LAST USER DATE/TIME (останній час/дата використання) – показує коли в останній раз дескриптор був використаний для відправки запиту; USER AUTHENTICATION INFORMATION (інформація аутентифікації користувача) – пов’язана з дескриптором, якщо він був ідентифікований; VARIABLE POOL (блок змінних) – засоби для зберігання та відновлення інформації про те, що саме процес може використовувати, наприклад конфігураційні дані; QUEUE – пріоритетна черга, яка використовується для міжпроцесорної комунікації (спілкування) з іншими процесами/машинами використовуючи STAF. Перед завершенням процесу STAF потрібно виконати звільнення ресурсів, які пов’язані з даним дескриптором. Коли STAF завершує роботу, або при краху системи, дескриптори пов’язані з даною машиною видаляються. Для «збору сміття» існують служби SEM та RESPOOL. Якщо було видалено дескриптор, вони звільняють всі ресурси, які його використовували. STAF змінні STAF забезпечує можливість збереження і видачі змінних. Вони використовуються для збереження конфігураційної інформації, інформації часу виконання і інформації системного середовища. Ці змінні відносяться до STAFProc процесу. Це дозволяє автоматично їх оновляти без перезапуску програми, що їх використовує. При оновленні змінних, будь-яка програма, яка їх використовує отримає нові значення цих змінних STAF підтримує внутрішній блок змінних, який є спільний для всіх дескрипторів на конкретному клієнті. Також STAF підтримує розподілений блок змінних, який також поширюється на клієнта і розсилається по мережі і використовується для розширення змінних. Додатково кожен дескриптор має свій блок змінних. По замовчуванню значення змінних в блоці даних дескриптору перевизначають значення змінних в системному блоці чи спільному блоці. Хоча дескриптор може перевизначити цю поведінку при запиті значення змінної. В основному, як частина кожного віддаленого запиту, дескриптор і з розподіленим блоком змінних розсилається по мережі В STAF визначені наступні змінні: STAF/Config/BootDrive – диск з якого запущено STAF STAF/Config/CodePage – кодування символів STAF STAF/Config/ConfigFile – шлях до конфігураційного файлу STAF STAF/Config/DefaultAuthenticator – аутентифікатор по замовчуванню. Якщо жоден аутентифікатор не зареєстрований, значення буде рівне "none" STAF/Config/DefaultInterface – інтерфейс по-замовчуванню. Якщо не зареєстровано жодних мережевих інтерфейсів, значення змінної буде рівне "local" – означає що локальний інтерфейс є єдиним доступним інтерфейсом. STAF/Config/InstanceName – ім’я екземпляра STAF який є на даній машині. По замовчуванню – STAF, якщо змінна STAF_Instance_Name оточуючого середовища не вказана; STAF/Config/Machine – назва даної машини(комп’ютера); STAF/Config/MachineNickname – нік (мережеве ім’я) машини. По замовчуванню це те саме ім’я STAF/Config/Machine, якщо не було перевизначено за допомогою MACHINENICKNAME у налаштуваннях STAF/Config/Mem/Physical/Bytes – обсяг фізичної пам’яті в байтах. Значення 0 на z/OS, бо STAF не може визначити фізичну пам'ять на цій операційній системі; STAF/Config/Mem/Physical/KB – обсяг фізичної пам’яті в кілобайтах. Значення 0 на z/OS, бо STAF не може визначити фізичну пам'ять на цій операційній системі; STAF/Config/Mem/Physical/MB – обсяг фізичної пам’яті в мегабайтах. Значення 0 на z/OS, бо STAF не може визначити фізичну пам'ять на цій операційній системі; STAF/Config/OS/Name – назва операційної системи (наприклад WinXP, WinSrv2008, Linux, AIX, SunOS, HP-UX, Darwin); STAF/Config/OS/MajorVersion – версія операційної системи; STAF/Config/OS/Revision – специфікатор операційної системи; STAF/Config/Processor/NumAvail – кількість доступних процесорів. Значення 0 на z/OS, бо STAF не може визначити кількість процесорів для даної операційній системі; STAF/Config/Sep/Command – символ(-и) які використовуються для розділення команд об’єднаних в одну стрічку; STAF/Config/Sep/File – символ(-и) які використовуються для розділення файлів та каталогів у шляху; STAF/Config/Sep/Line – символ(-и) які використовуються для розділення рядків у текстових файлах; STAF/Config/Sep/Path – символ(-и) які використовуються для розділення шляхів у списку шляхів; STAF/Config/STAFRoot – каталог, у якому встановлений STAF; STAF/DataDir – каталог, який STAF та його служби використовують для запису даних(базується на параметрі DATADIR); STAF/Env/* – всі змінні оточення, які доступні через STAF; STAF/Version – версія STAF. STAF безпека Безпека в STAF розподіляється окремо на машинний і користувацький рівні. Іншими словами безпека надається доступ до машин і/або до користувачів. Доступ до STAF забезпечується наданням рівня довіри машині чи користувачу, рівень 0 означає повну заборону доступу, рівень 5 означає повний доступ. Кожен STAF сервіс визначає який рівень довіри необхідно для використання функцій, які він надає. Загальний опис кожного рівня: Level 0 – доступу немає; Level 1 – обмежений доступ, доступно тільки PING та довідка; Level 2 – обмежений доступ, доступно тільки перегляд доступних засобів; Level 3 – стандартний доступ, доступні зміни, які не можуть пошкодити систему, наприклад логування; Level 4 – розширений доступ, доступні зміни операції копіювання файлів, видалення файлів логування і тощо; Level 5 – повний доступ, доступно виклик процесів, зміни визначення довіри тощо. STAF черги Кожен STAF дескриптор має свою чергу з пріоритетами. Через цю чергу відбувається комунікація з програмами. Кожне повідомлення в черзі має слідуючі параметри: Priority (пріоритет) – без знакове довге ціле число (0 - 4294967296), яке означає важливість повідомлення. Якщо вказано 0 – повідомлення вважається найважливішим; Timestamp (відмітка часу) – дата/час отримання повідомлення; Machine (комп’ютер) – комп’ютер, що відправив повідомлення; Process name (ім’я процесу) – зареєстроване ім’я процесу, який відправив повідомлення; Handle (дескриптор) – дескриптор процесу, який відправив повідомлення; Message (повідомлення) – власне вміст повідомлення. STAF надає можливість зареєструватися для отримання повідомлень про події, такі як запуск та завершення STAF. Ці події з’являються в черзі запитів процесу. STAF налаштування STAF налаштовується за допомогою конфігураційного файлу STAF. Назва цього файлу може бути будь-яка, проте по замовчуванню він називається STAF.cfg. Конфігураційний файл обробляється по одному рядку. Пробіли на початку рядка, порожні рядки ігноруються. Щоб об’єднати рядки в один, коли оператор конфігурації занадто великий слід використовувати символ "\" в кінці рядка. Максимальна довжина рядка – 2048 символів. Можна використовувати змінні будь-якого типу окрім SET VAR. Однак, ці змінні повинні бути або системними змінними STAF, або повинні бути попередньо визначеними в конфігураційному файлі за допомогою оператора SET VAR. Коментарі в конфігураційному файлі вказуються за допомогою символу #, який має бути на початку рядка. Закоментовані рядки ігноруються. Наприклад: # This is a comment line STAX STAX – це XML-подібне виконавче середовище, яке реалізоване як зовнішній JAVA STAF сервіс. STAX був розроблений, щоб істотно спростити автоматизацію роботу з тестами і тестовим середовищем STAF. За допомогою STAX можна автоматизувати будь-яку дію. Наприклад деякі розробники використовують його для автоматизації процесу побудови проекту. Інші використовують для того, щоб автоматизувати різноманітні типи тестів, від юніт-тестів до тестів верифікації системи.  Рис. 2 Структура STAX середовища. Складові частини STAX STAX складається з трьох основних частин: мови програмування, виконавчої машини і STAX монітору. Мова програмування Мова програмування STAX – це XML подібна мова програмування, яка є дуже подібною на інші мови програмування і має схожий функціонал, проте спеціалізована для забезпечення автоматизації. Програми написані на цій мові програмування називаються STAX jobs (STAX завданнями). STAF забезпечує основу навколо якої побудований STAX. Це означає, що всі сервіси STAF доступні з STAX завдань користувача. Оскільки мова програмування STAX побудована на основі XML. Це забезпечує хорошу структуру STAX завдань, і дозволяє використовувати стандартні засоби для побудови STAX завдань, таких, як наприклад XSLT редактор. Мова програмування STAX побудована на скрипковій мові Python, а саме при оголошенні змінних і написанні виразів Це значить, що користувач може використовувати стандартні бібліотеки Python чи будь-які інші бібліотеки написані на цій мові. Для виконання Pyhon коду в STAX завдання використовується Jython. Jython – це реалізація мови Python, яка написана на 100% на чистій мові JAVA. Це означає, що можна також виконувати JAVA класи (стандартні чи написані користувачем) в своїх STAX завданнях. Виконавча машина STAX сервіс – це і є STAX виконавча машина (вона подібна на інтерпретатор інших скрипкових мов програмування) і бере STAX XML завдання, як вхідні дані і керує виконанням STAX завдання і його поведінкою при виконанні. STAX монітор STAX монітор – це програма з графічним інтерфейсом користувача, яка забезпечує динамічний перегляд і оновленні STAX завдань при їх виконанні. Складові частини STAX завдання Складові частини STAX завдання – це окремі елементи в STAX XML завданні. По суті STAX XML завдання – це структурована ієрархія STAX елементів. Ось деякі типи елементів які включає STAX завдання: дані, які потрібні при виконанні STAX завдання команди/процеси які слід виконати/запустити визначення логіки роботи гілок виконання при виконанні завдання обгортки, такі, як функції і блоки які вказують на інші елементи Елементи-процеси – визначають інформацію виконання для STAF PROCESS_START команди. Елемент-процес визначає команду яку слід виконати і машину на якій вона буде виконуватися. Елементи-команди (stafcmd) – визначають інформацію виконання для всіх інших команд STAF сервісів. Елемент-процес визначає сервіс який слід запустити і машину на якій він буде запущений. Елементи-скріпти використовуються щоб вказати Python код, зазвичай потрібний для оголошення змінних. STAX може виконувати групи елементів послідовно чи паралельно. Коли елементи виконуються паралельно, то STAX виконуватиме кожен елемент в окремому потоці. Елементи-цикли використовуються коли необхідно повторно виконати інші елементи STAX. Додатково існують елементи-ітератори (послідовні і паралельні) для того щоб повторно виконувати елементи, коли змінюються дані під час ітерації. STAX містить кілька операторів обгорток, які надають іншим елементам додатковий функціонал. Функції – це універсальний засіб структурування програм. Функції служать для виконання двох основних ролей при розробці : повторного використання коду і процедурної декомпозиції. Функції – це найпростіший шлях для того щоб об’єднати дії які потрібно використати більш ніж один раз в більш ніж одному місці. Функції дозволяють згрупувати і параметризувати секції XML, які слід виконати багато разів. Підзадачі забезпечують виконання коду під керівництвом батьківського завдання STAX з синхронізованим виконанням і доступ до результатів виконання. STAX забезпечує IF елемент, який надає можливість контролювати гілки виконання в STAX заданнях. Використовуючи Python це можна робити динамічно. Налаштування STAX середовища Налаштувати STAX можна так само, як і інші JAVA STAF сервіси, такі як Event, EventManager, Cron і Email, на єдиній машині серверного типу. Ця машина називається машиною зі STAX сервісом. Ця машина повинна працювати в той час як на ній виконується STAF сервіс на якому в свою чергу виконується STAX завдання. Інші машини в STAF середовищі не потребують виконання STAX сервісу. Але так як STAX сервіс виконує завдання на STAF машинах вони повинні надати йому рівень довіри 5, для виконання обов’язкового запиту PROCESS START, який вимагає цього рівня довіри. STAX монітор це розподілена JAVA програма, яка виводить інформацію про виконання STAX завдань, які виконуються на STAX сервіс машині. STAX монітор може бути виконаний на будь-якій машині зі STAF середовища (включаючи STAX сервіс машину). Машина на якій потрібно запустити STAX монітор має надати STAX сервіс машині рівень довіри 3 чи вище. Так як STAX сервіс і STAX монітор написані на мові Java, користувачу потрібно встановити JVM(Sun чи IBM) на STAX сервіс машину і кожну машину на якій він буде запускатися. STAX сервіс вимагає встановленої Java 1.4 чи пізнішої, а STAX монітор Java 1.3 чи пізнішої версії. Для конфігурації STAX потрібно змінити конфігураційний файл STAF.cfg прописавши в ньому рядки конфігурування служб STAX та Event: SERVICE STAX LIBRARY JSTAF EXECUTE \ {STAF/Config/STAFRoot}/services/stax/STAX.jar OPTION J2=-Xmx384m SERVICE EVENT LIBRARY JSTAF EXECUTE \ {STAF/Config/STAFRoot}/services/stax/STAFEvent.jar SET MAXQUEUESIZE 10000 Запуск STAX Спочатку потрібно перевірити, чи міститься служба STAX та Event в списку служб середовища STAF. Після цього можна викликати довідку по службі STAX для перегляду можливостей: EXECUTE < <FILE <XML File Name> [MACHINE <Machine Name>]> | DATA <XML Data> > [JOBNAME <Job Name>] [FUNCTION <Function ID>] [ARGS <Arguments>] [SCRIPTFILE <File Name>... [SCRIPTFILEMACHINE <Machine Name>]] [SCRIPT <Python Code>]... [CLEARLOGS [<Enabled | Disabled>]] [ WAIT [<Number>[s|m|h|d|w]] [RETURNRESULT [DETAILS]] | HOLD [<Number>[s|m|h|d|w]] | TEST [RETURNDETAILS] ] [ NOTIFY ONEND [BYNAME] [PRIORITY <Priority>] [KEY <Key>] ] [LOGTCELAPSEDTIME <Enabled | Disabled>] [LOGTCNUMSTARTS <Enabled | Disabled>] [LOGTCSTARTSTOP <Enabled | Disabled>] [PYTHONOUTPUT <Python Output>] [PYTHONLOGLEVEL <Log Level>] [ BREAKPOINT <Function name> | <Line>[@@<File>[@@<Machine>]] ]... [BREAKPOINTFIRSTFUNCTION] [BREAKPOINTSUBJOBFIRSTFUNCTION] GET DTD GET RESULT JOB <Job ID> [DETAILS] LIST JOBS | SETTINGS | MACHINECACHE | FILECACHE [SORTBYLRU | SORTBYLFU | SUMMARY] | EXTENSIONS | EXTENSIONJARFILES | JOB <Job ID> <THREADS [LONG] | < THREAD <Thread ID> VARS [SHORT] > | PROCESSES | STAFCMDS | SUBJOBS | BLOCKS | TESTCASES | BREAKPOINTS | FUNCTIONS> QUERY EXTENSIONJARFILE <Jar File Name> | EXTENSIONJARFILES | JOB <Job ID> [THREAD <Thread ID> [ VAR <VarName> [SHORT] ] | PROCESS <Location:Handle> | STAFCMD <Request#> | BLOCK <Block Name> | TESTCASE <Test Name> | FUNCTION <Function Name>] STOP JOB <Job ID> PROCESS <Location:Handle> HOLD JOB <Job ID> [BLOCK <Block Name>] [TIMEOUT [<Number>[s|m|h|d|w]]] RELEASE JOB <Job ID> [BLOCK <Block Name>] TERMINATE JOB <Job ID> [BLOCK <Block Name>] START JOB <Job ID> TESTCASE <Testcase name> [KEY <Key>] [PARENT <Testcase name>] STOP JOB <Job ID> TESTCASE <Testcase name> [KEY <Key>] UPDATE JOB <Job ID> TESTCASE <Testcase name> STATUS <Status> [MESSAGE <Message text>] [FORCE [PARENT <Testcase name>]] LOG JOB <Job ID> MESSAGE <Message> [LEVEL <Level>] [SEND] SEND JOB <Job ID> MESSAGE <Message> ADD JOB <Job ID> BREAKPOINT < FUNCTION <Function Name> | LINE <Line Number> FILE <XML File> [MACHINE <Machine Name>] > REMOVE JOB <Job ID> BREAKPOINT <Breakpoint ID> RESUME JOB <Job ID> THREAD <Thread ID> STEP JOB <Job ID> THREAD <Thread ID> [INTO | OVER] STOP JOB <Job ID> THREAD <Thread ID> PYEXEC JOB <Job ID> THREAD <Thread ID> CODE <Python Code> SET [CLEARLOGS <Enabled | Disabled>] [LOGTCELAPSEDTIME <Enabled | Disabled>] [LOGTCNUMSTARTS <Enabled | Disabled>] [LOGTCSTARTSTOP <Enabled | Disabled>] [PYTHONOUTPUT <Python Output>] [PYTHONLOGLEVEL <Log Level>] [FILECACHING <Enabled | Disabled>] [MAXFILECACHESIZE <Max Files>] [FILECACHEALGORITHM <LRU | LFU>] [MAXFILECACHEAGE <Number>[s|m|h|d|w]] [MAXMACHINECACHESIZE <Max Machines>] [MAXRETURNFILESIZE <Number>[k|m]] [MAXGETQUEUEMESSAGES <Number>] [MAXSTAXTHREADS <Number>] NOTIFY REGISTER ONENDOFJOB <Job ID> [BYNAME] [PRIORITY <Priority>] NOTIFY UNREGISTER ONENDOFJOB <Job ID> NOTIFY LIST [JOB <Job ID>] PURGE <FILECACHE | MACHINECACHE> CONFIRM VERSION [JYTHON] HELP Запуск STAX Monitor Для запуску STAX Monitor потрібно в командному рядку прописати C:/STAF/services/stax для переходу в каталог із даною службою та java -jar STAXMon.jar для безпосереднього запуску. Після запуску ми отримаємо вікно: Для запуску STAX Monitor потрібно в командному рядку прописати C:/STAF/services/stax для переходу в каталог із даною службою та java -jar STAXMon.jar для безпосереднього запуску. Після запуску зявляється вікно рис. 3:  Рис. 3. STAX  Рис. 4. Головне вікно налаштувань STAXMon Запуск простого завдання STAX Щоб запустити нове завдання STAX потрібно натиснути клавішу «Submit New Job..» на панелі STAX Monitor і в вікні параметрів вибрати налаштування, зокрема шлях до файлу *.xml , який є завданням, машину, на якій це завдання буде виконуватися, додаткові сценарії, параметри логування, точки переривання та інші.  Рис. 5. Параметри запуску нового завдання STAX Після запуску ми отримаємо вікно на рис. 6  Рис. 6. Вікно виконання завдання STAX Висновок На даній лабораторній я детально ознайомився з середовищем для автоматизованого тестування програмного забезпечення STAF, розглянув його особливості роботи, налаштування, тестування, управляння а також використання служб, зокрема STAX.
Антиботан аватар за замовчуванням

28.03.2013 20:03-

Коментарі

Ви не можете залишити коментар. Для цього, будь ласка, увійдіть або зареєструйтесь.

Ділись своїми роботами та отримуй миттєві бонуси!

Маєш корисні навчальні матеріали, які припадають пилом на твоєму комп'ютері? Розрахункові, лабораторні, практичні чи контрольні роботи — завантажуй їх прямо зараз і одразу отримуй бали на свій рахунок! Заархівуй всі файли в один .zip (до 100 МБ) або завантажуй кожен файл окремо. Внесок у спільноту – це легкий спосіб допомогти іншим та отримати додаткові можливості на сайті. Твої старі роботи можуть приносити тобі нові нагороди!
Нічого не вибрано
0%

Оголошення від адміністратора

Антиботан аватар за замовчуванням

Подякувати Студентському архіву довільною сумою

Admin

26.02.2023 12:38

Дякуємо, що користуєтесь нашим архівом!