Техническое тестирование. Виды тестирования программного обеспечения. Классификация видов тестирования

Итак, вы решили заняться тестированием ПО. Прекрасный выбор! Первый шаг к выбору (или смене) профессии уже сделан. Логичным вторым шагом было бы изучение теоретической части – без которой в любом деле никуда. Не имеет значения, техническое у вас образование или гуманитарное, есть у вас опыт работы, или вы студент – начинать нужно с получения теоретических знаний. Сегодня мы предлагаем вам узнать, какие виды тестирования программного обеспечения существуют.

Существует несколько подходов к классификации видов тестирования ПО. Рассмотрим самые распространенные.

1. Виды тестирования по целям

Согласно с тем, какие цели вы преследуете, тестируя то или иное приложение или программу, тестирование бывает:

  • Функциональное;
  • Нефункциональное.

Функциональное тестирование направлено на проверку того, какие функции программного продукта реализованы, и того, насколько верно они реализованы.

Нефункциональное – проверяет корректность работы нефункциональных требований. Этот вид тестирования скорее проверяет КАК программный продукт работает и включает в себя следующие виды:

  • Тестирование производительности – проверяет как программный продукт работает под определенной нагрузкой. Включает в себя тестирование: > Нагрузочное – определяет, как программа работает под ожидаемой нагрузкой.

    > Стрессовое – определяет работоспособность программного продукта при максимальной нагрузке.

    > Тестирование стабильности – проверяет, выдержит ли программный продукт длительную нагрузку.

    > Конфигурационное – определяет, как программный продукт будет работать в условиях смены конфигурации (платформы, драйверов, компьютеров).

  • Тестирование пользовательского интерфейса – определяет удобство пользовательского интерфейса (кнопки, цвета, выравнивание и т.д.).
  • Тестирование удобства использования – проверяет, удобен ли программный продукт в использовании.
  • Тестирование защищенности – определяет, насколько безопасно использование программного продукта, т.е. защищен ли программный продукт от атак хакеров, несанкционированного доступа к данным и т.д.
  • Инсталляционное тестирование – проверяет, не возникает ли проблем при установке, удалении, а также обновлении программного продукта.
  • Тестирование совместимости – тестирование работы программного продукта в определенном окружении.
  • Тестирование надежности – проверяет работу приложения при длительной средней ожидаемой нагрузке.
  • Тестирование локализации – тестирование локализованной версии программного продукта (языковой и культурный аспекты).

2. По степени автоматизации

В зависимости от того, используют ли тестировщики дополнительные программные средства для тестирования приложений или программ, тестирование бывает:

  • Ручное – тестирование программного продукта без использования дополнительных программных средств, т.е. тестирование «вручную».
  • Автоматизированное – тестирование программного продукта с использованием программных средств (более детально в описании ).

3. По позитивности сценария

По позитивности сценария тестирование бывает:

  • Позитивным – проверка программного продукта на соответствие ожидаемому поведению. Самый первый вид тестирования, который следует проводить, ведь основная задача тестирования – проверить, корректно ли работает программа.
  • Негативным – проверяет, будет ли программный продукт работать в случае, когда поведение пользователя отличается от ожидаемого.

4. По доступу к коду программного продукта

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

  • Тестирование «белого ящика» – тестирование программного продукта с доступом к коду.
  • Тестирование «черного ящика» – тестирование без доступа к коду продукта.
  • Тестирование «серого ящика» – тестирование, основанное на ограниченном знании внутренней структуры программного продукта. Часто говорят, что это смесь тестирования «белого ящика» и «черного ящика», но это в корне неверно. В данном случае тестировщик не работает с кодом программного продукта, но он знаком с внутренней структурой программы или приложения и взаимодействием между компонентами.

5. По уровню

