WikiDer > Тестирование разработки

Development testing
Разработка программного обеспечения
Активность ядер
Парадигмы и модели
Методологии и рамки
Вспомогательные дисциплины
Практики
Инструменты
Стандарты и свод знаний
Глоссарии
Контуры

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

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

Обзор

Тестирование разработки выполняется разработчиком программного обеспечения или инженером во время этап строительства из жизненный цикл разработки программного обеспечения.[1]

Вместо того, чтобы заменять традиционные QA фокусирует, это увеличивает его.[2] Тестирование разработки направлено на устранение ошибок конструкции до того, как код будет переведен в QA; эта стратегия предназначена для повышения качества конечного программного обеспечения, а также эффективности всего процесса разработки и обеспечения качества.[3]

Цели и преимущества

Тестирование разработки применяется для следующих основных целей:

Исследование VDC сообщает, что стандартизованная реализация процессов тестирования разработки в рамках всеобъемлющего стандартизированного процесса не только улучшает качество программного обеспечения (путем согласования действий по разработке с проверенными передовыми практиками), но также повышает предсказуемость проекта.[4] voke Research сообщает, что тестирование разработки делает программное обеспечение более предсказуемым, отслеживаемым, видимым и прозрачным на протяжении всего жизненного цикла разработки программного обеспечения.[2]

Ключевые принципы

В каждом из вышеуказанных приложений тестирование разработки начинается с определения политик, которые выражают ожидания организации в отношении надежность, безопасность, производительность и соответствие нормативным требованиям. Затем, после того, как команда будет обучена этим политикам, внедряются методы тестирования разработки, чтобы согласовать действия по разработке программного обеспечения с этими политиками.[5] Эти методы тестирования разработки включают:

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

Акцент на применении широкого спектра методов предотвращения и обнаружения дефектов основан на предположении, что различные методы тестирования разработки настроены для выявления различных типов дефектов в разных точках жизненного цикла разработки программного обеспечения, поэтому согласованное применение нескольких методов снижает риск дефектов, проскальзывающих через трещины.[3] Важность применения широкого набора практик подтверждена Бемом и Базили в часто упоминаемом «Списке 10 лучших программ по сокращению дефектов программного обеспечения».[7]

Статический анализ

Термин «тестирование разработки» иногда использовался для описания применения инструментов статического анализа. Многие лидеры отрасли не согласны с этим сочетанием, потому что статический анализ технически не тестирует; даже статический анализ, который «покрывает» каждую строчку кода, не способен подтверждение что код выполняет то, что должен, - или обнаруживает определенные типы дефектов, или уязвимости безопасности которые проявляются только в том, что программное обеспечение динамически выполняется. Хотя многие предупреждают, что статический анализ сам по себе не следует рассматривать как серебряную пулю или панацею, большинство отраслевых экспертов согласны с тем, что статический анализ является проверенным методом устранения многих дефектов безопасности, надежности и производительности. Другими словами, хотя статический анализ - это не то же самое, что тестирование разработки, он обычно считается компонентом тестирования разработки.[8][9]

Дополнительные мероприятия

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

Смотрите также

Рекомендации

  1. ^ МакКоннелл, Стив (2004). Код завершен (2-е изд.). Microsoft Press. ISBN 0-7356-1967-0.
  2. ^ а б Отчет voke Market Mover Array: платформы для тестирования Тереза ​​Лановиц, Лиза Дронзек, вокал, 5 июня 2012 г.
  3. ^ а б c d Колава, Адам; Хейзинга, Дорота (2007). Автоматизированное предотвращение дефектов: передовой опыт управления программным обеспечением. Пресса компьютерного общества Wiley-IEEE. ISBN 0-470-04212-5.
  4. ^ «Автоматическое предотвращение дефектов для обеспечения качества встроенного ПО» Белая книга VDC Research
  5. ^ Большие надежды на развитие - с автоматизацией политик Уэйн Ариола, SD Times, 28 июля 2011 г.
  6. ^ Переосмысление разработки, тестирования и проверки программного обеспечения Мэтью Хойссер, ИТ-директор, 1 февраля 2012 г.
  7. ^ Список 10 лучших программ по сокращению дефектов программного обеспечения Барри Бем и Виктор Р. Базили, Компьютер, январь 2001 г.
  8. ^ Статические анализаторы в программной инженерии Доктор Пол Э. Блэк, CrossTalk: журнал оборонной программной инженерии, март / апрель 2009 г.
  9. ^ 3 основных ошибки статического анализа для встроенных и критически важных для безопасности разработки Артур Хикен, каталог EE, 25 сентября 2012 г.
  10. ^ Удовлетворение требований SIL: обеспечение функциональной безопасности E / E / PE систем, связанных с безопасностью В архиве 2016-03-04 в Wayback Machine статья на DevelopmentTesting.com