Автоматизация тестирования встроенных систем – грядет ли революция?

Аналитика рынка

Автоматизация тестирования встроенных систем – грядет ли революция?

Июль 3, 2018

Последние 20 лет я работаю в области программирования встроенных систем. Если задуматься, встроенные системы подобны воздуху – они повсюду вокруг нас, хотя мы их не замечаем. И хотя они составляют основу программного и аппаратного обеспечения, большинство пользователей понятия не имеет, насколько они важны. О встроенных системах вспоминают лишь тогда, когда они перестают правильно функционировать. Представьте, что ваш любимый фитнес-браслет потерял связь со смартфоном. Паника! А что если перестает работать монитор пациента, или инфузионная система, или система диализа в больнице? Уверен, вы не хотели бы оказаться в самолете со сломанной приборной панелью и уж точно не сели бы в неисправный беспилотный автомобиль.

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

Говоря о тестировании встроенного ПО, нельзя не упомянуть, что тестирование – это всего лишь инструмент более широкого процесса верификации и валидации. Если мы хотим поставить на рынок надежное и безопасное решение, мы должны принять во внимание не только сами дефекты, но и полный спектр требований к продукту. А их может быть великое множество – от требований к «железу», энергопотреблению и времени отклика до стабильности и надежности программных компонентов. В итоге нам нужно охватить все эти требования, и вы удивитесь тому, сколько незначительных дефектов мы порой тестируем и исправляем (или не исправляем, если владелец продукта решает не тратить на это время и силы).

В недавние месяцы в блоге Ауриги появилось множество статей о тестировании встроенного ПО: последние тренды, «подводные камни», новые эффективные подходы и прочее. Несмотря на то, что технологии развиваются очень быстро, автоматизация тестирования встроенного ПО все еще отстает. Конечно, на то есть многочисленные объективные причины, и Аурига знает об этом не понаслышке. Разработать набор инструментов и тестов для аппаратного обеспечения, которого нет даже в альфа-версии? Пожалуйста! Протестировать «железо», находящееся в инженерном центре заказчика на другом конце света? Без проблем! Выявить и исправить дефекты операционных систем HAL/BSP/LSP, их драйверов и самого ядра, поддерживая при этом всю экосистему с многочисленными версиями, обновлениями, новыми функциями и периферийными устройствами? Мы делаем это с середины 90-х годов.

И каждый раз мы ищем возможность автоматизировать процесс. Ручное тестирование требует времени и ресурсов, а в некоторых случаях оно практически невозможно из-за скорости работы встроенных компонентов и устройств. Месячные ставки ручных тестировщиков вроде бы не растут, но такие проекты по-прежнему обходятся дорого. Автоматизировать тестирование довольно затратно и сложно, особенно учитывая недостаток на рынке средств автоматизации тестирования встроенного и системного ПО. Однако это не значит, что ничего нельзя сделать. Опытному профессиональному провайдеру, который знает специфику бизнеса и отрасли, не составит труда разработать несколько наборов тестов, соответствующих вашим требованиям и уникальным особенностям продукта. Однажды наша команда создала целого робота для тестирования сложного медицинского оборудования отделения реанимации и интенсивной терапии. Робот физически имитировал поведение пользователя устройства, поэтому никаких дополнительных симуляций или модификаций не потребовалось, а продолжительность тестового прогона сократилась с трех недель до нескольких часов.

Не стоит забывать, что мы вошли в так называемую эру Интернета вещей, искусственного интеллекта, виртуальной реальности, машинного обучения – все вы слышали эти модные слова. Я рассматриваю искусственный интеллект как новый рубеж в тестировании встроенного ПО, но не в плане написания или выполнения тестов. Нет, я не настолько оптимистичен. И все же искусственный интеллект представляется мне потенциально очень мощным инструментом, действующим как всеобъемлющая экспертная система. Используя входные данные о встроенной системе и аппаратных компонентах, он мог бы предупредить тестировщиков о наличии «узких мест» и несоответствий и даже предложить наиболее подходящий набор тестов для обеспечения полного покрытия требований к продукту.

А пока мы ждем появления такой «умной» системы, жизнь продолжается, и единственным рабочим решением для автоматизации тестирования встроенного ПО остается поиск подходящего поставщика для вашего проекта. Как его найти? На этот вопрос я постараюсь ответить в моей следующей статье.

— Вячеслав Ванюлин, Генеральный директор, ООО «Аурига»

Похожие новости

Новости

Аурига представила модель прогнозируемого обслуживания на хакатоне Hilti

Аурига представила модель прогнозируемого обслуживания на хакатоне Hilti

Аурига, одна из ведущих компаний-разработчиков программного обеспечения на заказ, была приглашена принять участие в хакатоне компании Hilti, мирового лидера по производству высокотехнологичных инструментов и разработке программного обеспечения для

MWC Americas 2019: Эра умных технологий

Недавно в Лос-Анджелесе, штат Калифорния, состоялась крупная технологическая конференция Mobile World Congress Americas. Около 22000 участников из более чем 100 стран мира собрались, чтобы обсудить основные тенденции, формирующие отрасль беспроводных...

Аурига посетила Intel Experience Day 2019

В конце октября в Москве состоялась партнерская конференция Intel Experience Day 2019 – главное мероприятие компании Intel в России. Событие было посвящено достижениям компании Intel и ее партнеров: в демо-зоне были представлены последние аппаратные и программные продукты в сфере интернета вещей, искусственного интеллекта,...

Признанный лидер услуг по разработке ПО:
управление командами и проектами;
разработка новых продуктов, сопровождение, тестирование