Как вы можете эффективно и результативно тестировать свое программное обеспечение?

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

Смотрите его выступление на нашем сайте и YouTube-канале.

Проблемы в тестировании программного обеспечения

Тестирование программного обеспечения, как объяснил Дэвид, — это процесс, который используется для подтверждения того, что высококачественное программное обеспечение готово к выпуску.

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

Тем не менее, автоматизация тестирования программного обеспечения, которую автоматизировали роботы, и они предположительно были быстрыми, столкнулась с другой проблемой, потому что роботы плохо адаптировались к изменениям. Исследование Google показало, что только 1,21% неудачных тестов были связаны с обнаружением дефектов, в то время как большинство из них были ненадежными тестами, т. е. тестами, которые не могут обучаться и адаптироваться.

Проблема, с которой мы остались, заключалась в том, что многие из этих тестов, автоматические роботизированные проверки которых были статичными и не обучались.

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

3 рекомендации для лучшего проекта

У Дэвида Колвелла есть три предложения для любой компании, которая хочет разработать и протестировать собственное программное обеспечение:

Будьте осторожны с тем, что вы исследуете

Первым советом Дэвида было быть осторожным с тем, что вы исследуете.

Поскольку исследование с нуля занимает невероятно много времени, если вы можете найти решение, которое есть на рынке, то гораздо лучше купить это решение, интегрировать его и посмотреть, получите ли вы от него пользу на раннем этапе.

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

Выбрать другие данные

Говоря об опыте работы в Tricentis, Дэвид поделился мнением его команды о том, что, увеличив размер пула данных, они значительно повысят точность своих моделей машинного обучения. Они добавляли в стек больше похожих типов данных, но это не увеличивало разнообразие этого стека.

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

Настойчивость окупается в машинном обучении

Как отметил Дэвид, настойчивость, несмотря на трудности, окупается в машинном обучении так, как она не окупается во многих других начинаниях с программным обеспечением.

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

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

Чтобы еще раз посмотреть весь его основной доклад, посетите наш сайт и канал YouTube.

Подпишитесь на нас в LinkedIn, Twitter, Facebook и YouTube, чтобы получать ежедневные отраслевые обновления!