По уровню тестирование бывает:

  • Модульное / юнит-тестирование – проверка корректной работы отдельных единиц системы программного продукта. Этот вид тестирования могут выполнять сами разработчики.
  • Интеграционное тестирование – проверка взаимодействия между несколькими единицами программного продукта.
  • Системное – проверка работы всей системы на соответствие заявленным требованиям к программному продукту.

6. По исполнителю

Наверняка, вы слышали об альфа- и бета-тестировании. А поучаствовать в одном из них можно даже не будучи тестировщиком. Итак, по исполнителю тестирование делится на:

  • Альфа-тестирование – тестирование программного продукта на поздней стадии разработки. Проводится разработчиками или тестировщиками.
  • Бета-тестирование – тестирование программного продукта перед выходом на рынок силами обычных людей – добровольцев, которым передается предварительная версия продукта (бета-версия). Их отзывы собираются, анализируются и учитываются при внесении правок в продукт.

7. По формальности

По формальности тестирование бывает:

  • Тестирование по тестам – тестирование по предварительно написанным тест-кейсам.
  • Исследовательское тестирование – одновременная разработка тестов и их исполнение.
  • Свободное тестирование – тестирование без разработки тестов, без документации. Основывается на интуиции и опыте тестировщика.

8. По важности

По степени важности тестируемых функций тестирование делится на:

  • Дымное тестирование – проверка самой важной функциональности программного продукта.
  • Тестирование критического пути – проверка функциональности, используемой типичными пользователями в повседневной деятельности.
  • Расширенное тестирование – проверка всей заявленной функциональности.

Виды тестирования и подходы к классификации тестирования отличаются от автора к автору. Не существует единственного правильного варианта.

Надеемся, что данная статья поможет вам ориентироваться в самом начале вашего пути в тестировании программного обеспечения.

Главное – узнать как можно больше о человеке , который перед тобой сидит: обладает ли он деловыми , способен ли своим интеллектом поразить начальство и клиентов, может ли сдерживать эмоции, как будет общаться с коллегами.

Для этого они используют такой метод, как тестирование.

А знаете ли Вы, что впервые своеобразное тестирование проводилось еще в древности . А древнегреческий ученый Пифагор придумывал такие задачи, которые бы давали возможность увидеть: глуп ученик или умён. Он утверждал, что «не из каждого дерева можно выточить Меркурия».

Как проводится тестирование?

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

Начинаете с ним беседовать и понимаете — соискатель подготовился проходить тесты, что может исказить действительность результатов .

Второй шаг – провести тестирование:

  1. Раздайте тесты с вопросами и заданиями, бланки для ответов.
  2. Объясните, с какой целью вы будете проводить тестирование.
  3. Зачитайте инструкцию или дайте отпечатанный текст.
  4. Тесты должны состоять из 20-25 заданий .
  5. Уточните, что на каждое задание даётся по одной минуте . По истечении времени тестирование сразу прекращается.
  6. Если человек не понимает, приведите пример выполнения подобных заданий.
  7. Отвечайте на вопросы кандидатов .
  8. Принятие ответов и их проверка. С результатами обработки можно ознакомить кандидата, но это необязательно.

Скачать примеры и образцы тестов с ответами и комментариями для вы можете по следующим ссылкам.

Другие тесты при приеме на работу с ответами можно найти в сети Интернет.

Виды

Тесты при трудоустройстве делятся на несколько видов : профессиональные, личностные, интеллектуальные, математические, логические, вербальные, на внимательность, на сообразительность, на обучаемость, по механике, и самый распространённый в торговых организациях «Как продать ручку».

Давайте подробно остановимся на каждом из них.

Профессиональные

Чтобы определить профессионализм соискателя, специалисты применяют особые тесты . Для – задания на знание бухгалтерского учёта; для секретаря — пройти тест на владение основами делопроизводства, проверка грамотности, внимательности к деталям, скорости печати, быстрого и эффективного поиска информации; для специалиста налоговой службы — прохождение налоговых тестов, для юристов и экономистов — проверка юридической или экономической грамотности, на уровень знания иностранного языка, владения компьютерными программами и т. д.

