Автоматизация тестирования программного обеспечения - магистерская диссертация [закрыто]

StackOverflow https://stackoverflow.com/questions/883305

Вопрос

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

РЕДАКТИРОВАТЬ:Я планирую аспекты тестирования приложения через его графический интерфейс.Так что мои тесты будут в основном касаться стороны черного ящика мира тестирования.Я не планировал писать о модульном тестировании.

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

  • Как вы думаете, эта тема может иметь успех?
  • Есть ли у вас еще идеи по этой теме?
  • Можете ли вы порекомендовать литературу?
  • Каково ваше мнение по этой теме?
Это было полезно?

Решение

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

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

Я думаю, что с дипломной работой на 6 баллов у вас должно быть достаточно времени, чтобы изучить и опробовать некоторые более крупные коммерческие инструменты и инструменты с открытым исходным кодом, а также изучить литературу.Я бы посоветовал вам изучить как коммерческие инструменты (быстрое тестирование, завершение теста), так и автоматизацию на основе ключевых слов — например, selenium RC.Кто-то еще упомянул тестирование «за графическим интерфейсом», например FIT/Fitnesse, возможно, его стоит обсудить и оценить.

Я рассказываю об автоматизации функционального тестирования «черного ящика» в своей ежемесячной колонке в декабрьском выпуске журнала Software Test and Performance Magazine за 2008 год:

http://www.stpmag.com/issues/stp-2008-12.pdf (стр. 7)

Это краткое введение на одну страницу.Введение из пяти предложений заключается в том, что инструменты записи/воспроизведения экрана сравнивают все, поэтому, если ваш графический интерфейс вообще каким-либо образом изменится (даже если вы просто измените разрешение экрана), это может вернуться в виде ложной ошибки.Инструменты, управляемые ключевыми словами, проверяют только то, что вы им говорите — они пропускают, если кнопка внезапно отключается без уважительной причины или значок непрозрачен.

Только человек способен проверить это скрытое утверждение в конце каждого тестового примера "...и больше ничего странного не произошло».

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

Другие вещи, на которые стоит обратить внимание:

  • Джеймс Бах «Змеиное масло автоматизации тестирования программного обеспечения»
  • Книга Канера, Баха и Петтикорда «Уроки, извлеченные из тестирования программного обеспечения».
  • Моя запись в блоге о тестовых фреймворках -http://xndev.blogspot.com/2007/09/whats-test-framework.html (это результат Google под номером 4 по запросу «что такое тестовая среда», поэтому я смело рекомендую его)
  • Аналогия с минным полем ( http://www.testingperspective.com/tpwiki/doku.php?id=minefield )
  • Статьи Дуга Хоффмана по автоматизации тестирования:http://www.softwarequalitymethods.com/H-Papers.html
  • Классическая проблема «полочного ПО» автоматизации тестирования.
  • Антиинтеллектуализм, продвигаемый некоторыми сторонниками сообщества автоматизации тестирования «черного ящика».
  • Курс Канера по тестированию программного обеспечения «Черный ящик»
  • Работа Джеймса Баха по когнитивному тестированию
  • Контекстно-ориентированное тестирование программного обеспечения
  • Работа Джона Коля над «Человеком и машиной», или киборгским подходом (вместо выполнения и оценки тестов с помощью компьютера)

Надеюсь, это поможет.

Другие советы

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

Об автоматизации тестирования программного обеспечения написаны целые книги:

  • Как общая тема
  • Сосредоточение внимания на функциональных/функциональных тестах (FIT)
  • Фокус на юнит-тестах
  • Сосредоточение внимания на модульных тестах с использованием одного конкретного языка и платформы.

Фреймворки ориентированы на разные виды тестирования:

  • Модульное тестирование
    • Разработка через тестирование
    • Развитие, основанное на поведении
  • Функциональное тестирование
  • Тестирование графического пользовательского интерфейса (Windows, Java GUI, X Windows и т. д.)
  • Веб-тестирование
  • Тестирование производительности
  • Тестирование безопасности

Я бы подумал о том, чтобы сосредоточиться на фреймворках (или методах, или чем-то еще) в одной из этих областей, а не пытаться охватить их все.Или выберите пару таких областей и сравните их.

Вопрос воспроизведения/записи vs.рукописные тесты кажутся мне устаревшими.В 1980-х годах поставщики любили продвигать воспроизведение/запись для автоматизации графического интерфейса Windows.Это породило отличные демонстрации и большие надежды.Но это также привело к хрупким тестам и хранению.Воспроизведение/запись — это хороший способ начать работу с инструментом, но для того, чтобы его можно было поддерживать, обычно нужны сценарии, написанные на более высоком уровне.Это положило начало новой эре подходов, основанных на электронных таблицах и ключевых словах, и, в конечном итоге, FIT/FitNesse.

Не знаю насчет литературы, но думаю, что публикации ACM в вашей школьной библиотеке, вероятно, принесут результаты.В частности Информационные бюллетени SIG*.(Возможно СИГСОФТ?)

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

В качестве обзора литературы это отличная тема;там много материала.Разумеется, я не собираюсь вдаваться во все детали, поскольку это ваша работа как автора.:-)

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

Мне было бы интересно прочитать диссертацию, если она доступна в Интернете.Стоит рассмотреть программный доступ к графическому интерфейсу — как через Интернет, так и через приложение.Также есть инструменты записи и воспроизведения, такие как Selenium или WatiR.И, конечно же, плюсы и минусы автоматизации - ограничения инструментов (большинство из них не видят, например, Java-апплеты или флэш-память на веб-страницах) и самая важная вещь, которую некоторые люди забывают при автоматизации - НЕ все. должен быть автоматизированным!

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

В этом году вышла отличная книга по автоматизации тестирования:«Внедрение автоматизированного тестирования», Эльфрида Дастин, Том Гарретт и Берни Гауф, Эддисон Уэсли.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top