ТЕСТИРОВАНИЕ КОНФИГУРАЦИИ – ПОДРОБНОЕ РУКОВОДСТВО

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

Содержание

Эти технологии, которые развиваются с каждым днем, обычно состоят из комбинации аппаратных и программных систем, работающих вместе. Чтобы клиент мог использовать приложения без каких-либо проблем, нам необходимо убедиться, что различные наборы аппаратного и программного обеспечения, формирующие потребности системы, правильно сконфигурированы вместе.

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

ТЕСТИРОВАНИЕ КОНФИГУРАЦИИ – ПОДРОБНОЕ РУКОВОДСТВО

Тестирование конфигурации

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

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

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

Пример тестирования конфигурации

Давайте рассмотрим пример для Тестирование конфигурации в настольном приложении.

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

Это приложение может работать в следующих ОС:

  • Windows XP
  • Windows 7
  • Windows 8
  • Windows Vista
  • Windows 10

Может поддерживаться другими серверными платформами:

  • Windows Server 2008 R2
  • Windows Server 2008 R2,
  • Windows Server 2012R2

Его могут поддерживать следующие платформы баз данных:

  • SQL Server 2008
  • SQL Server 2008R2
  • SQL Server 2012

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

Тестирование конфигурации применимо и к аппаратному обеспечению. Мы будем использовать различные аппаратные устройства, такие как принтеры, сканеры, веб-камеры и другие устройства, которые могут помочь нам проверить тестируемое приложение.

Что произойдет, если тестирование конфигурации не будет выполнено ?

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

  • Месяцы ручной работы команды по идентификации компонентов системы изменятся, когда изменятся требования.
  • Команда не сможет выполнить внедрение в соответствии с изменениями в требованиях, и существует вероятность недопонимания между заинтересованными сторонами.
  • Возможны непредвиденные сбои из-за изменения системы, это происходит, поскольку мы не могли точно определить, какие компоненты были затронуты изменение.
  • Если мы не проводили тестирование конфигурации в программном обеспечении, это может привести к неблагоприятному результату, все настроенные элементы могут не оставаться подключенными к программному обеспечению, и программное обеспечение несет ответственность за обработку таких типов сценарии.
  • Без тестирования конфигурации также существует вероятность того, что система выйдет из строя или полностью перестанет работать, так как не будет никаких мер предосторожности для работы с системой в другой конфигурации.
  • Иногда установленное приложение может перестать работать, когда операционная система, в которой он установлен, изменила свою версию. Поэтому проверка независимости от платформы имеет решающее значение для работы приложения в любом месте.
  • Когда программное обеспечение устанавливается в распределенной системе, оно должно быть спроектировано таким образом, чтобы оно работало совместно с другими подключенными к нему узлами. Давайте рассмотрим сценарий, в котором происходит сбой узла. Наше программное обеспечение, установленное на других узлах, также может выйти из строя, поскольку возможности распределенных систем не были синхронизированы с приложением.

Цель тестирования конфигурации< /сильный>

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

  • Основная цель тестирования конфигурации — определить оптимальную конфигурацию тестируемого приложения.
  • Проверить, удовлетворяет ли приложение требованиям к настройке.
  • Выявить дефекты, которые могут не быть обнаружены. во время тестирования, вручную изменяя конфигурации, что приводит к сбою. Скажем, изменив региональные настройки системы, такие как язык, часовой пояс, форматы даты и времени и т. д.
  • Для измерения общей производительности приложения путем добавления или изменения аппаратных ресурсов, таких как балансировщики нагрузки, увеличения или уменьшения объема памяти, подключения различных моделей принтеров и т. д.
  • Чтобы изучить эффективность приложения, проверив, насколько эффективно были выполнены тесты с доступные ресурсы для достижения оптимальной конфигурации системы
  • Чтобы проверить, насколько эффективно система работает в географически распределенной среде.
  • Чтобы проанализировать воспроизводимость ошибки независимо от изменений конфигурации
  • Чтобы обеспечить прослеживаемость функций приложения к документации и обслуживанию, которые можно легко идентифицировать
  • Проверить, насколько управляемы различные функции приложения на протяжении всего SDLC (жизненный цикл разработки ПО).

Типы конфигурации Тестирование

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

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

Мы можем разделить тестирование конфигурации на два типа:

  • тестирование конфигурации программного обеспечения
  • конфигурация оборудования Тестирование

#1. Тестирование конфигурации программного обеспечения

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

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

Обычно тестирование конфигурации ПО происходит после модульного и интеграционного тестирования.

#2. Тестирование конфигурации оборудования

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

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

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

Типы тестирования конфигурации можно дополнительно разделить на:

  • Тестирование на уровне клиента
  • Тестирование на уровне сервера

#1. Тестирование на уровне клиента

Обычно тестирование на уровне клиента связано с тестированием удобства использования и функциональности. Клиентское тестирование может выполняться только с точки зрения пользователя или клиента.