составляют вопросы и несколько вариантов ответов: да, нет, в некоторых случаях.

При этом дается интерпретация ответов.

По таким объяснениям можно сразу увидеть ответ.

А с помощью готовых ключей к тесту определить количество правильных ответов и вынести своё решение.

Работодатель может предложить пройти тест для соискателей на знание некоторых приёмов работы excel(эксель).

Соискатель, имеющий опыт, знающий теорию, ответивший на большинство вопросов имеет все шансы получить желаемую должность .

Личностные или психологические

Интеллектуальные

Если работа требует умственных затрат , то работодатель вправе знать, насколько высоки интеллектуальные способности его работников.

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

Для правильного подбора заданий подойдет книга английского психолога Г. Айзенка .

Можно воспользоваться тестом Амтхауэра . Он определяет уровень умственных способностей по девяти критериям.

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

Онлайн тестирование на уровень интеллекта можно пройти .

Математические

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

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

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

Пройти онлайн тест по математике можно .

Логические

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

Логические тесты на работу первый взгляд абсурдны. В одной из задач сказано, что некоторые улитки — горы. Горы обожают кошек. Значит, все улитки обожают кошек.

Главное для тестируемого сосредоточиться, построить логическую цепочку , объяснить её, не обращая внимания на улиток и кошек. Специалист должен понять: умеет ли будущий работник логически рассуждать и нестандартно мыслить.

Тест на логику можно пройти онлайн .

Вербальные

Вербальные тесты полезны для проверки на должности преподавателей, переводчиков или секретарей .

Дают возможность оценить умение соискателя работать с текстами : понимать, разбирать, оценивать информацию, делать выводы.

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

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

Но есть такой вид вербального теста, когда необходимо прочитать небольшой информационный текст и несколько утверждений. Соискатель должен раскрыть истинность или ложность данного утверждения.

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

Пройти вербальный тест онлайн можно .

На обучаемость

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

По механике

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

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

Онлайн тестирование по механике предложено .

На Полиграфе

Крупные компании при приеме на работу пользуются мобильным аппаратным комплексом .

Может ли работодатель применить детектор лжи ?

Закон не запрещает.

Трудовой кодекс разрешает получить не вызывающую сомнений информацию о сотруднике. Но кандидат вправе отказаться от проверки на честность, если считает это унижением его человеческого достоинства.

В чём заключается процесс тестирования? Вопросы трёх видов: настраивающие, коррекционные и фактические .

Если ответы на последние два честны, физиологические параметры человека одинаковы. Они трансформируются, если человек говорит неправду. Это фиксируется аппаратом.

От «Полиграфа» не скроется тяготение к употреблению алкоголя; наркотиков, воровству, игровой зависимости, есть ли кредиты, криминальное прошлое и даже судимые родственники; способен ли человек нанести вред компании.

Ответы дают безошибочное суждение о кандидате . По окончании проверки работодатель решает: будет кандидат работать или нет.

«Продайте ручку»

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

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

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

Резюме

Так стоит ли стараться применять тесты при подборе персонала?

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

Если выбор правильный, то повышается продуктивность, работоспособность всех сотрудников организации.

Ошибки обходятся дорого. Умение брать на работу – настоящий талант, который еще и не часто встречается.

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

На рис. 12 представлено простое задание, взятое из Теста механической понятливости Беннета на техническое понимание. Испытуемого просят ответить на вопрос, кто из изображенных рабочих испытывает большую нагрузку и внести в бланк ответа соответствующую букву-А или В. Если испытуемый считает, что нагрузки равны, то он должен внести в бланк букву С. (рис. 12).

Рис. 12. Кто из рабочих испытывает большую нагрузку?

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

Рассмотрим некоторые задания на понимание пространственных взаимоотношений.

1. Тест механической понятливости Беннета

