Случайный разговор о сквозном тестировании
Случайный разговор о сквозном тестировании

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

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

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

Что такое сквозное тестирование?

Согласно относительно стандартному определению, сквозное тестирование (E2E) относится к методу, используемому для проверки того, работает ли весь системный процесс от начала до конца должным образом. Этот метод тестирования имитирует процесс взаимодействия пользователей с приложением в реальной среде, чтобы гарантировать правильность интеграции и взаимодействия между различными компонентами, модулями и сервисами.

Основные цели сквозного тестирования следующие:

  1. Убедитесь, что функциональность всей системы соответствует требованиям.
  2. Проверьте правильность взаимодействия между компонентами системы.
  3. Обеспечьте совместимость системы в различных средах и устройствах.
  4. Обнаружьте потенциальные узкие места производительности и проблемы безопасности.

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

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

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

Разница между E2E и традиционным тестированием

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

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

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

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

  • Тестовый полигон:Объем сквозного тестирования — вся система.,Включает все пользовательские операции и взаимодействия между системой и внешними системами.
  • Тестовая цель:Целью сквозного тестирования является проверка того, что вся система соответствует потребностям и ожиданиям пользователя.。
  • Сложность теста:Сквозное тестирование сложнее,Необходимо учитывать сложность и изменчивость системы.
  • Тестовое значение:Сквозное тестирование более ценно,Может улучшить качество системы и удовлетворенность пользователей.

Преимущества и недостатки сквозного тестирования

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

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

  1. Отдел бизнес-исследований и разработок выдвигает требования к стресс-тестированию, а группа стресс-тестирования связывается с бизнес-стороной, чтобы подтвердить, следует ли их внедрять.
  2. Бизнес-отдел предоставляет объем стресс-тестирования, интерфейсы связи, данные и подготавливает соответствующие базовые и параметризованные данные.
  3. Команда стресс-тестирования взаимодействует с администратором базы данных эксплуатации и обслуживания, подготавливает соответствующую среду стресс-тестирования и активирует межсетевые экраны и права временного доступа.
  4. Команда стресс-тестирования отлаживает сценарий, и в случае возникновения каких-либо проблем отдел исследований и разработок должен помочь их обнаружить и решить.
  5. Выполняйте стресс-тестирование, получайте данные стресс-тестирования с помощью nmon и собственных инструментов JDK, а затем экспортируйте их для построения диаграмм и проводите предварительный анализ проблем с производительностью.
  6. Общайтесь с отделами исследований и разработок, эксплуатации и обслуживания, а также с администраторами баз данных для совместного устранения проблем с позиционированием.
  7. После того, как оптимизация будет выпущена, проверьте ее еще раз (этот шаг будет длиться несколько раундов).
  8. После завершения стресс-теста результаты стресс-теста собираются, и отчет о стресс-тесте составляется вручную.

В этом случае замените тест производительности функциональным тестом.,На самом деле это та же логика. Для разработки тестовых случаев,ХотетьЗаранее разберитесь с соответствующими сквозными бизнес-процессами и моделями данных.;Для выполнения сквозных тестовых случаев,Просто нужноОбеспечьте плавность связи;В то же время такжеУлучшить охват сквозного мониторинга,а такжеОбеспечить стабильность среды выполнения тестов.(Это самый большой фактор, влияющий на результаты теста.)。

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

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

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

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

boy illustration
Учебное пособие по Jetpack Compose для начинающих, базовые элементы управления и макет
boy illustration
Код js веб-страницы, фон частицы, код спецэффектов
boy illustration
【новый! Суперподробное】Полное руководство по свойствам компонентов Figma.
boy illustration
🎉Обязательно к прочтению новичкам: полное руководство по написанию мини-программ WeChat с использованием программного обеспечения Cursor.
boy illustration
[Забавный проект Docker] VoceChat — еще одно приложение для мгновенного чата (IM)! Может быть встроен в любую веб-страницу!
boy illustration
Как реализовать переход по странице в HTML (html переходит на указанную страницу)
boy illustration
Как решить проблему зависания и низкой скорости при установке зависимостей с помощью npm. Существуют ли доступные источники npm, которые могут решить эту проблему?
boy illustration
Серия From Zero to Fun: Uni-App WeChat Payment Practice WeChat авторизует вход в систему и украшает страницу заказа, создает интерфейс заказа и инициирует запрос заказа
boy illustration
Серия uni-app: uni.navigateЧтобы передать скачок значения
boy illustration
Апплет WeChat настраивает верхнюю панель навигации и адаптируется к различным моделям.
boy illustration
JS-время конвертации
boy illustration
Обеспечьте бесперебойную работу ChromeDriver 125: советы по решению проблемы chromedriver.exe не найдены
boy illustration
Поле комментария, щелчок мышью, специальные эффекты, js-код
boy illustration
Объект массива перемещения объекта JS
boy illustration
Как открыть разрешение на позиционирование апплета WeChat_Как использовать WeChat для определения местонахождения друзей
boy illustration
Я даю вам два набора из 18 простых в использовании фонов холста Power BI, так что вам больше не придется возиться с цветами!
boy illustration
Получить текущее время в js_Как динамически отображать дату и время в js
boy illustration
Вам необходимо изучить сочетания клавиш vsCode для форматирования и организации кода, чтобы вам больше не приходилось настраивать формат вручную.
boy illustration
У ChatGPT большое обновление. Всего за 45 минут пресс-конференция показывает, что OpenAI сделал еще один шаг вперед.
boy illustration
Copilot облачной разработки — упрощение разработки
boy illustration
Микросборка xChatGPT с низким кодом, создание апплета чат-бота с искусственным интеллектом за пять шагов
boy illustration
CUDA Out of Memory: идеальное решение проблемы нехватки памяти CUDA
boy illustration
Анализ кластеризации отдельных ячеек, который должен освоить каждый&MarkerгенетическийВизуализация
boy illustration
vLLM: мощный инструмент для ускорения вывода ИИ
boy illustration
CodeGeeX: мощный инструмент генерации кода искусственного интеллекта, который можно использовать бесплатно в дополнение к второму пилоту.
boy illustration
Машинное обучение Реальный бой LightGBM + настройка параметров случайного поиска: точность 96,67%
boy illustration
Бесшовная интеграция, мгновенный интеллект [1]: платформа больших моделей Dify-LLM, интеграция без кодирования и встраивание в сторонние системы, более 42 тысяч звезд, чтобы стать свидетелями эксклюзивных интеллектуальных решений.
boy illustration
LM Studio для создания локальных больших моделей
boy illustration
Как определить количество слоев и нейронов скрытых слоев нейронной сети?
boy illustration
[Отслеживание целей] Подробное объяснение ByteTrack и детали кода