Являются ли дни облачных тестирования платформ?

Кубешоп спонсировал этот пост. Insight Partners является инвестором в Kubeshop и TNS.

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

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

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

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

Ответ зависит от того, какую проблему вы решаете: тестирование мобильных приложений? Определенно. Интернет-тестирование в веб-приложении? Может быть. Средний к эндоуровне (E2E), API, нагрузочный тестирование? Наверное, нет.

Краткая история автоматизации тестов
Первые дни: ручное тестирование и проприетарные инструменты (1970 -х — 1990 -е годы)

автоматизация тестов началась как расширение усилий по ручным тестированию. Ранние инструменты были специфичными для поставщика и требуемые запатентованные сценарии.

  • IBM’s PL/I Тестовая система (1970 -е годы) — Один из первых инструментов автоматического модуля и интеграционного тестирования.
  • SQA Tools (1970–1980 -е годы) — Ранние регрессии и приспособление тестирования.
  • Рациональный робот (1980 -е) — Среди первых инструментов функционального тестирования для корпоративных сред.
  • TestComplete (1980 -е) -включена автоматизация тестов на основе графического интерфейса на нескольких языках.
  • Winrunner (1990 -е годы) — Первоначальная автоматизация тестирования графического интерфейса с помощью языка сценариев, TSL.
  • Silktest (1990 -е годы) — Нацелен на веб -приложения и тестирование графического интерфейса.
  • LoadRunner (1990 -е годы) — Сфокусировано на тестировании производительности и загрузки для веб -приложений.

Рост открытого исходного кода и веб -тестирования (2000 -х — 2020 -е годы)

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

  • Junit (2000 -е) — Революционизировал единичные испытания на Java.
  • Testng, NUNIT (2000 -е годы) — Укрепление экосистемы тестирования Java и .net.
  • Облачное тестирование появляется (2010-е годы) -Платформы, такие как Sauce Labs и BrowserStack, упростили меж-браузеры.
  • API, E2E и нагрузочный тестирование роста — Инструменты, такие как почтальон, селен и Jmeter, приобретают тягу.

Интеллектуальная эра автоматизации (2020 -е годы — присутствует)

Благодаря облачной инфраструктуре и Kubernetes современную автоматизацию тестирования более сложная и более разнородная:

  • Инструменты смены левых тестирования -Cypress, Playwright, K6 и т. Д., Предоставьте подходы, ориентированные на код, к E2E и нагрузочному тестированию.
  • Облачное и локальное гибридное тестирование -Организации интегрируют лучшие в своем роде инструменты.
  • У вас есть в тестировании — машинное обучение помогает генерировать, поддерживать и адаптировать тесты.
  • Kubernetes для выполнения тестирования — Предприятия используют контейнерные условия выполнения тестирования для масштабируемости.

На аутсорсинг или не на аутсорсинг?

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

Для веб -приложений такие платформы, как Sauce Labs и Browserstack, традиционно предоставляют параллельное выполнение для ускорения тестирования. Тем не менее, в облачном родном мире необходимость в сторонней тестовой инфраструктуре уменьшается. Организации перемещаются в сторону тестовой оркестровки на питании Kubernetes, используя такие решения, как Testkube, не полагаясь на поставщиков внешних тестирования. Этот подход не только оптимизирует затраты, но и повышает надежность тестирования и отладку, сохраняя все в собственной среде разработчика и в помещениях.

Что изменилось? Три больших вещах 1. Веб -браузеры стали более стандартизированными

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

Тем не менее, с принятием веб -стандартов и эволюцией современных двигателей браузера, таких как Blink Chrome, геккону Mozilla в Firefox и Apple Webkit, эти проблемы значительно уменьшились.

В результате проблемы с поперечным браузером становятся все более редкими. Широко распространенная реализация стандартизированных технологий, таких как HTML5, CSS3 и Modern JavaScript API, помогла оптимизировать процессы разработки. Особенности и функции теперь ведут себя более последовательно в разных браузерах, снижая необходимость в обширном тестировании совместимости и сложных обходных путях.

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

2. Монолитные процессы CI/CD растворяются