Стимульный материал представлен 70 несложными физико-техническими заданиями, большая часть которых представлена в виде рисунков. После текста вопроса (рисунка) следует три варианта ответа на него, причем только один из них является правильным. Испытуемому необходимо выбрать и указать правильный ответ, написав на отдельном листе номер задания и номер избранного ответа. Методика относится к так называемым тестам скорости. На общее выполнение всех заданий отводится 25 мин.

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

Задачи к тесту Беннета

Рис.13а. Задание 1

I. Если левая шестерня поворачивается в указанном стрелкой направлении, то в каком направлении будет поворачиваться правая шестерня?

3. Не знаю.

Рис. 13б. Задание 2

II. Какая гусеница должна двигаться быстрее, чтобы трактор поворачивался в указанном стрелкой направлении?

1. Гусеница А.

2. Гусеница В.

3. Не знаю.

2. Задачи на выявление особенностей технического воображения.

Задача 1. Дан чертеж, на котором изображена фигура: а) фасад (главный вид) и б) вид сверху. Необходимо начертить третий вид – сбоку, а затем дать общий вид (рис. 14).

Рис. 14. Чертеж фигуры

Примечание. Данная деталь имеет два варианта решения. Ответ дан в приложении №7.

Задача 2. Данная деталь состоит их двух частей. Со всех сторон виден разрез в виде «ласточкиного хвоста». Как ее можно разделить? (Имеется два варианта ответа) (рис. 15).

Рис. 15. Общий вид детали

Ответ дан в приложении № 8.

Подобные методики ориентированы на выявление технических способностей испытуемых как подростков, так и взрослых.

Задача 3. На представленных рисунках не все кирпичи видны. Подсчитайте, сколько кирпичей в каждом блоке (рис. 16).

Рис. 16. Фрагменты кирпичной кладки

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


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

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

Уровни тестирования

Модульное тестирование - это процесс исследования ПО, при котором тестируется минимально возможный компонент, например, отдельный класс или функция. Часто модульное тестирование осуществляется разработчиками ПО.

  • Википедия. Модульное тестирование .
  • Модульное тестирование кода Visual C# в приложениях для Магазина Windows .

Интеграционное тестирование - это процесс исследования ПО, при котором тестируется интерфейсы между компонентами или подсистемами.

  • Википедия. Интеграционное тестирование.

Системное тестирование - это процесс исследования ПО, при котором тестируется интегрированная система на её соответствие требованиям заказчика. Альфа и Бета тестирование относятся к подкатегориям системного тестирования.

Классификация видов тестирования

Существует несколько признаков, по которым принято производить классификацию видов тестирования. Обычно выделяют следующие:

По объекту тестирования

Функциональное тестирование (functional testing) - тестирование ПО, направленное на проверку реализуемости функциональных требований. При функциональном тестировании проверяется способность ПО правильно решать задачи, необходимые пользователям.

  • Википедия. Функциональное тестирование .
  • StackOverflow. Unit tests vs Functional Testing .

Тестирование производительности (performance testing) - тестирование ПО, позволяющее осуществлять оценку быстродействия программного продукта при определённой нагрузке. Тест производительности выполняется до и после проведения оптимизации с целью выявить изменения в производительности. Если оптимизация не удается, и производительность снижается, то программист может отказаться от неудачной оптимизации. В случае повышения производительности величину этого повышения можно сравнить с ожидаемыми результатами, чтобы убедиться в успешности оптимизации. Задачей теста производительности является выявление фактов повышения и понижения производительности, чтобы можно было избежать неудачных модернизаций.

  • Википедия. Тестирование производительности .

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

  • Википедия. Нагрузочное тестирование .

Стресс-тестирование (stress testing) - тестирование ПО, которое оценивает надёжность и устойчивость системы в условиях превышения пределов нормального функционирования. Это проверка программы в таких стрессовых ситуациях как наличие большого объёма входных параметров, нехватка дискового пространства или маломощный процессор.

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

  • Википедия. Стресс-тестирование программного обеспечения .

