Проблема оракула в тестировании программного обеспечения: обзор

The Oracle Problem in Software Testing: A Survey
Mark Harman, Earl T. Barr, Shin Yoo, Phil McMinn, Muzammil Shahbaz
2014-11-20

разработка на основе контрактовметаморфное тестированиетестирование программного обеспеченияавтоматизация тестовых оракуловпроблема тестового оракула
Тестирование предполагает исследование поведения системы с целью выявления потенциальных дефектов. Если задан входной сигнал для системы, задача различения соответствующего желательного, корректного поведения и потенциально некорректного поведения называется «проблемой тестового оракула». Автоматизация тестовых оракулов важна для устранения существующего узкого места, препятствующего дальнейшей общей автоматизации тестирования. При отсутствии автоматизации тестовых оракулов человек должен определить, является ли наблюдаемое поведение корректным. В литературе, посвященной тестовым оракулам, предложены методы автоматизации оракулов, включая моделирование, спецификации, контрактно-ориентированную разработку и метаморфное тестирование. Если ни один из этих методов не является полностью достаточным, конечным источником информации для тестового оракула остается человек, который может располагать неформальными спецификациями, ожиданиями, нормами и предметно-ориентированной информацией, обеспечивающими неформальные ориентиры для оракула. Все формы тестовых оракулов, включая самого человека, связаны с задачами снижения затрат и повышения эффективности. В статье представлен всесторонний обзор современных подходов к проблеме тестового оракула и анализ тенденций в этой важной области исследований и практики тестирования программного обеспечения.
1
Все подходы к тестовым оракулам требуют баланса между затратами на получение информации об ожидаемом поведении и пользой тестирования; статья систематизирует эти подходы и анализирует тенденции исследований.
2
Автоматизация тестовых оракулов необходима для уменьшения зависимости от человека, ограничивающей более широкую автоматизацию тестирования.
3
Существующие подходы к автоматизации оракулов включают моделирование, формальные спецификации, разработку на основе контрактов и метаморфное тестирование.
4
Проблема тестового оракула заключается в определении того, является ли поведение системы при заданном входе корректным или ошибочным.
5
Когда автоматизированные методы недостаточны, люди предоставляют информацию для оракула через неформальные спецификации, ожидания, нормы и предметные знания.

Тестовый оракул (механизм определения корректного и некорректного поведения программной системы для заданных входных данных)

подходы к автоматизации тестовых оракулов и связанные с ними проблемы соотношения затрат и выгод

Publication Details
Publication Date
2014-11-20
Journal
Publisher
ISSN
Access Type
Author Information
Authors
Mark Harman
Earl T. Barr
Shin Yoo
Phil McMinn
Muzammil Shahbaz
Explore further
Open the scid.ai AI chat with a ready-made request: it will find papers on a similar topic and help build a literature review.
Find similar papers in the chat
Make a presentation
100%