2009-05-19 4 views
5

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

EDIT: Я планирую аспекты тестирования приложения по его графическому интерфейсу. Поэтому мои тесты будут в основном на стороне Blackbox в мире тестирования. Я не планировал писать об Unit Testing.

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

  • Считаете ли вы, что эта тема может быть успешной?
  • Есть ли у вас какие-либо другие идеи относительно этой темы?
  • Можете ли вы рекомендовать литературу?
  • Каково ваше мнение по этой теме?
+0

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

+0

В какой области тестирования вас интересует? Разработчик (модульное тестирование), функциональный, интеграционный (все они имеют статьи в википедии по их терминологии)? –

ответ

8

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

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

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

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

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

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

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

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

Другие вещи, чтобы посмотреть в:

  • Джеймса Баха «Тест Программное обеспечение автоматизации Snake Oil»
  • Kaner, Бах и книга Pettichord в «Уроки, извлеченные из тестирования программного обеспечения»
  • Мой блог на тест рамочные - 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
  • Классическая «ненужный довесок» Проблема автоматизации тестирования
  • антиинтеллектуализм толкнул некоторых сторонниками автоматизации сообщества теста BLACKBOX
  • Black Box Software Testing Эмануил Айзикович курс
  • работа Джеймса Баха на/когнитивного/тестирования
  • контекст Driven тестирования программного обеспечения
  • работа Джона Kohl на «Человек и машина», или киборга подход (вместо компьютера - одиночное испытание и оценка)

Я надеюсь, что это поможет.

+0

Мэтт, +1, отличный ответ. Но если «инструменты записи/воспроизведения сравнивают все, поэтому, если ваш графический интерфейс изменяется», вы имеете в виду QTP и его братьев, я думаю, что вы не в курсе. Инструменты текущего поколения не зависят от простых изменений экрана и перемещения объектов. Вы правы, но запись/воспроизведение обычно не удается по другим причинам - например, приложение подверглось более радикальным изменениям. Разработчики обычно не просто меняют кнопку, а скорее изменяют рабочий процесс. Следовательно, необходимость в практических методах совершенствования для поддержания жизнеспособности. –

0

Я не знаю о литературе, но я думаю, что публикации ACM в вашей школьной библиотеке, вероятно, приведут к результатам. В частности, SIG* newsletters. (Возможно, SIGSOFT?)

Это звучит как хороший магистерский тезис для меня. Конечно, ваш тезис-советник - это последнее слово. Вы должны поговорить с ними.

0

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

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

+0

Да, большинство программ магистратуры в Северной Америке не требуют эмпирических исследований. Мой не сделал. Обследование литературы, которое занимает несколько стендов, обычно прекрасное. Это 3-6 кредитный проект, а не 21+ кредитный проект.:-) –

3

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

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

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

Рамки предназначены для различных типов испытаний :

  • Юнит
    • Test-Driven Development
    • Behavior-Driven Development
  • Feature/Функциональное тестирование
  • GUI тестирования (Windows, Java ГПИ, X Windows, и т.д. .)
  • Веб-тестирование
  • Тестирование производительности
  • Тестирование безопасности

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

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

+0

Справедливости ради, немало магистерских программ очень восприимчивы к такого рода тезисов. –

+0

Спасибо за ваш комментарий! Я добавил некоторые детали к моему оригинальному Вопросу, я был так сосредоточен на своей теме, что забыл, что существуют другие методы автоматизации тестирования вместо GUI Testing. –

-1

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

0

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

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