Низкоуровневое тестирование компьютеризированных систем (КС) соответствует Квалификации Функционирования (OQ) в обыкновенной валидации (квалификации оборудования) и следует за Квалификацией Инсталляции КС (IQ).
Задачей Низкоуровневого тестирования КС (OQ) является:
Перед началом низкоуровневого тестирования КС подготавливаются наборы данных для тестирования, и, при необходимости, разрабатываются инструменты автоматизированного тестирования.
Под тестированием понимается испытание компьютеризированной системы или ее компонентов в работе с целью обнаружения и устранения ошибок. С точки зрения GMP/GAMP5 тестирование предполагает включение системы / запуск компонентов программного кода, и соответствует этапам традиционной валидации OQ и PQ.
Тестирование выполняется по утвержденному протоколу путём передачи программе/компоненту данных из предварительно разработанного набора данных и фиксации результатов работы программы/компонента в отчете. Тестирование может быть ручным или автоматизированным. В традиционной практике разработки ПО к ручному тестированию также относят проверки программного кода (инспекция кода, сквозной просмотр, просмотр за столом), что в схеме этапов валидации компьютеризированных систем, основанной на GMP/GAMP, соответствует Этапу 4: Проверка (Обзор) проекта (DR/DQ).
Также в традиционной практике разработки ПО тестирование делится на низкоуровневое и высокоуровневое тестирование.
Низкоуровневое тестирование включает в себя:
В свою очередь, высокоуровневое тестирование (см. соответствующий раздел) включает в себя:
Модульное тестирование
Модульное тестирование – это процесс тестирования отдельных блоков, подпрограмм, классов или процедур, составляющих программу, на предмет расхождений со спецификациями интерфейсов модулей и с целью обнаружения/устранения ошибок.
Модульное тестирование проводится до интеграции модуля в программу. Как правило, тестируемый модуль не может полноценно работать самостоятельно и требует для своей работы определенной среды. Для тестирования модуля, необходимы:
В случае ручного тестирования запуск модуля, имитация интерфейса, передача набора данных и регистрация результатов осуществляется вручную.
В случае автоматизированного тестирования все операции проводятся в автоматическом режиме с помощью специально разработанных вспомогательных тестовых модулей или в специализированной тестовой среде (хUnit и т.д.). Используемые инструменты автоматизированного тестирования должны быть в свою очередь протестированы и признаны пригодными для тестирования модуля (другими словами, валидированы).
Интеграционное тестирование
Интеграционное тестирование – это процесс тестирования совместной работы блоков, подпрограмм, классов или процедур, составляющих программу, на предмет расхождений со спецификациями и
с целью обнаружения/устранения ошибок.
Интеграционное тестирование проводится после объединения отдельных протестированных модулей в программе или после добавления новых модулей к существующей группе модулей. Существуют различные подходы для проведения интеграционного тестирования, в зависимости от того, в каком порядке происходит добавление/объединение модулей программы. Интеграционное тестирование может проводиться вручную или с помощью инструментов автоматизированного тестирования. Процедура/принципы интеграционного тестирования идентичны модульному тестированию с той разницей, что объектом тестирования является не отдельный модуль, а группа модулей.
При использовании подхода инкрементного тестирования, интеграционное тестирование может не выделяться в отдельную стадию, а рассматриваться как часть модульного тестирования.
Функциональное тестирование
Функциональное тестирование – это процесс тестирования индивидуальных функций / элементов интерфейса системы на предмет расхождений с внешней (функциональной) спецификацией с точки зрения пользователя, и с целью обнаружения/устранения ошибок.
В ходе функционального тестирования проводится проверка работы индивидуальных (с точки зрения пользователя) функций системы и элементов пользовательского интерфейса. Функциональное тестирование проводится после успешной интеграции всех модулей в систему, т.е. подразумевается, что модульное/интеграционное тестирование было проведено успешно. Функциональное тестирование может проводиться вручную или с помощью инструментов автоматизированного тестирования. Используемые инструменты автоматизированного тестирования должны быть в свою очередь протестированы и признаны пригодными (другими словами, валидированы).
Специалисты Tarqvara Pharma Technologies имеют многолетний опыт проведения квалификационных, валидационных и приёмочных мероприятий в фармацевтической индустрии в соответствии с международными, европейскими и национальными нормативными требованиями и стандартами GMP/GxP.
см. также:
Квалификация / валидация / приёмка
Валидация компьютеризированных систем (CSV)
Приёмка (FAT/SAT)
Риск-ориентированный подход