Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
220700_62_Nadezhnost_itestirovanie_Sukhanova_Pr_2014_1.docx
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
219 Кб
Скачать
☆

Тема 2. Автоматизация тестирования программного обеспечения

Практическое занятие 11. Цель и задачи автоматизации тестирования программного обеспечения

План занятия:

  1. Повторение изученных теоретических разделов

  2. Решение типовых задач у доски

  3. Самостоятельное решение задач

  4. Обсуждение решения и анализ основных ошибок

  5. Доклады студентов по теме практического занятия

Теоретические сведения

Основные элементы языка скриптов

Переменные

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

Наиболее распространенными типами переменных являются строки (наборы символов), целые числа, числа с плавающей запятой и логические переменные.

Массивы данных

Массивы данных представляют собой набор переменных, упорядоченных в единую систему. Целочисленный массив из 10 элементов представляет собой 10 переменных целого типа, имеющих одно и то же имя, но различающихся порядковым номером. Массивы могут быть как одномерными, так и многомерными. Простейшим приме ром многомерного массива является таблица. Чтобы получить значение ячейки, нужно знать ее точное расположение, то есть номер столбца и номер ряда.

Операторы

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

Логические операторы

Логические операторы, как следует из их названия, позволяют производить действия над логическими переменными. По большому счету, это операции постановки условий. Наиболее распространенными являются логические операторы И, ИЛИ и НЕ.

Операторы сравнения

Операторы сравнения, как следует из их названия, позволяют сравнивать элементы языка между собой. Наиболее распространенными операторами сравнения являются «равно», «не равно», «больше или равно», «меньше или равно», «больше» и «меньше».

Условные операторы

Условные операторы служат для разделения кода на части, исполнение которых зависит от определенных условий. Существуют три основных типа условных операторов: IF, IF... ELSE и SWITCH.

Задачи для самостоятельного решения студентами

Задача 1.

Перечислить элементы языка скриптов, которые использованы в изучаемом фрагменте теста

Задача 2.

Какие условия проверяют в изучаемом фрагменте теста

Тест-скрипт для WinRunner

#Активизировать окно:

set_window ("Pizza Ordering Page"):

#Проверить наличие объекта Name класса EditBox.

#Если объекта нет, то подождать 10 с:

if (obj_exists("name",10) != E_0K)

{

#Если объект не появился, вывести сообщение об ошибке и перейти к шагу 5,

в противном случае перейти к шагу 3:

tl_step("Проверка объекта",-!."Объект Name класса EditBox не

найден");

tresult = "Объект не найден";

}

else

#Щелкнуть мышью на объекте Name класса EditBox:

objmouse_click ("name", 217, 34, LEFT);

#Ввести имя Ilya:

objjtype ("name","Ilya"); tresult = "Тест пройден успешно";

}

# Вывести сообщение о результатах тестирования и сохранить их в файл: report_msg(tresult);

file_open ("С:Wresults.txt", F0_MODE__APPEND);

file_printf ("C:\\ results.txt ","*s ", tresult);

file_close ("C:\\results.txt");

Задача 3.

Перечислить элементы языка скриптов, которые использованы в изучаемом фрагменте теста

Какие условия проверяют в изучаемом фрагменте теста

Тест-скрипт для SilkTest

// Обозначить данные:

HFILE OutputFileHandle

STRING tresult

// Активизировать окно:

PizzaOrder.SetActiveO

// Проверить наличие объекта Name класса EditBox.

// Если объекта нет, то подождать 10 с:

if (Name.Exists()=FALSE)

// Если объект не появился, вывести сообщение об ошибке и перейти к шагу 5,

в противном случае перейти к шагу 3:

LogError ("Объект Name класса EditBox не найден ")

tresult = "Объект не найден"

else

// Щелкнуть мышью на объекте Name класса EditBox:

Name.Click О;

// Ввести имя Ilya:

Name.TypeKeys ("Ilya ")

tresult = "Тест пройден успешно" // Вывести сообщение о результатах тестирования и сохранить их в файл: print(tresult)

OutputFileHandle = FileOpen ("C:\results.txt ", FM_APPEND) FileWriteLine (OutputFileHandle, tresult) FileClose (OutputFileHandle)

Задача 4.

Перечислить элементы языка скриптов, которые использованы в изучаемом фрагменте теста

Какие условия проверяют в изучаемом фрагменте теста

