Jump to content

Метаморфические испытания

Метаморфическое тестирование , основанный на свойствах (MT) — это метод тестирования программного обеспечения , который может быть эффективным подходом для решения проблемы тестового оракула и проблемы создания тестовых примеров. Проблема тестового оракула заключается в сложности определения ожидаемых результатов выбранных тестовых случаев или определения того, согласуются ли фактические результаты с ожидаемыми результатами.

Метаморфические отношения (MR) являются необходимыми свойствами предполагаемой функциональности программного обеспечения и должны включать многократное выполнение программного обеспечения. Рассмотрим, например, программу, которая реализует sin x с точностью до 100 значащих цифр ; метаморфическое соотношение для синусоидальных функций: « sin ( π − x ) = sin x ». Таким образом, даже несмотря на то, что ожидаемое значение sin x 1 для исходного тестового примера x 1 последующий тестовый пример x 2 = π = 1,234, скорректированное с требуемой точностью, неизвестно, можно построить - 1,234.Мы можем проверить, соответствуют ли фактические выходные данные тестируемой программы из исходного тестового примера и последующего тестового примера рассматриваемому MR. Любое несоответствие (с учетом ошибок округления) указывает на сбой. [1] : 31  программы, вызванной ошибкой [1] : 31  в реализации.

MR не ограничиваются программами с числовыми входными данными или отношениями равенства . Например, при тестировании веб-сайта бронирования поиск жилья в Сиднее, Австралия, возвращает 1671 результат; являются ли результаты этого поиска правильными и полными? Это тестовая проблема оракула. На основе метаморфического отношения мы можем отфильтровать диапазон цен или звездный рейтинг и снова применить поиск; он должен вернуть подмножество предыдущих результатов. Нарушение этого ожидания аналогичным образом выявило бы провал системы.

Метаморфические испытания были изобретены Тай Ченом в техническом отчете. [2] в 1998 году.С тех пор более 150 исследователей и практиков со всего мира применили эту технику в реальных условиях.Некоторые примеры включают в себя веб-сервисы , [3] компьютерная графика , [4] встроенные системы , [5] симуляция и моделирование , [6] машинное обучение , [7] поддержка принятия решений , [8] биоинформатика , [9] компоненты , [10] численный анализ , [11] и компиляторы . [12] Первое крупное исследование в области МТ было проведено в 2016 году. [13] За ним последовало еще одно крупное исследование в 2018 году. [14] который подчеркивает проблемы и возможности и проясняет распространенные недопонимания.

Хотя MT изначально был предложен как метод проверки программного обеспечения , позже он был развит в парадигму , охватывающую верификацию, валидацию и другие виды оценки качества программного обеспечения . [15] MT может применяться независимо, а также сочетаться с другими методами статического и динамического анализа программного обеспечения, такими как проверка и отладка . [16]

В августе 2018 года Google приобрела GraphicsFuzz, стартап Имперского колледжа Лондона , чтобы подать заявкуметаморфическое тестирование драйверов графических устройств для Android смартфонов . [17] [18]

См. также