Сдвиг к облачным архитектурам приложений, основанных на сильно распределенных и часто слабо связанных компонентах, медленно растворяет устаревший способ доставки программного обеспечения Legacy «одиночный трубопровод; Прошли дни одного инструмента CI/CD (например, Дженкинс или Действия GitHub), который регулярно создает и развертывает ваше приложение. Вместо этого современные команды инженеров платформы переходят на управляемые событиями и одинаково распределенные сборки и развертывание трубопроводов, часто подпитываемых Gitops, чтобы максимизировать доставку их приложений.

Платформы для тестирования облачных тестировки плохо выровняются с этим изменением в доставке программного обеспечения. Вместо того, чтобы быть обработанным отдельным (и облачным) программным решением, автоматизированное выполнение тестирования теперь должно быть глубоко встроено в трубопроводы по сборке Как и определения пользовательских ресурсов Kubernetes (CRD) для совместимости GITOPS и непрерывных событий доставки (CDEVENTS) для асинхронной сборки и развертывания трубопроводы.

3. Kubernetes имеет потенциал для инфраструктуры тестирования питания

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

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

  • Масштабируемость и баланс нагрузки
  • Высокая доступность и устойчивость к разлому
  • Эффективное использование ресурсов
  • Упрощенное развертывание и автоматизация
  • Безопасность и изоляция

Почему бы не применить их для тестирования автоматизации?

  • Бегать автоматизация тестирования внутри кластера в качестве рабочих мест Kubernetes. Храните тесты в качестве CRD для совместимости GITOPS. Это создаст сопоставления тестов с конкретными кластерами — DEV, постановкой, PROD или конкретными командами, которые могут иметь свои собственные пространства имен внутри кластера.
  • Определять и организовать различные виды тестов вместе, будь то почтальон, драматург, или Cupress или K6, теперь это просто «рабочие места».
  • Курок Ваши тесты не только после сборки CI/CD или с действием GitHub, но также по расписанию, или вне событий Kubernetes или любого другого внешнего события.
  • Назначать Тесты для запуска на параллельных узлах Kubernetes для более быстрого выполнения и раскрутите эти ресурсы, когда это сделано.
  • Собирать Результаты и артефакты всех типов тестов, которые были проведены в одном месте для более быстрой отладки и лучшей прозрачности между командами и отчетами управления.

Вердикт: Должны ли вы на аутсорсинге тестирования?

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

Современным командам программного обеспечения больше не нужно выбирать между сторонними решениями и высокопоставленными внутренними рамками. Те же принципы, которые преобразовали развертывание приложений-масштабируемость, автоматизация и инфраструктура самовосстановления-теперь могут применяться к тестированию. Kubernetes — это не просто время выполнения для приложений; Это мощный двигатель для автоматизации тестирования.

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

Такие решения, как TestKube, позволяют этому переходу, предоставляя основу, в которой тесты выполняются в качестве заданий Kubernetes, легко интегрированные с существующими трубопроводами, облачным нативным путем. Это больше, чем просто изменение инструмента; Это фундаментальный сдвиг в том, как команды думают о выполнении теста.

Мы являемся командой опытных технологов, создающих инструменты разработки и тестирования, которые помогают командам создавать облачные приложения для нативных приложений проще, лучше, быстрее. При поддержке наиболее успешных инвесторов в индустрии программного обеспечения, которые видят Kubernetes как основу для создания программного обеспечения завтрашнего дня. Insight Partners является инвестором в Kubeshop и TNS. Узнайте больше последних из Kubeshop Trending Stories youtube.com/thenewstack Tech движется быстро, не пропустите эпизод. Подпишитесь на наш канал YouTube, чтобы транслировать все наши подкасты, интервью, демонстрации и многое другое. Группа подпишитесь с эскизом. Дмитрий Фонарев является генеральным директором Testkube, возглавляя видение компании, чтобы пересмотреть автоматизацию тестов в родном мире Kubernetes. Dmitry имеет более чем 20-летний опыт создания продуктов и программных команд в стартапах, поддерживаемых предприятием и частными компаниями. Он … читал больше от Дмитрия Фонарева

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *