Итеративно-инкрементальная модель разработки программного обеспечения ( Iterative-incremental development models)
Итеративно-инкрементальная разработка это процесс утверждения требований к проекту, дизайна, построения и тестирования системы, выполненное в качестве более коротких циклов разработки. Например: прототипирование, концепция создания средств разработки программных продуктов, уделяющая особое внимание быстроте и удобству программирования (RAD), методология разработки программного обеспечения, созданная компанией Rational Software (Rational Unified Process (RUP)), гибкая модель разработки (adgile development models). Система, полученная методом итерации, может быть протестирована на нескольких уровнях, что является частью ее разработки. Мини-прирост, который добавляется к разработанным раннее приростам, формирует растущую систему, которая также должна быть протестирована. Регрессионное тестирование (regression testing) становится все более важным на всех итерациях после первой. Верификация и валидация могут быть выполнены на каждом мини-приросте.
вторник, 19 октября 2010 г.
суббота, 16 октября 2010 г.
Тестирование на протяжении жизненного цикла программного обеспечения. Модели разработки программ (часть I).
Тестирование не существует изолировано; оно неразрывно связано с разработкой программного обеспечения. Разные модели разработки по требуют разных подходов тестирования.
V модель (последовательная модель разработки)
Хотя и существует несколько вариантов данной модели, вообщем случае она использует 4 уровня тестирования, отвечающие 4 уровням разработки.
4 уровня, описанные в этой учебной программе:
Рабочие документы (такие как бизнес сценарии или use кейсы, спецификации, документы по дизайну и код), составленные во время разработки программы, часто являются основой для тестирования на одном или нескольких уровнях тестирования. Общие стандарты ведения проектов включают Модель зрелости процессов создания (Capability Maturity Model Integration (CMMI)) или Процессы жизненного цикла разработки программы (‘Software life cycle processes’ (IEEE/IEC 12207)). Проверка и верификация (а также тест дизайн) могут быть осуществлены в процессе разработки программных продуктов.
V модель (последовательная модель разработки)
Хотя и существует несколько вариантов данной модели, вообщем случае она использует 4 уровня тестирования, отвечающие 4 уровням разработки.
4 уровня, описанные в этой учебной программе:
- тестирование компонентов (component or unit testing)
- интеграционное тестирование (integration testing)
- системное тестирование (system testing)
- приемочное тестирование (acceptance testing)
Рабочие документы (такие как бизнес сценарии или use кейсы, спецификации, документы по дизайну и код), составленные во время разработки программы, часто являются основой для тестирования на одном или нескольких уровнях тестирования. Общие стандарты ведения проектов включают Модель зрелости процессов создания (Capability Maturity Model Integration (CMMI)) или Процессы жизненного цикла разработки программы (‘Software life cycle processes’ (IEEE/IEC 12207)). Проверка и верификация (а также тест дизайн) могут быть осуществлены в процессе разработки программных продуктов.
суббота, 9 октября 2010 г.
Психология тестирования. Вступление (часть II)
Нахождение ошибок во время тестирования можно расценивать как чрезмерную критику продукта и автора продукта. Поэтому тестирование рассматривается скорее как деструктивная деятельность, даже не смотря на то, что она считается довольно творческой при управлении рисками продукта. Поиск ошибок в программе требует любопытства, профессионального пессимизма, критического взгляда, внимания к деталям, активных переговоров и обсуждений продукта с коллегами по разработке и опыт, на основе которого находится ошибка.
Если ошибки, дефекты или сбои программы обсуждаются конструктивным путем, то можно избежать конфликтов между тестировщиками и аналитиками, дизайнерами и разработчиками. Это применимо как к оцениванию так и к тестированию.
Тестировщик и тест лид должны обладать хорошими навыками общения для обсуждения дефектов, прогресса и рисков конструктивным путем. Автору программы или документа информация об ошибке может помочь улучшить свои навыки. Ошибки, найденные и исправленные во время тестирования, уменьшат финансовые затраты и количество времени на их исправление, а также сократят риски.
Недоразумения в команде могут возникнуть, частично если тестировщики расцениваются только как вестники нежелательных новостей об ошибках. Однако, есть несколько путей чтобы улучшить взаимопонимание между тестировщиками и другими членами команды:
Если ошибки, дефекты или сбои программы обсуждаются конструктивным путем, то можно избежать конфликтов между тестировщиками и аналитиками, дизайнерами и разработчиками. Это применимо как к оцениванию так и к тестированию.
Тестировщик и тест лид должны обладать хорошими навыками общения для обсуждения дефектов, прогресса и рисков конструктивным путем. Автору программы или документа информация об ошибке может помочь улучшить свои навыки. Ошибки, найденные и исправленные во время тестирования, уменьшат финансовые затраты и количество времени на их исправление, а также сократят риски.
Недоразумения в команде могут возникнуть, частично если тестировщики расцениваются только как вестники нежелательных новостей об ошибках. Однако, есть несколько путей чтобы улучшить взаимопонимание между тестировщиками и другими членами команды:
- Начать с сотрудничества, а не с противоречий - напомните каждому об общей цели достижения лучшего качества работы системы
- Обсуждайте найденные ошибки в нейтральном, нацеленном на факты тоне, не критикуя человека, который ее допустил, например, объективно и фактично описывайте инциденты и делайте обзор выводов
- Пытайтесь понять как себя чувствует другой человек и почему он так реагирует
- Убедитесь, что человек понял, что вы сказали, и что вы поняли его
четверг, 7 октября 2010 г.
Психология тестирования. Вступление (часть I)
С точки зрения психологии, подход к тестированию отличается от подхода к программированию. С правильной установкой программисты могут тестировать свой программный код, но предоставление этих обязанностей тестировщикам обычно делается с целью сосредоточить усилия и обеспечить процесс разработки программного обеспечения дополнительными преимуществами такими как, например, независимая оценка профессиональных специалистов в этой области. Независимое тестирование (independent testing) может проводиться на любом этапе.
Определенная степень независимости (не учитывая пристрастие автора) часто бывает эффективной в поиске ошибок. Тем не менее, она не избавляет от обязанности быть внимательным разработчика, который так же может эффективно найти много ошибок в своем коде.
Существует несколько уровней независимости тестирования:
У людей и проектов есть цели. Люди стремятся сравнять свои планы и задачи, поставленные их менеджером и другими заинтересованными лицами, например, найти ошибки в программе или подтвердить правильность ее работы. Поэтому важно четко определять цели и задачи тестирования.
Определенная степень независимости (не учитывая пристрастие автора) часто бывает эффективной в поиске ошибок. Тем не менее, она не избавляет от обязанности быть внимательным разработчика, который так же может эффективно найти много ошибок в своем коде.
Существует несколько уровней независимости тестирования:
- тесты написаны разработчиком данной программы или приложения (низкий уровень независимости - low level of independence)
- тесты написаны другим человеком (например, из команды разработчиков)
- тесты написаны человеком из другой организационной группы (независимая группа тестировщиков) или специалистом по тестированию (юзабилити или тестированию производительности)
- тесты написаны человеком из другой организации или другой компании (например, аутсорсинговой компании)
У людей и проектов есть цели. Люди стремятся сравнять свои планы и задачи, поставленные их менеджером и другими заинтересованными лицами, например, найти ошибки в программе или подтвердить правильность ее работы. Поэтому важно четко определять цели и задачи тестирования.
понедельник, 4 октября 2010 г.
Основы тестирования. Фундаментальный процесс тестирования (часть III)
Оценка выходного критерия и отчетность
При оценке выходного критерия выполнение тестирования оценивается в отношении того, насколько достигнуты поставленные цели. Это должно происходить на каждом этапе тестирования.
Оценка выходного критерия имеет следующие главные задачи:
Завершение процесса тестирования
В процессе завершения тестирования собираются данные предыдущих пройденных этапов для накопления опыта, тестового по, фактов и чисел. Например, когда выходит программа, проект тестирования завершается (или отменяется), завершается очередной этап или релиз продукта без внесения изменений или функций в него.
Процесс завершения тестирования имеет следующие задачи:
При оценке выходного критерия выполнение тестирования оценивается в отношении того, насколько достигнуты поставленные цели. Это должно происходить на каждом этапе тестирования.
Оценка выходного критерия имеет следующие главные задачи:
- сравнение данных регистрационного журнала с выходным критерием, определенным при планировании тестирования
- определение нужно ли больше тестов или возможно необходимо изменить выходной критерий
- написание краткого отчета по тестированию для заказчиков
Завершение процесса тестирования
В процессе завершения тестирования собираются данные предыдущих пройденных этапов для накопления опыта, тестового по, фактов и чисел. Например, когда выходит программа, проект тестирования завершается (или отменяется), завершается очередной этап или релиз продукта без внесения изменений или функций в него.
Процесс завершения тестирования имеет следующие задачи:
- проверка того сколько запланированных целей достигнуто, закрытия инцидентов или поднятие записей об изменениях для тех, которые остались открытыми, а также проверка приемочного тестирования
- окончание работы и архивирование результатов программ тестирования (testware), среды тестирования и инфраструктуры для дальнейшего использования
- передача программ тестирования организации техобслуживания
- анализ полученного опыта, улучшение результатов тестов на зрелость
суббота, 2 октября 2010 г.
Основы тестирования. Фундаментальный процесс тестирования (часть II).
Реализация и выполнение тестирования
Реализация и выполнение тестирования это деятельность, при которой тест процедуры и сценарии (test procedures and scripts) определяются посредством расположения тест кейсов в определенном порядке и включают любую другую информацию, необходимую для выполнения тестирования, среда тестирования настроена и тесты запускаются.
Реализация и выполнение тестирования имеют следующие главные задачи:
Реализация и выполнение тестирования это деятельность, при которой тест процедуры и сценарии (test procedures and scripts) определяются посредством расположения тест кейсов в определенном порядке и включают любую другую информацию, необходимую для выполнения тестирования, среда тестирования настроена и тесты запускаются.
Реализация и выполнение тестирования имеют следующие главные задачи:
- разработка, реализация и приоритетность тест кейсов
- разработка, приоритетность процедур тестирования, формирование тестовых данных, подготовка test harnesses (необязательно) и написание автоматизированных сценариев
- создание набора тестов из тест процедур для эффективного выполнения тестирования
- проверка настроек среды тестирования
- выполнение тест процедур вручную либо используя специальные программы в соответствие плановой последовательности
- фиксирование результатов выполнения тестирования и особенностей и версии тестируемого программного обеспечения, тестовых инструментов и программ (testware)
- сравнение полученных и предполагаемых результатов тестирования
- сообщение о несоответствиях являющихся инцидентами тестирования и анализ с целью выявления причин их появления (например, ошибка в коде, в документе или в процессе выполнения определенного теста)
- повторное тестирование для проверки каждой неточности. Например, повторное выполнение теста, на котором произошла ошибка, чтобы убедиться в его исправности (confirmation testing), запуск исправленного теста или тестов и проверка того, что ошибки не повлияли на неизмененную часть программы или, что исправление ошибок не приводит к появлению новых (регрессионное тестирование - regression testing)
четверг, 30 сентября 2010 г.
Основы тестирования. Фундаментальный процесс тестирования (часть I).
Наиболее очевидная часть процесса тестирования это выполнение тестов. Но для того, чтобы тесты были эффективными и рациональными нужно выделять время на планирование тестов, написание, подготовку для запуска и оценку статуса.
В фундаментальном процессе тестирования выделяют следующие основные этапы:
Планирование и управление тестирования
На данном этапе определяется задача и цели тестирования, характеристика этапов тестирования для достижения целей и задачи.
Управление это непрерывный процесс сравнивания текущего состояния с планом тестирования и отчет о статусе, включая отклонения от плана. Этот этап также включает принятие действий, необходимых для достижения целей и задач проекта. Чтобы управлять тестированием, нужно проверять его состояние на протяжении всего проекта. Планирование учитывает результаты мониторинга и управления.
Анализ и проектирование тестов
Во время анализа и проектирования тестов происходит трансформация общих целей тестирования в конкретные тест кейсы и условия.
Анализ и проектирование имеют следующие задачи:
В фундаментальном процессе тестирования выделяют следующие основные этапы:
- планирование и управление (planning and control)
- анализ и проектирование (analysis and designing)
- реализация и выполнение (implementation and execution)
- оценка выходного критерия и отчетность (evaluating exit criteria and reporting)
- завершение процесса тестирования (test closure activities)
Планирование и управление тестирования
На данном этапе определяется задача и цели тестирования, характеристика этапов тестирования для достижения целей и задачи.
Управление это непрерывный процесс сравнивания текущего состояния с планом тестирования и отчет о статусе, включая отклонения от плана. Этот этап также включает принятие действий, необходимых для достижения целей и задач проекта. Чтобы управлять тестированием, нужно проверять его состояние на протяжении всего проекта. Планирование учитывает результаты мониторинга и управления.
Анализ и проектирование тестов
Во время анализа и проектирования тестов происходит трансформация общих целей тестирования в конкретные тест кейсы и условия.
Анализ и проектирование имеют следующие задачи:
- просмотр базы тестирования (требования к проекту, архитектура, интерфейсы, проектирование)
- оценивание тестируемости объектов
- определение и приоритетность тест условий, основанных на анализе элементов тестирования, спецификации, поведении и структуре
- проектирование и приоритетность тест кейсов
- определение необходимых данных для поддержки тест условий и кейсов
- настройка среды тестирования и определение необходимой инфраструктуры и инструментов
среда, 29 сентября 2010 г.
Основы тестирования. Главные принципы тестирования.
Принципы
Принципы тестирования формировались на протяжении 40 последних лет и представляют собой указания, общие для любого тестирования.
Принцип 1 - Тестирование показывает наличие ошибок
Тестирование может показать, что в программе есть ошибки, но не может подтвердить, что их нет. Тестирование уменьшает возможность существования ненайденных ошибок, оставшихся в программе, но, если не найдено ни одного дефекта, это не является доказательством абсолютно правильной работы программы.
Принцип 2 - Тестирование всех возможных входных данных и условий программы (exhaustive testing) невозможно
Тестирование всех комбинаций входных данных и предварительных условий программы нереально за исключением тривиальных случаев. Вместо исчерпывающего тестирования руководствуются анализом степени риска и поставленными приоритетами для достижения цели качественного тестирования.
Принцип 3 - Начинать тестирование рано
Тестирование должно начинаться как можно раньше в цикле разработки программы и иметь четкие цели.
Принцип 4 - Скопление ошибок
Несколько модулей обычно содержат большую часть ошибок, которые находятся во время бета тестирования (pre-release testing) и причиняют много операционных сбоев.
Принцип 5 - Парадокс тестирования (Pesticide paradox)
Если одинаковые тесты повторяются снова и снова, то в конце концов один и тот же набор тест кейсов не будет больше находить ошибки в программе.
Принцип 6 - Тестирование контекстно-зависимо
Тестирование проходит по-разному в разных контекстах. Например, тестирование критических по безопасности программ (safety-critical software) на сайтах электронной коммерции отличается от тестирования этого программного обеспечения на других сайтах.
Принцип 7 - Отсутствие ошибок это заблуждение
Нахождение и исправление багов не поможет, если программа нетривиальна и не удовлетворяет ожидания и нужды пользователя.
Принципы тестирования формировались на протяжении 40 последних лет и представляют собой указания, общие для любого тестирования.
Принцип 1 - Тестирование показывает наличие ошибок
Тестирование может показать, что в программе есть ошибки, но не может подтвердить, что их нет. Тестирование уменьшает возможность существования ненайденных ошибок, оставшихся в программе, но, если не найдено ни одного дефекта, это не является доказательством абсолютно правильной работы программы.
Принцип 2 - Тестирование всех возможных входных данных и условий программы (exhaustive testing) невозможно
Тестирование всех комбинаций входных данных и предварительных условий программы нереально за исключением тривиальных случаев. Вместо исчерпывающего тестирования руководствуются анализом степени риска и поставленными приоритетами для достижения цели качественного тестирования.
Принцип 3 - Начинать тестирование рано
Тестирование должно начинаться как можно раньше в цикле разработки программы и иметь четкие цели.
Принцип 4 - Скопление ошибок
Несколько модулей обычно содержат большую часть ошибок, которые находятся во время бета тестирования (pre-release testing) и причиняют много операционных сбоев.
Принцип 5 - Парадокс тестирования (Pesticide paradox)
Если одинаковые тесты повторяются снова и снова, то в конце концов один и тот же набор тест кейсов не будет больше находить ошибки в программе.
Принцип 6 - Тестирование контекстно-зависимо
Тестирование проходит по-разному в разных контекстах. Например, тестирование критических по безопасности программ (safety-critical software) на сайтах электронной коммерции отличается от тестирования этого программного обеспечения на других сайтах.
Принцип 7 - Отсутствие ошибок это заблуждение
Нахождение и исправление багов не поможет, если программа нетривиальна и не удовлетворяет ожидания и нужды пользователя.
понедельник, 27 сентября 2010 г.
Основы тестирования. Что такое тестирование?
Общее представление о тестировании такого, что оно состоит из набора тестов, которые проверяют правильность работы программы. Но это только один из этапов тестирования, есть и другие.
Существуют этапы до и после запуска тестов: планирование и контроль (planning and control), выбор условий теста (choosing test conditions), составление тест кейсов и сверка результатов (designing test cases and checking results), оценка выходного критерия (evaluating exit criteria), запись всех результатов тестового процесса и тестируемой системы (reporting on the testing process and system under test) и завершение (finalizing or closure) (например, завершение фазы тестирования). Тестирование также включает в себя обзор документов (reviewing of documents), в том числе программный код, и статический анализ (static analysis).
И статическое, и динамическое тестирование используется для достижения похожих целей в тестировании, их результаты улучшают тестируемую программу и методы разработки и тестирования.
Тестирование имеет следующие цели:
- найти дефекты в программе;
- подтвердить качество продукта и полученной информации;
- предотвратить баги.
Мысленный процесс создания тестов в начале цикла тестирования может уменьшить риск появления ошибок в программном коде. Изучение документов (например, спецификации проекта) также помогает предотвратить ошибки в коде программы.
Разные точки зрения в тестировании преследуют разные цели. Например, в тестировании в процессе разработки (development testing) (компонентное, интеграционное и системное тестирование) главной целью является создать как можно больше ошибочных вариантов работы программ, чтобы затем определить и исправить найденные баги. В приемочном тестировании (acceptance testing) цель - убедиться в том, что система работает правильно и соответствует спецификации. В некоторых случаях целью тестирования может быть оценка качества продукта (без исправления дефектов), чтобы заказчик знал о риске релиза продукта. Тестирование релиз продукта (maintenance testing) часто ставит задачей отсутствие багов в релиз системе, которая дорабатывается или изменяется. Во время операционного тестирования (operating testing) оцениваются такие системные характеристики как надежность (relaibility) и доступность (availability).
Отладка (debugging) и тестирование - разные понятия. Тестирование может показать сбои, причиной которых являются дефекты программы. Отладка это деятельность, в результате которой выявляется причина дефекта, исправляется код и проверяется, чтобы дефект был полностью устранен. Последующее регрессионное (confirmation testing) тестирование подтверждает, что действительно баг исправлен. Ответственность у этих задач разная, тестировщики тестируют, а программисты занимаются отладкой.
Существуют этапы до и после запуска тестов: планирование и контроль (planning and control), выбор условий теста (choosing test conditions), составление тест кейсов и сверка результатов (designing test cases and checking results), оценка выходного критерия (evaluating exit criteria), запись всех результатов тестового процесса и тестируемой системы (reporting on the testing process and system under test) и завершение (finalizing or closure) (например, завершение фазы тестирования). Тестирование также включает в себя обзор документов (reviewing of documents), в том числе программный код, и статический анализ (static analysis).
И статическое, и динамическое тестирование используется для достижения похожих целей в тестировании, их результаты улучшают тестируемую программу и методы разработки и тестирования.
Тестирование имеет следующие цели:
- найти дефекты в программе;
- подтвердить качество продукта и полученной информации;
- предотвратить баги.
Мысленный процесс создания тестов в начале цикла тестирования может уменьшить риск появления ошибок в программном коде. Изучение документов (например, спецификации проекта) также помогает предотвратить ошибки в коде программы.
Разные точки зрения в тестировании преследуют разные цели. Например, в тестировании в процессе разработки (development testing) (компонентное, интеграционное и системное тестирование) главной целью является создать как можно больше ошибочных вариантов работы программ, чтобы затем определить и исправить найденные баги. В приемочном тестировании (acceptance testing) цель - убедиться в том, что система работает правильно и соответствует спецификации. В некоторых случаях целью тестирования может быть оценка качества продукта (без исправления дефектов), чтобы заказчик знал о риске релиза продукта. Тестирование релиз продукта (maintenance testing) часто ставит задачей отсутствие багов в релиз системе, которая дорабатывается или изменяется. Во время операционного тестирования (operating testing) оцениваются такие системные характеристики как надежность (relaibility) и доступность (availability).
Отладка (debugging) и тестирование - разные понятия. Тестирование может показать сбои, причиной которых являются дефекты программы. Отладка это деятельность, в результате которой выявляется причина дефекта, исправляется код и проверяется, чтобы дефект был полностью устранен. Последующее регрессионное (confirmation testing) тестирование подтверждает, что действительно баг исправлен. Ответственность у этих задач разная, тестировщики тестируют, а программисты занимаются отладкой.
Основы тестирования. Зачем нужно тестирование? (часть IІ)
Тестирование и качество продукта
С помощью тестирования можно оценить качество программного продукта в количестве найденных багов, что действительно и для функциональных, и для нефункциональных программных требований и характеристик (надежность, удобство в использовании, эффективность, ремонтопригодность и совместимость).
Тестирование подтверждает высокое качество программного обеспечения, если в его результате не найдено ни одного дефекта или найдено мало дефектов. Правильно составленный тест уменьшает общий уровень риска в системе. Если в процессе тестирования найдены баги, то для повышения качества программы, эти баги нужно исправить.
Следует учиться на своих ошибках. Понимание причин возникновения дефектов, найденных в предыдущих проектах, улучшает методы тестирования, что, в свою очередь, должно предотвратить появление этих дефектов при разработке последующих программ и, следовательно, улучшить качество будущего продукта. Это один из аспектов QA (обеспечения качества).
Тестирование должно стать задачей обеспечения качества наряду с соблюдением стандартов разработки по, обучением и анализом дефектов.
Есть ли предел тестирования?
Решая сколько тестировать программу, нужно учесть уровень технического и бизнес риска для продукта и проекта в целом, а также принять во внимание ограничения проекта по времени и бюджету.
Тестирование должно предоставлять заинтересованным сторонам информацию, достаточную для принятия обоснованного решения о релизе тестируемого продукта, передаче на следующий этап разработки или в качестве готовой системы пользователям.
С помощью тестирования можно оценить качество программного продукта в количестве найденных багов, что действительно и для функциональных, и для нефункциональных программных требований и характеристик (надежность, удобство в использовании, эффективность, ремонтопригодность и совместимость).
Тестирование подтверждает высокое качество программного обеспечения, если в его результате не найдено ни одного дефекта или найдено мало дефектов. Правильно составленный тест уменьшает общий уровень риска в системе. Если в процессе тестирования найдены баги, то для повышения качества программы, эти баги нужно исправить.
Следует учиться на своих ошибках. Понимание причин возникновения дефектов, найденных в предыдущих проектах, улучшает методы тестирования, что, в свою очередь, должно предотвратить появление этих дефектов при разработке последующих программ и, следовательно, улучшить качество будущего продукта. Это один из аспектов QA (обеспечения качества).
Тестирование должно стать задачей обеспечения качества наряду с соблюдением стандартов разработки по, обучением и анализом дефектов.
Есть ли предел тестирования?
Решая сколько тестировать программу, нужно учесть уровень технического и бизнес риска для продукта и проекта в целом, а также принять во внимание ограничения проекта по времени и бюджету.
Тестирование должно предоставлять заинтересованным сторонам информацию, достаточную для принятия обоснованного решения о релизе тестируемого продукта, передаче на следующий этап разработки или в качестве готовой системы пользователям.
пятница, 24 сентября 2010 г.
Основы тестирования. Зачем нужно тестирование? (часть І)
Работа с системами программного обеспечения
Системы программного обеспечения занимают все большую часть нашей повседневной жизни, начиная бизнес приложениями (например, банковское по) заканчивая потребительскими товарами (встроенные системы в автомобилях). Многие из нас встречались с программами, которые работали ненадлежащим образом. Ошибки в этих программах могут привести к многочисленным проблемам, включая финансовые затраты, время или репутацию и могут также нанести физический вред или стать причиной смерти.
Причины программных дефектов
Человек может совершить ошибку, которая приведет к дефекту или багу в программном коде, в по, в системе или в документе. Если в коде программы возникает ошибка, программа перестает выполнять свои функции, что в свою очередь приводит к сбою. Дефекты в программах, системах или документах приводят к неисправной работе системы.
Ошибки возникают потому, что людям свойственно ошибаться, а также из-за сжатых сроков на выполнение проекта, сложного программного кода и инфраструктуры, быстро меняющихся технологий и/или чрезмерного взаимодействия между частями системы. Сбои также могут быть вызваны явлениями окружающей среды: радиацией, магнетизмом, электромагнитными полями; загрязнение может привести к ошибкам в микропрограмме или повлиять на ход исполняемой программы, изменяя состояние аппаратного обеспечения.
Роль тестирования в разработке программного обеспечения, техподдержке и работе системы
Тщательное тестирование систем и документации может уменьшить риск возникновения проблем во время работы программы и улучшить качество программного обеспечения, если найденные дефекты исправлены до того, как система отправлена в использование пользователю.
Тестирование программного обеспечения также должно соответствовать контрактным требованиям или отраслевым стандартам.
Системы программного обеспечения занимают все большую часть нашей повседневной жизни, начиная бизнес приложениями (например, банковское по) заканчивая потребительскими товарами (встроенные системы в автомобилях). Многие из нас встречались с программами, которые работали ненадлежащим образом. Ошибки в этих программах могут привести к многочисленным проблемам, включая финансовые затраты, время или репутацию и могут также нанести физический вред или стать причиной смерти.
Причины программных дефектов
Человек может совершить ошибку, которая приведет к дефекту или багу в программном коде, в по, в системе или в документе. Если в коде программы возникает ошибка, программа перестает выполнять свои функции, что в свою очередь приводит к сбою. Дефекты в программах, системах или документах приводят к неисправной работе системы.
Ошибки возникают потому, что людям свойственно ошибаться, а также из-за сжатых сроков на выполнение проекта, сложного программного кода и инфраструктуры, быстро меняющихся технологий и/или чрезмерного взаимодействия между частями системы. Сбои также могут быть вызваны явлениями окружающей среды: радиацией, магнетизмом, электромагнитными полями; загрязнение может привести к ошибкам в микропрограмме или повлиять на ход исполняемой программы, изменяя состояние аппаратного обеспечения.
Роль тестирования в разработке программного обеспечения, техподдержке и работе системы
Тщательное тестирование систем и документации может уменьшить риск возникновения проблем во время работы программы и улучшить качество программного обеспечения, если найденные дефекты исправлены до того, как система отправлена в использование пользователю.
Тестирование программного обеспечения также должно соответствовать контрактным требованиям или отраслевым стандартам.
четверг, 23 сентября 2010 г.
Введение в учебную программу ISTQB Certification
Цель данной программы
В этой программе изложен материал, знание которого поможет вам пройти Международную квалификацию в области тестирования программного обеспечения на базовый уровень.
Базовый уровень сертифицированного специалиста в области тестирования программного обеспечения (ПО)
Прохождение базового уровня квалификации по данной программе предназначено для любого, кто имеет отношение к тестированию ПО. Это могут быть тестировщики, тест-аналитики, инженеры-тестировщики, тест-консультанты, тест-менеджеры, участники пользовательского тестирования и программисты. Этот уровень квалификации также может сдавать каждый, кто хочет иметь общее представление о тестировании программного обеспечения; в этом случае это менеджеры проектов, менеджеры по качеству, менеджеры по разработке по, бизнес аналитики, директора и консультанты по менеджменту. Обладатели базового уровня смогут впоследствии сдать экзамен на более высокий уровень квалификации в области тестирования.
Сдача экзамена
Экзамен по присвоению базового уровня квалификации будет основываться на данной учебной программе. Ответы на экзаменационные вопросы могут потребовать знаний из более чем одной секции программы. Экзаменационные вопросы включают материал всех секций. На экзамене нужно будет выбрать правильный ответ из нескольких вариантов. Экзамен можно сдавать как часть аккредитованного тренировочного курса так и независимо (например, в экзаменационном центре).
В этой программе изложен материал, знание которого поможет вам пройти Международную квалификацию в области тестирования программного обеспечения на базовый уровень.
Базовый уровень сертифицированного специалиста в области тестирования программного обеспечения (ПО)
Прохождение базового уровня квалификации по данной программе предназначено для любого, кто имеет отношение к тестированию ПО. Это могут быть тестировщики, тест-аналитики, инженеры-тестировщики, тест-консультанты, тест-менеджеры, участники пользовательского тестирования и программисты. Этот уровень квалификации также может сдавать каждый, кто хочет иметь общее представление о тестировании программного обеспечения; в этом случае это менеджеры проектов, менеджеры по качеству, менеджеры по разработке по, бизнес аналитики, директора и консультанты по менеджменту. Обладатели базового уровня смогут впоследствии сдать экзамен на более высокий уровень квалификации в области тестирования.
Сдача экзамена
Экзамен по присвоению базового уровня квалификации будет основываться на данной учебной программе. Ответы на экзаменационные вопросы могут потребовать знаний из более чем одной секции программы. Экзаменационные вопросы включают материал всех секций. На экзамене нужно будет выбрать правильный ответ из нескольких вариантов. Экзамен можно сдавать как часть аккредитованного тренировочного курса так и независимо (например, в экзаменационном центре).
Подписаться на:
Сообщения (Atom)