[ редактировать ]
  1. ^ Перейти обратно: а б 610.12-1990 — Стандартный глоссарий терминологии разработки программного обеспечения IEEE, IEEE, 1990, doi : 10.1109/IEESTD.1990.101064 , ISBN  9781559370677
  2. ^ Тай Чен; СК Ченг; С.М. Ю (1998), «Метаморфическое тестирование: новый подход к созданию следующих тестовых примеров», Технический отчет HKUST-CS98-01 (PDF) , факультет компьютерных наук, Гонконгский университет науки и технологий , Гонконг, arXiv : 2002.12543 .
  3. ^ К. Кастро-Кабрера и И. Медина-Було, «Подход к метаморфическому тестированию композиций WS-BPEL», в материалах Международной конференции по электронному бизнесу , IEEE (2011).
  4. ^ Р. Гудерлей и Дж. Майер, «На пути к автоматическому тестированию программного обеспечения для обработки изображений посредством случайного и метаморфического тестирования», Международный журнал программной инженерии и инженерии знаний 17 (6): 757–781 (2007).
  5. ^ TH Tse , SS Yau, WK Chan, H. Lu и TY Chen, «Тестирование контекстно-зависимых программных приложений на основе промежуточного программного обеспечения», в Proceedings of the 28th Annual International Computer Software and Applications Conference ( COMPSAC '04 ), vol. 1, Компьютерное общество IEEE , стр. 458–465 (2004).
  6. ^ С. Сегура, Р. М. Хиеронс, Д. Бенавидес и А. Руис-Кортес, «Автоматическое создание тестовых данных при анализе моделей функций: метаморфический подход к тестированию», в материалах 3-й Международной конференции по тестированию и проверке программного обеспечения, и валидация ( ICST '10 ), IEEE Computer Society , стр. 35–44 (2010).
  7. ^ Дж. Дин, X.-H. Ху и В. Гудивада, «Среда, основанная на машинном обучении, для проверки и проверки крупномасштабных данных изображений», IEEE Transactions on Big Data (2017). doi: 10.1109/TBDATA.2017.2680460.
  8. ^ Ф.-К. Куо, ZQ Чжоу, Дж. Ма и Г. Чжан, «Метаморфическое тестирование систем поддержки принятия решений: практический пример», IET Software 4 (4): 294–301 (2010).
  9. ^ Л. Л. Пуллум и О. Озмен, «Ранние результаты метаморфического тестирования эпидемиологических моделей», в материалах Международной конференции ASE/IEEE 2012 г. по биомедицинским вычислениям ( BioMedCom '12 ), IEEE Computer Society , стр. 62–67 (2012). .
  10. ^ С. Бейдеда, «Компоненты самометаморфического тестирования», в материалах 30-й ежегодной международной конференции по компьютерному программному обеспечению и приложениям ( COMPSAC '06 ), том. 1, Компьютерное общество IEEE , стр. 265–272 (2006).
  11. ^ К. Аруна и РСР Прасад, «Метаморфические отношения для повышения точности тестирования программных приложений для многоточечной арифметики», в материалах Международной конференции 2014 года по достижениям в области вычислений, коммуникаций и информатики ( ICACCI '14 ), IEEE (2014).
  12. ^ К. Лидбери, А. Ласку, Н. Чонг и А. Ф. Дональдсон, «Многоядерный фаззинг компилятора», в материалах 36-й конференции ACM SIGPLAN по проектированию и реализации языков программирования ( PLDI '15 ), ACM , стр. 65 −76 (2015).
  13. ^ С. Сегура, Г. Фрейзер, А. Б. Санчес и А. Руис-Кортес, «Обзор метаморфического тестирования», IEEE Transactions on Software Engineering 42 (9}: 805-824 (2016).
  14. ^ TY Чен, Ф.-К. Куо, Х. Лю, П.-Л. Пун, Д. Тауи, Т.Х. Цзе и З.К. Чжоу, «Метаморфические испытания: обзор проблем и возможностей», ACM Computing Surveys 51 (1): 4:1-4:27 (2018).
  15. ^ ZQ Чжоу, С. Сян и Тай Чен, «Метаморфическое тестирование для оценки качества программного обеспечения: исследование поисковых систем», Транзакции IEEE по разработке программного обеспечения 42 (3): 264-28s4 (2016).
  16. ^ TY Chen, TH Tse и ZQ Zhou, «Полудоказательство: интегрированный метод проверки, тестирования и отладки программ», IEEE Transactions on Software Engineering 37 (1): 109-125 (2011).
  17. ^ «GraphicsFuzz приобретена Google» . ГрафикаФузз . 6 августа 2018 года . Проверено 23 декабря 2020 г.
  18. ^ «Google покупает GraphicsFuzz, обеспечивая нечеткую логику и метаморфическое тестирование графических драйверов Android» . Пакет . 8 августа 2018 года . Проверено 27 декабря 2020 г.
[ редактировать ]
Arc.Ask3.Ru: конец переведенного документа.
Arc.Ask3.Ru
Номер скриншота №: b2f5775565a6cabd1206736b106e69af__1713083400
URL1:https://arc.ask3.ru/arc/aa/b2/af/b2f5775565a6cabd1206736b106e69af.html
Заголовок, (Title) документа по адресу, URL1:
Metamorphic testing - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть. Любые претензии, иски не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, вы не можете использовать данный сайт и информация размещенную на нем (сайте/странице), немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, Денежную единицу (имеющую самостоятельную стоимость) можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)