Тест-скрипт для Rational Robot

'Обозначить данные:

Dim tresult As String

Dim Result As Integer

'Активизировать окно:

Window SetContext, "Caption=PizzaOrder"

'Проверить наличие объекта Name класса EditBox.

' Если объекта нет, то подождать 10 с:

Result = SQAWaitForObject("Type=EditBox;name=name",10000)

If Result = sqaSuccess Then

'Щелкнуть мышью на объекте Name класса EditBox:

EditBox Click, "Name=name", "Coords=91,12"

' Ввести имя Ilya:

InputChars " Ilya "

tresult = "Тест пройден успешно" Else

'Если объект не появился, вывести сообщение об ошибке и перейти к шагу 5, в противном случае перейти к шагу 3:

SQALogMessage sqaFail. " Объект не найден", ""

tresult = "Объект не найден" End If

' Вывести сообщение о результатах тестирования и сохранить их в файл: SQALogMessage sqaNone, tresult, ""

Open "C:\result.txt " For Append As #1

Print #1, tresult

Close #1

Литература

  1. Гленфорд Майерс, Том Баджетт, Кори Сандлер Искусство тестирования программ, 3-е издание = The Art of Software Testing, 3rd Edition. — М.: «Диалектика», 2012. — 272 с.

  2. Джефф Рэшка, Элфрид Дастин, Джон Пол Тестирование программного обеспечения . — М.: Лори, 2012 г.- 568 с

  3. Лайза Криспин, Джанет Грегори Гибкое тестирование: практическое руководство для тестировщиков ПО и гибких команд . Agile Testing: A Practical Guide for Testers and Agile Teams. — М.: «Вильямс», 2010. — 464 с.

Практическое занятие 12-13. Средства автоматизации тестирования программного обеспечения

План занятия:

  1. Повторение изученных теоретических разделов

  2. Решение типовых задач у доски

  3. Самостоятельное решение задач

  4. Обсуждение решения и анализ основных ошибок

  5. Доклады студентов по теме практического занятия

Теоретические сведения

Задача тестирования: проверить, что объект Name класса EditBox существует, ввести в него значение Ilya , вывести сообщение о результатах теста и записать их в файл.

Тест-скрипт:

1. Активизировать окно.

2. Проверить наличие объекта Name класса EditBox.

Если объекта нет, то подождать 10 секунд.

Если объект не появился, вывести сообщение об ошибке и перейти к шагу 5,

в противном случае перейти к шагу 3.

3. Щелкнуть мышью на объекте Name класса EditBox.

4. Ввести Имя Ilya.

5. Вывести сообщение о результатах тестирования и сохранить их в файл.

Задачи для самостоятельного решения студентами

Задача 1.

Какие особенности языка скриптов были использованы в изучаемых фрагментах теста, см. фрагмент 1.

Задача 2.

Какие типы переменных использованы в изучаемых фрагментах теста, где и как они описаны, см. фрагмент 1.

Задача 3.

Какие файлы использованы в изучаемых фрагментах теста, где и как они описаны см. фрагмент 1.

Фрагмент 1.

Тест-скрипт для WinRunner

#Активизировать окно:

set_window ("Pizza Ordering Page"):

#Проверить наличие объекта Name класса EditBox.

#Если объекта нет, то подождать 10 с:

if (obj_exists("name",10) != E_0K)

{

#Если объект не появился, вывести сообщение об ошибке и перейти к шагу 5,

в противном случае перейти к шагу 3:

tl_step("Проверка объекта",-!."Объект Name класса EditBox не

найден");

tresult = "Объект не найден";

}

else

#Щелкнуть мышью на объекте Name класса EditBox:

objmouse_click ("name", 217, 34, LEFT);

#Ввести имя Ilya:

objjtype ("name","Ilya"); tresult = "Тест пройден успешно";

}

# Вывести сообщение о результатах тестирования и сохранить их в файл: report_msg(tresult);

file_open ("С:Wresults.txt", F0_MODE__APPEND);

file_printf ("C:\\ results.txt ","*s ", tresult);

file_close ("C:\\results.txt");

Задача 4.

Какие элементы языка скриптов были использованы в изучаемых фрагментах теста, см. фрагмент 2.

Задача 5.

Какие типы переменных использованы в изучаемых фрагментах теста, см. фрагмент 2.

Задача 6.