#2. Тестирование на уровне сервера

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

Пример:

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

Если говорить о машине для подсчета денег, то это аппаратное обеспечение, которое может вычислять сумму, хранящуюся в машине. Они обычно используются в банках и биллинговых счетчиках. Обычно это несколько моделей, таких как Maxsell, Stok, Rolex и другие.

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

  • Здесь различными вариантами клиентской платформы могут быть операционные системы, такие как Windows 7, 8 или 10, оборудование MAC или macOS
  • Для серверных платформ перестановками будут серверная платформа Windows (серверная платформа 2016), Linux, серверная платформа (например, RedHat) и т. д.
  • Для базы данных это будет MySQL, PostgreSQL, MSSQL, База данных Oracle, доступ к Microsoft и т. д.

Предварительные условия для тестирования конфигурации

#1. Постройте матрицу покрытия

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

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

Давайте рассмотрим пример, который имеет 3 конфигурации оборудования, 3 конфигурации программного обеспечения и 3 конфигурации сервера, так что теперь у нас есть 3*3*3 = 27 комбинаций.< p>Мы можем включить другие конфигурации, такие как 5 жестких дисков и 6 конфигураций памяти, теперь наш набор составляет 27*5*6= 810 комбинаций.

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

#2. Приоритеты конфигурации настройки

После создания матрицы конфигурации наш следующий шаг – определить приоритетность этих конфигураций.

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

Таким образом, тестирование комбинации, которую клиент или пользователь, скорее всего, будет использовать, дает нам отправную точку для начала тестирования.

Как выполнить тестирование конфигурации

  • Шаг 1. На основе приоритета и матрицы конфигурации создайте план тестирования, определяющий, что и как тестировать.
  • Шаг 2. После того, как план тестирования будет готов правильный набор целей, мы можем начать определять ключевые сценарии, писать для них тестовые случаи и создавать набор тестов.
  • Шаг 3:Убедитесь, что аппаратное/программное обеспечение настроено как переменная в этих тестовых примерах.
    Например, давайте выберем браузер в качестве переменной здесь, различные конфигурации здесь будут Chrome, Firefox, Edge и т. д.
    Пример теста случай: откройте URL-адрес приложения в (переменная браузера).
  • Шаг 4. Выполните тестовые случаи для каждой настройки отдельно.
  • Шаг 5. Наблюдайте за результатами и задокументируйте результаты тестирования для каждой настройки.

Примеры тестов для тестирования конфигурации:

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

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

Тестирование совместимости и тестирование конфигурации

Тестирование совместимости

Тестирование конфигурации

Тестирование совместимости проверяет, совместимо ли программное обеспечение с различными платформами.

Конфигурация При тестировании используется различное оборудование для проверки оптимальной производительности программного обеспечения.

Совместимость фокусируется на том, работает ли приложение без проблем со всем аппаратным/программным обеспечением.

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

Он проверяет, может ли программное обеспечение быть версии одной и той же платформы операционной системы.

Здесь мы проверяем работу программного обеспечения на разных компонентах, таких как разработанная модемная связь.

Мы хотели бы проверить, может ли само программное обеспечение быть совместимым вперед или назад.

Мы проверяем условия работы программы на модемах разных производителей.

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

Проверяет работу приложения на
● разных периферийных устройствах;
● разных интерфейсах;
● разных объемах памяти.

Что такое управление конфигурацией?

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

Управление конфигурацией требует высокой степени автоматизации для достижения своих целей. .y

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

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

Управление конфигурацией применяется к различным системам, но чаще всего нам приходится иметь дело с такими:

  • Серверы
  • Базы данных и другие системы хранения данных
  • Операционные системы
  • Сеть
  • Приложения
  • Программное обеспечение

Давайте рассмотрим некоторые эффективные и популярные инструменты управления конфигурацией:

  • Ansible
  • CFEngine
  • Chef
  • Puppet
  • Salt

Преимущества использования инструментов управления конфигурацией включают:

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

Каковы передовые методы управления конфигурациями?

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

#1. Отслеживание изменений: Всякий раз, когда в требованиях происходит изменение, мы должны отслеживать его и документировать детали. Вместо фиксации одного файла мы можем использовать набор изменений. Набор изменений — это не что иное, как пакет коммитов, который может отслеживать изменения для пакетных коммитов, которые отслеживают изменения в группе файлов, структуре каталога, причинах изменений, комментариях к модульному тесту и изменениям среды в одном легком в управлении коммите.

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

#2. Раннее тестирование. Всегда тестируйте как можно раньше, чтобы выявить ошибки, которые могут повредить систему.

#3. Тестирование производительности:Команда DevOps получает информацию, проводя тестирование производительности, чтобы проверить, как последние изменения повлияли на производительность и функциональность системы.

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

Заключение

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

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

От QA genius

Adblock
detector