В этом В руководстве по облачному тестированию мы узнаем следующее.
Прежде чем разбираться в облачном тестировании, давайте разберемся, что такое облачные вычисления.
Что такое облачные вычисления?
Облачные вычисления — это предоставление вычислительных услуг по требованию, таких как серверы, хранилища данных, базы данных, сети, программное обеспечение и т. д., как правило, через Интернет и с оплатой по факту использования.
Эти услуги и хранилища предлагаются различными поставщиками облачных услуг. Чтобы использовать эти услуги, Компания платит облачным провайдерам, которые очень рентабельны, потому что, если компания выберет собственное серверное хранилище, базы данных, приложения и услуги, это обойдется компании в огромную сумму.
Давайте возьмем например, организация среднего размера хочет расширить свой бизнес с помощью онлайн-портала своих продуктов и услуг.
Для своего онлайн-портала им нужно место на сервере, базы данных и т. д., им приходится много вкладывать в это.
Они могли бы принять модель разработки программного обеспечения в помещении, если бы облачные вычисления не вошли в картину.
Благодаря облачным вычислениям очень легко нанять или взять в аренду пространство или хранилище. на сервере, службах, базах данных, сети или чем-то еще, что вы получаете с вашего персонального компьютера или с вашего собственного сервера.
Надеюсь, вы понимаете, что такое облачные вычисления. Давайте посмотрим, кто все ведущие поставщики облачных услуг на рынке.
Ниже приведен список ведущих поставщиков облачных услуг
- веб-сервисы Amazon
- Microsoft Cloud
- Google Cloud Platform
- IBM cloud
- VMWare
- Alibaba Cloud
< h2 id=h-cloud-computing-models>Модели облачных вычислений
Поставщики облачных компьютеров используют 2 типа моделей
- Модели службы облачных вычислений
- Облако Вычисление моделей развертывания
Как и в случае с обычными моделями разработки программного обеспечения, существует несколько моделей услуг облачных вычислений. Поставщики облачных услуг используют эти модели и предоставляют услуги различным организациям для удаленного выполнения своих вычислительных задач.
Модели представлены ниже.
На изображении ниже показана разница между IaaS (инфраструктура как услуга), >PaaS (платформа как услуга) и SaaS (программное обеспечение как услуга) по сравнению с персональными компьютерами.
Источник изображения
Общественное облако. Это облако доступно для отдельных лиц и организаций в общедоступной среде.
Частное облако: это облако доступно только для одной организации.
Гибридное облако. Это облако представляет собой смесь или гибрид двух или более облаков (частных, общедоступных или общественных).
Облако сообщества: это облако совместно используется определенными организациями для решения конкретных проблем некоторых сообществ.
Что такое облачное тестирование?
Тестирование в облаке также известно как тестирование на основе облака.
Тестирование в облаке – это подмножество тестирования программного обеспечения, в котором используются облачные инструменты для имитации реального веб-трафика для тестирования облачных веб-приложений.
Он проверяет и проверяет производительность, надежность, масштабируемость, совместимость, аварийное восстановление и безопасность веб-приложений.
В настоящее время большинство приложений разрабатываются с использованием облачных сред. У нас должна быть хорошая стратегия облачного тестирования для тестирования облачных приложений.
Что тестируется в облачной среде?
При тестировании в помещении тестирование программного обеспечения выполняется на собственном сервере, программном и аппаратном обеспечении.
В то время как в облачной среде тестирование программного обеспечения выполняется в облаке или в виртуальной среде, предоставляемой поставщиками облачных услуг.
Ниже приведены типы тестирования , которые выполняются в основном в облачной среде
< img class="aligncenter" src="/wp-content/uploads/2022/11/61b3d3d9f0863c61d27c5a9b1a18c16d.png" alt="ОБЛАЧНОЕ ТЕСТИРОВАНИЕ – ПОДРОБНОЕ РУКОВОДСТВО" />
1. Функциональное тестирование. Функциональный поток приложения тестируется в облаке, чтобы убедиться, что потребности бизнеса удовлетворены, а все основные и второстепенные функциональные аспекты приложения дают ожидаемый результат.
2. Совместимость с браузерами: чтобы убедиться, что приложение работает в нескольких браузерах и версиях браузеров в облачной среде.
3. Тестирование на совместимость с ОС: приложение тестируется на различных операционных системах, таких как Windows, Linux, Mac, Android, IOs и Windows.
4. Тестирование нагрузки и производительности:Нагрузочное тестирование становится очень важным в облачной среде, чтобы проверить, как работает приложение, когда оно работает с ожидаемым количеством пользователей, а также проверить время отклика и выявить узкие места.
5. Стресс-тестирование и объемное тестирование. Тестирование проводится при больших нагрузках и больших объемах данных, чтобы определить, как работает приложение при большем количестве пользователей, чем ожидалось. В случае сбоя приложения можно принять соответствующие меры.
6. Тестирование безопасности:Чтобы проверить безопасность облачного приложения, тестировщики проводят тестирование авторизации и аутентификации, тестирование API, тестирование базы данных, тестирование доступа к сети, тестирование на соответствие и т. д.
Ниже приведены этапы тестирования в облачной среде
Мы видим множество облачных тестов на рынке в связи с растущей популярностью облачного тестирования.
Вот некоторые из чрезвычайно популярных облачных инструментов тестирования программного обеспечения.
Облачные инструменты тестирования
Ниже приведены несколько широко используемых инструментов.
- SOASTA CloudTest
- LoadStorm
- BlazeMeter
- Nessus
- App Thwack
- Jenkins Dev@Cloud
- Тестовое облако Xamarin
- JMeter
- AppPerfect
Это инструменты, которые используются для тестирования производительности веб-приложений или мобильных приложений, а также для функционального тестирования. Большинство этих инструментов предоставляют функции записи и воспроизведения для записи сценариев тестирования производительности, а также выделения узких мест производительности в отчетах.
Существуют также некоторые инструменты тестирования безопасности
- Wireshark
- Nessus
- Nmap
Проблемы в облачной среде
Проблемы безопасности:Компании размещают свои данные в облачной среде. Облачная среда принадлежит третьей стороне. Это больше всего беспокоит компании, поскольку может привести к утечке конфиденциальных данных, вирусным атакам и краже логики приложений. Это может произойти из-за того, что поставщики облачных услуг могут не знать об отраслевых стандартах безопасности.
Проблемы работы с различными облачными моделями. Из-за конкурирующих технологий и требований в настоящее время организации внедряют несколько облачных моделей от разных поставщиков. Поддерживать безопасность, синхронизацию, скорость, доступность приложений и масштабируемость становится сложно, потому что теперь программное обеспечение не размещается в одном облаке.
Недостаток опыта в инструментах облачного тестирования:Несмотря на то, что облачные вычисления приобрели такую большую популярность и растут как гигант, все же трудно найти полные ресурсы или экспертов. Из-за этого становится сложно использовать инструменты облачного тестирования.
Проблемы с бюджетом:Иногда организации не знают о скрытых затратах или не могут предсказать использование облачной среды и услуг, пока поставщики облачных услуг не придумают неожиданные элементы затрат, которые могут нарушить общий бюджет бизнеса. Это становится очень сложной задачей для организаций, которые только начинают использовать облачные вычисления.
Проблемы, связанные с соблюдением нормативных требований. Каждый поставщик облачных услуг старается предоставлять своим клиентам более качественные и улучшенные услуги по сравнению с конкурентами. Чтобы обеспечить лучшую безопасность и точность своей вычислительной среды, они выбирают регулирующие соответствия, и если какая-либо организация использует их облако, организация также должна следовать этим регулирующим соответствиям. Иногда это становится проблемой для некоторых организаций.
Проблемы, связанные с производительностью. Из-за простоя серверов многие компании теряют прибыль, и основная проблема заключается в том, что организации не могут ничего улучшить, пока не сменят поставщика облачных услуг. Эта проблема привела к большому провалу многих предприятий, и это действительно большая проблема для организаций, чей бизнес полностью связан с Интернетом.
Навыки, необходимые тестировщику Cloud
Чтобы быть облачным тестировщиком, необходимы некоторые базовые навыки тестирования, а также некоторые навыки, связанные с облачными вычислениями. Ниже перечислены навыки
Базовые навыки
- Основы тестирования
- Управление тестированием — тестовые примеры, ошибки отчет, жизненный цикл ошибки
- Функциональное тестирование
- Тестирование операционных систем и кросс-браузерной совместимости
Навыки облачных вычислений
- DevOps и Agile-методологии.
- Инструменты автоматизации для облачной среды
- Тестирование производительности
- Тестирование безопасности
- Тестирование доступности
- Тестирование аварийного восстановления
- Тестирование масштабируемости
< strong>Преимущества облачного тестирования
Доступность
В настоящее время команды находятся в разных местах по всему миру, и благодаря облачным вычислениям команде тестирования и всей команде очень легко получить доступ к приложению из любого места. Он доступен круглосуточно и без выходных.
Экономичное автоматизированное тестирование
Когда любая компания переходит на облачные вычисления, получает инструменты и среду по гораздо более низкой цене, чем лицензированные инструменты компании. При традиционном тестировании компания должна купить инструмент или купить лицензию для каждого пользователя. В то время как в облачной среде им нужно платить, когда «инструмент используется».
Командная работа
Любой тестировщик из любой точки мира может протестировать приложение в любое время, и работа команды будет синхронизирована, а результаты будут достигнуты быстрее. В результате это помогает руководству сдать проект вовремя и быстро.
Инструменты и ИТ-услуги просты использовать
В облачной среде группе тестирования не нужно беспокоиться о проблемах с установкой или настройкой. Все эти услуги предоставляются поставщиками облачных услуг, и все включено в их услуги. Тестировщики должны создать тикет или запрос, чтобы установить требуемый инструмент, и запрос будет выполнен в течение достаточного периода времени. Легко сотрудничать с командой разработчиков
Благодаря непрерывной интеграции очень легко сотрудничать с командой разработчиков.
Группа тестирования тестирует приложение сразу же после развертывания кода командой разработчиков. Повторное развертывание и повторное тестирование выполняются без каких-либо задержек, как только тестировщики выявляют какие-либо проблемы.
Благодаря более быстрому выполнению каждый этап проходит очень гладко, и общий выпуск продукции становится быстрее.
Качество достигается
Благодаря более быстрому выполнению и развертыванию команда тестирования получает дополнительное время для тестирования скрытых сценариев, а проведение нескольких раундов регрессионного тестирования приводит к лучшему покрытию тестами. Они могут найти более реалистичные сценарии и провести сквозное тестирование из-за достаточного количества времени. За счет этого достигается общее качество приложения
Тестирование в нескольких средах
Благодаря облачным вычислениям можно протестировать приложение в различных операционных системах, различных браузерах, различных аппаратных устройствах и с разной пропускной способностью сети. Команде тестирования очень легко определить реальные сценарии тестирования производительности. Они могут выполнять нагрузочное, объемное и стресс-тестирование, добавляя тысячи виртуальных пользователей.
Поддерживает гибкую разработку
A облачная среда поддерживает гибкую разработку, при которой вся команда (разработчики и тестировщики) участвует в процессе разработки. Облачная среда позволяет использовать все методы гибкой разработки и их преимущества.
Облачное тестирование и традиционное тестирование< /h2>
Облачное тестирование | Традиционное тестирование | |
---|---|---|
Поддерживает гибкую методологию, поскольку непрерывная интеграция очень проста в облачных вычислениях. | Agile поддерживается, но дальнейшая интеграция полностью зависит от доступности среды и совместной работы команды. | |
Автоматизация проста, а установка инструментов выполняется очень быстро. Это делается службой ИТ-поддержки, предоставляемой поставщиками облачных услуг. | Автоматизация зависит от наличия инструментов и настройки установки, которая выполняется самой группой тестирования. | |
Тестирование безопасности очень важно, и навыки инженера по тестированию играют важную роль, когда важные данные приложения находятся в облаке, есть вероятность утечки данных или взлома. | При локальном или традиционном тестировании, когда приложение обычно развертывается на собственном сервере, безопасность не является серьезной проблемой. в облаке возможен сценарий тестирования в реальном мире. | Тестирование производительности выполняется с использованием любого инструмента, и для создания виртуальных пользователей не требуется лицензия. |
Тестирование совместимости с использованием разных компьютеров, операционных систем, браузеров или различных мобильных симуляторов выполняется легко. | Тестирование совместимости ограничено доступными ресурсами, и обычно этот тип тестирования пропускается, если клиент специально не запрашивает его. | |
Облачное тестирование считается полным охватом функциональных и нефункциональных сценариев тестирования с легкостью, большей масштабируемостью и быстрыми результатами. Он сопровождается углубленным тестированием, в ходе которого фиксируются и тестируются сценарии реального мира. | Тестирование в помещении больше ориентировано на функциональное тестирование, а нефункциональное тестирование выполняется только тогда, когда оно явно упоминается клиентом или обычно игнорируется, или рассматриваются только сценарии тестирования более высокого уровня. | |
Тестирование в облачной среде экономически выгодно, поскольку в нем используется модель с оплатой по факту использования. | Тестирование в помещении обходится дорого, поскольку для каждого инструмента компания должна приобретать лицензию , и какое-то время инструмент используется не полностью. |
Как проводить облачное тестирование
Как и при традиционном тестировании, для облачного тестирования разрабатываются тестовые наборы и тестовые сценарии.
Ниже приведены этапы тестирования, которые выполняются
1. Планирование тестирования и сценарии тестирования подготавливаются
Пользовательские сценарии высокого уровня создаются с учетом бизнес-цели.
2. Разработка тестовых случаев
Тестовые случаи готовятся на основе пользовательских сценариев, в которых указаны шаги и ожидаемые результаты.
3. Выбор поставщика облачных услуг
Выбирается поставщик облачных услуг в соответствии с потребностями и возможностями.
4. Настройка инфраструктуры
Команда настраивает всю среду тестирования и инфраструктуру для тестирования.
5. Использование облачных серверов
Создаются виртуальные пользователи и используются все службы, предоставляемые поставщиками облачных услуг.
6. Начать тестирование
Проводится тестирование приложения, выполняются всевозможные тестовые случаи, такие как Функциональность, Производительность, Безопасность. Проблемы регистрируются, исправляются и тестируются повторно.
7. Мониторинг целей тестирования
Выполняется несколько раундов тестирования, осуществляется мониторинг, и если цели тестирования достигнуты, тестирование прекращается.
8. Предоставление результатов
Доставка результатов тестирования и завершение облачного тестирования.
Типы облачного тестирования
Общее облачное тестирование, проведенное по следующим типам тестирования.
- Тестирование конкретного приложения (функциональное и нефункциональное)
- Тестирование сети ( Тестирование скорости и пропускной способности)
- Тестирование восстановления (аварийное восстановление, резервное копирование, тестирование хранилища и соответствия инфраструктуры)
Ниже приведены некоторые другие типы тестирования, которые очень важны в облачная среда.
Доступность
- Приложение должно быть доступно всем конечным пользователям в течение запланированного периода времени
Безопасность
- Проверка авторизации и аутентификации
- Конфиденциальность
- Целостность
- Неотказуемость
Тестирование производительности и масштабируемости
- Тестирование при нормальной пользовательской нагрузке
- Тестирование при высокой пользовательской нагрузке
- Объемное тестирование
- Стресс-тестирование< ли>Проверяйте производительность приложения при увеличении или уменьшении масштаба ресурсов. Ресурсами могут быть ЦП, жесткие диски, сетевые протоколы, серверы баз данных и т. д.
Тестирование на соответствие облачным требованиям
- < ли>Соответствие облачным технологиям означает правила и нормы, которые должен соблюдать каждый поставщик облачных услуг. Например, в сфере здравоохранения необходимо соблюдать набор правил «HIPAA», в нем есть строгие правила и протоколы безопасности, которым должен следовать каждый поставщик облачных услуг в сфере здравоохранения. Точно так же в разных отраслях используются разные протоколы безопасности, которым должны следовать поставщики облачных услуг и которые должны быть представлены в их документах о соответствии.
Многопользовательское тестирование
- Мультиарендность — важная особенность облачных вычислений. Это означает, что в облачной среде несколько клиентов используют одни ресурсы, не зная друг друга, а их данные хранятся отдельно друг от друга. Здесь тестирование безопасности данных является обязательным, чтобы проверить только релевантные данные или авторизованный пользователь может получить доступ к данным, и данные полностью защищены, если несколько арендаторов используют ресурсы.
В заключение
В современном сценарии облачные вычисления пользуются большим спросом из-за различных преимуществ, которые они предоставляют, таких как масштабируемость, гибкость и экономичность. Тем не менее, эта технология является новой и недостаточно используется некоторыми организациями из-за проблем, связанных с этим.
Тем не менее, организации учатся и переходят к среде облачных вычислений, и это будущее. Для инженера-испытателя это отличный способ узнать что-то новое и заработать наравне с разработчиками.
TAG: qa