Какие условия использованы в изучаемых фрагментах теста, см. фрагмент 2.

Фрагмент 2.

Тест-скрипт для SilkTest

// Обозначить данные:

HFILE OutputFileHandle

STRING tresult

// Активизировать окно:

PizzaOrder.SetActiveO

// Проверить наличие объекта Name класса EditBox.

// Если объекта нет, то подождать 10 с:

if (Name.Exists()=FALSE)

// Если объект не появился, вывести сообщение об ошибке и перейти к шагу 5,

в противном случае перейти к шагу 3:

LogError ("Объект Name класса EditBox не найден ")

tresult = "Объект не найден"

else

// Щелкнуть мышью на объекте Name класса EditBox:

Name.Click О;

// Ввести имя Ilya:

Name.TypeKeys ("Ilya ")

tresult = "Тест пройден успешно" // Вывести сообщение о результатах тестирования и сохранить их в файл: print(tresult)

OutputFileHandle = FileOpen ("C:\results.txt ", FM_APPEND) FileWriteLine (OutputFileHandle, tresult) FileClose (OutputFileHandle)

Задача 7.

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

Задача 8.

Какие типы переменных использованы в изучаемых фрагментах теста, см. фрагмент 3.

Задача 9.

Какие условия использованы в изучаемых фрагментах теста, см. фрагмент 3.

Фрагмент 3

Тест-скрипт для Rational Robot

'Обозначить данные:

Dim tresult As String

Dim Result As Integer

'Активизировать окно:

Window SetContext, "Caption=PizzaOrder"

'Проверить наличие объекта Name класса EditBox.

' Если объекта нет, то подождать 10 с:

Result = SQAWaitForObject("Type=EditBox;name=name",10000)

If Result = sqaSuccess Then

'Щелкнуть мышью на объекте Name класса EditBox:

EditBox Click, "Name=name", "Coords=91,12"

' Ввести имя Ilya:

InputChars " Ilya "

tresult = "Тест пройден успешно" Else

'Если объект не появился, вывести сообщение об ошибке и перейти к шагу 5, в противном случае перейти к шагу 3:

SQALogMessage sqaFail. " Объект не найден", ""

tresult = "Объект не найден" End If

' Вывести сообщение о результатах тестирования и сохранить их в файл: SQALogMessage sqaNone, tresult, ""

Open "C:\result.txt " For Append As #1

Print #1, tresult

Close #1

ЛИТЕРАТУРА

  1. Гленфорд Майерс, Том Баджетт, Кори Сандлер Искусство тестирования программ, 3-е издание = The Art of Software Testing, 3rd Edition. — М.: «Диалектика», 2012. — 272 с.

  2. Джефф Рэшка, Элфрид Дастин, Джон Пол Тестирование программного обеспечения . — М.: Лори, 2012 г.- 568 с

  3. Лайза Криспин, Джанет Грегори Гибкое тестирование: практическое руководство для тестировщиков ПО и гибких команд . Agile Testing: A Practical Guide for Testers and Agile Teams. — М.: «Вильямс», 2010. — 464 с.

КОНТРОЛЬНЫЕ ВОПРОСЫ

по курсу

  1. Что такое качество программного обеспечения?

  2. Есть ли эталон для оценки качества программного обеспечения?

  3. Как качество программного обеспечения связано с потребностями покупателя?

  4. Перечислите основные методы статистической оценки качества программного обеспечения

  5. В чем состоит контроль качества программного обеспечения?

  6. В чем причина отказов программного обеспечения?

  7. Что такое риск? Чем отличаются риски первого и второго рода?

  8. Перечислите основные модели жизненного цикла программного обеспечения.

  9. Перечислите основные модели надежности программного обеспечения

  10. В чем состоят методы оценки качества программного обеспечения?

  11. Что такое тестирование?

  12. Перечислите основные методы тестирования.

  13. Какие методы используют для тестирования программы, написанной на объектно-ориентированном языке программирования?

  14. Есть ли универсальный метод тестирования ПО?

  15. Как расшифровывается название языка UML?

  16. Какие основные возможности предоставляет язык UML разработчику ПО?

  17. Перечислите основные виды диаграмм языка UML. Кто и как использует эти диаграммы?

  18. Кто может стать актером в диаграмме языка UML?

  19. Что такое роль в диаграмме языка UML?

  20. Что такое диаграмма развертывания?