Тестирование стабильности (stability/endurance/soak testing) - тестирование ПО, при котором проверяется работоспособность ПО при длительном тестировании со среднем уровнем нагрузки.

Тестирование безопасности (security testing) - тестирование ПО, которое проверяет фактическую реакцию защитных механизмов, встроенных в систему на проникновение злоумышленников.

  • Википедия. Тестирование безопасности .
  • Очир Абушинов: Особенности тестирования безопасности ПО .

Тестирование совместимости (compatibility testing) - тестирование ПО, которое проверяет работоспособность ПО в определенном окружении.

По знанию системы

Тестирование чёрного ящика (black box) - тестирование ПО, при котором тестировщик имеет доступ к ПО только через интерфейсы заказчика, либо через внешние интерфейсы, позволяющие другому компьютеру или процессу подключиться к системе для тестирования. Этот подход до сих пор является самым распространенным в повседневной практике, но у него есть целый ряд недостатков. Например, некоторые ошибки возникают достаточно редко и потому их трудно найти и воспроизвести.

  • Википедия. Тестирование по стратегии чёрного ящика .

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

  • Википедия. Стратегия тестирования по принципу "Белого ящика" .

По времени проведения тестирования

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

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

Регрессионное тестирование (regression testing) - тестирование ПО, при котором проводится проверка ранее найденных ошибок, а также проверка основной функциональности. Проводится, как правило, на каждой новой версии программного продукта. Регрессивное тестирование является наиболее важной фазой тестирования непосредственно перед окончанием работ над продуктом, так как непосредственно перед релизом продукта крайне необходимо проверить не только основную функциональность, но и то, что ни одна из ранее найденных ошибок не повторяется в финальной версии. Являясь неотъемлемой частью функционального тестирования, регрессионное тестирование позволяет гарантировать, что изменения, связанные с устранением дефектов, не оказали негативного воздействия на остальные функциональные области приложения.

  • Википедия. Регрессивное тестирование .

Дымовое тестирование (smoke testing) - тестирование ПО, при котором выполняется набор тестов, после которого можно сказать, что программный продукт запускается. Если ошибок при запуске не происходит, то дымовой тест считается пройденным. Если программа не прошла дымовой тест, то её отправляют на доработку. Дело в том, что разработчики пишут отдельные компоненты одного приложения, но когда эти компоненты объединяют, нередко получается так, что совместно они работать не могут, следовательно, нет смысла тестировать продукт в целом.

  • Википедия. Smoke test .

По степени автоматизации

Ручное тестирование (manual testing) - тестирование при котором не используются программные средства для выполнения тестов и проверки результатов выполнения.

  • Тестирование: Ручное или Автоматизированное ?

Автоматизированное тестирование (automated testing) - тестирование при котором используются программные средства для выполнения тестов и проверки результатов выполнения. Автоматизированное тестирование, несомненно, приносит пользу и экономит время и ресурсы компании.

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

Для автоматизации тестирования существует большое количество приложений. Наиболее популярные из них: HP LoadRunner, HP QuickTest Professional, HP Quality Center, .

Автоматизация в целом не только экономит время на разработку, но и увеличивает надежность и безопасность создаваемых продуктов. Очевидны также преимущества для тестеровщиков: надёжность проверки продукта возрастает, время на тестирование сокращается, работа тестирующего становится менее стрессовой. Конечно, автоматические тесты никогда не смогут заменить человека, но могут облегчить работу инженера-тестировщика ПО.

  • Тестирование: Ручное или Автоматизированное ?

Динамический и статический анализ кода

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

Динамический анализ кода (runtime analysis) - способ анализа программы непосредственно при ее выполнении. При динамическом анализе проблемы в исходном коде находятся по мере их возникновения. Процесс анализа можно разбить на несколько этапов - подготовка исходных данных, проведение тестового запуска программы, сбор необходимых параметров и анализ полученных данных.