Практика применения |Практика применения инструментов автоматического тестирования
Практика применения |Практика применения инструментов автоматического тестирования

введение

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

Автоматизированное тестирование

Узнал здесьАвтоматизированное тестированиедляАвтоматизация тестирования программного обеспечения,Автоматизированное Обучение — это процесс преобразования поведения тестирования, управляемого человеком, в машинное выполнение. Обычно после разработки и проверки тестового примера тестировщик выполняет тест шаг за шагом в соответствии с процедурами, описанными в тестовом примере, чтобы сравнить фактические результаты с ожидаемыми. В этом процессе, чтобы сэкономить трудовые, временные и аппаратные ресурсы и повысить эффективность тестирования, было внедрено Автоматизированное. тестированиеконцепция。(Примечание:Этот текст взят изЭнциклопедия Байду

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

Автоматизированное тестирование Классификация

Автоматизированное тестирование в информационных системах ИТ можно классифицировать следующим образом:

  • Модульное тестирование

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

  • Интеграционное тестирование

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

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

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

  • Тестирование производительности и контроль качества

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

  • Тестирование безопасности

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

  • Тестирование удобства использования и надежности

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

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

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

  • Тестирование графического пользовательского интерфейса

Тестирование графического пользовательского Интерфейс также называют тестированием графического интерфейса. Основными объектами тестирования графического интерфейса являются графические объекты (включая элементы управления) и коллекции свойств объектов. Эти объекты включают, помимо прочего, такие компоненты, как окна, меню, кнопки, текстовые поля, значки, метки и т. д., которые описаны в разделе «Автоматизированное». Очень сложно в обучении.

Автоматизированное тестированиеинструмент

Инструмент «Автоматизированное тестирование» способен моделировать поведение пользователя.,Автоматически выполнять тестовые случаи,и сообщить результаты испытаний,Это значительно повышает эффективность и качество тестирования.

1 Selenium

Selenium — это автоматизированное средство для тестирования веб-приложений. Платформа обучения поддерживает несколько языков программирования, таких как Java, Python и т. д. Тесты можно запускать прямо в браузере для имитации реальных действий пользователя. Поддерживает несколько браузеров и операционных систем для упрощения кроссплатформенного тестирования. Предоставляет богатые функции тестирования, включая Тестирование. совместимости、Функциональное тестирование системы и т. д. Selenium поддерживает множество языков, включая C#.、Java、Perl、PHP、Python、Ruby、JavaScript、C++。

【Официальный сайт】www.selenium.dev

2 Appium

Appium — мобильный терминал Автоматизированное Инструмент с открытым исходным кодом, кроссплатформенная поддержка, мобильная платформа поддерживает платформы iOS и Android; браузер поддерживает Chrome, Firefox, Safari, платформа для настольных компьютеров поддерживает macOS, Windows, а также платформу TV, Roku, tvOS, Android; Телевизор Самсунг. Один и тот же тестовый сценарий можно запускать в разных операционных системах. Appium предоставляет богатый интерфейс API для облегчения написания и выполнения тестовых сценариев, а также тестирования мобильных приложений. Appium как кроссплатформенность Автоматизированное инструмент обучения, поддерживающий несколько языков программирования для Написания тестовых сценариев,Java、Python、PHP、Ruby、JavaScript(Node.js)、Objective-C、C#(.NET)。

【Официальный сайт】http://appium.io/

【Github】https://github.com/appium/appium

3 LoadRunner

LoadRunner — это инструмент нагрузочного тестирования, который прогнозирует поведение и производительность системы. Он подходит для тестирования веб-приложений и корпоративных приложений. Это инструмент тестирования производительности корпоративного уровня, разработанный Micro Focus. Он поддерживает широкий спектр протоколов и технологий, включая веб-приложения, базы данных, ERP-системы, мобильные приложения и многое другое. LoadRunner предоставляет множество тестовых сценариев и функций, поддерживает запись и воспроизведение, редактирование сценариев и проектирование сцен. Он может моделировать большое количество одновременных пользователей для тестирования (платная версия более удобна), быстро обнаруживать узкие места в производительности и предоставлять подробную информацию. отчеты о тестировании и инструменты анализа, помогающие проводить тестирование. Персонал имеет глубокое понимание результатов тестирования. LoadRunner подходит для крупных и сложных сценариев тестирования производительности, требующих высокой аппаратной и технической поддержки. Однако LoadRunner является коммерческой версией программного обеспечения и требует некоторых советов при ее использовании.

【Официальный сайт】https://www.opentext.com/zh-cn/products/loadrunner-professional

4 JMeter

JMeter — это бесплатный инструмент тестирования производительности с открытым исходным кодом, разработанный организацией Apache. Он в основном используется для тестирования производительности и нагрузочной способности веб-приложений и веб-сервисов. . Первоначально он был разработан для функционального тестирования веб-приложений, но сейчас широко используется для тестирования производительности. Пользователи могут использовать и изменять исходный код бесплатно, и он может работать в различных операционных системах и аппаратных средах. Последняя версия — JMeter 5.6.3. JMeter поддерживает несколько протоколов: включая HTTP, FTP, JDBC, SOAP и т. д., для удовлетворения потребностей в тестировании различных типов приложений. JMeter богат функциями и поддерживает различные сценарии тестирования, такие как нагрузочное тестирование, стресс-тестирование и функциональное тестирование.

【Официальный сайт】https://jmeter.apache.org/

【Github】https://github.com/apache/jmeter

5 Postman

Postman — мощный инструмент тестирования API,Используется для отладки и тестирования HTTP-запросов. Поддерживает отправку различных типов HTTP-запросов.,Включая GET, POST, PUT, DELETE и т. д. Предоставляет функции импорта и экспорта тестовых данных и данных конфигурации среды. Мощные возможности совместной работы в команде,может создатьTeamLibraryДля совместного командного тестирования。существовать Автоматизированное Тестирование — это опытный вспомогательный инструмент тестирования. Postman позволяет писать сценарии JavaScript в теге «Тесты» запроса для проверки результатов ответа. С помощью тестовых сценариев можно реализовать такие функции, как утверждения и ведение журнала. Но по моему личному мнению, Почтальон лучше в Автоматизированном. обучение не так практично, как предыдущее программное обеспечение.

【Официальный сайт】https://www.postman.com/

6 Robot Framework

Robot Framework — это программное обеспечение, разработанное Nokia. Siemens Автоматизированное, разработанное и предоставленное Networks и написанное на Python. обучающий кадр. Поскольку я меньше знаком с разработкой на Python, я меньше использую это программное обеспечение в процессе разработки. Робот Framework — это масштабируемое многоклиентское программное обеспечение с открытым исходным кодом, которое поддерживает тестирование распределенной среды. Его основные поддерживаемые функции включают в себя: мониторинг событий выполнения тестов, интерфейс командной строки и вывод XML, богатую библиотеку тестов, несколько форматов написания вариантов использования и автоматическое создание отчетов и журналов испытаний. Робот Фреймворк в основном используется для приемочного тестирования и разработки через приемочное тестирование (ATDD) с множеством раундов. Во время тестирования глобализации вы можете использовать эту платформу для написания некоторых задач сценариев, таких как запланированные ежедневные загрузки. создавать, сотрудничать с Selenium для создания автоматических снимков экрана и т. д. Кроме того, робот Framework также поддерживает тестирование на основе ключевых слов и данных, что позволяет пользователям гибко настраивать тестирование в соответствии с потребностями тестирования.

【Официальный сайт】https://robotframework.org/

【Github】https://github.com/robotframework/robotframework

Практика применения

Для удобства демонстрации в качестве инструмента тестирования используется одно из программ «Автоматизированное тестирование» (JMeter).

1 Подготовка среды

Шаг 1、Загрузите и установите:отApache Загрузите последнюю версию JMeter с официального сайта JMeter (на моем компьютере уже установлена ​​версия ниже v5.1). Следуйте руководству по установке, чтобы установить и настроить переменные среды.

Шаг 2、Обеспечение инструментов разработки、Файл библиотеки готов.,Подготовьте тестовый сценарий,Эти сценарии можно написать вручную.,Его также можно создать с помощью системы записи (рекомендуемый метод).

Шаг 3、КонфигурацияJMeterдля подключения к тестовой среде,Включая настройку прокси-сервера, сертификата браузера и т. д. Создать параметры HTTP-запроса по умолчанию,для повторного использования в тестовых сценариях.

Каталог после завершения установки выглядит следующим образом:

Язык кода:javascript
копировать
Aion@Macbook apache-jmeter-5.1 $ tree -m 1
/Aion/install/apache-jmeter-5.1 (169.06MB)
├── .DS_Store (1KB)
├── printable_docs (3.79MB)
├── LICENSE (14.59KB)
├── bin (74.98MB)
├── licenses (217.93KB)
├── docs (40.83MB)
├── NOTICE (172b)
├── README.md (9.96KB)
├── lib (49.09MB)
├── backups (6KB)
├── testfile (1KB)
└── extras (109.9KB)

2 Написание тестовых сценариев

Шаг 1、Создать план тестирования,Создайте новый план тестирования в JMeter. Добавить группу тем,Используется для имитации одновременно работающих пользователей.

Шаг 2、Записать тестовый сценарий,Установить прокси браузера,Укажите на HTTP-прокси-сервер JMeter. Выполните действие, которое хотите протестировать, в своем браузере.,JMeter запишет эти операции в виде тестового сценария.

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

3 Настройка и выполнение тестов

Шаг 1、Добавьте прослушиватели для наблюдения за процессом выполнения теста, например для просмотра дерева результатов.、Агрегированные отчеты и т. д. Для помощи Анализируйте результаты испытанийи выявить потенциальныесуществоватьвопрос。

Шаг 2、использоватьCSV Data Set Инструменты параметризации, такие как Config, могут использовать в тестах различные комбинации данных для имитации реального поведения пользователя и улучшения покрытия тестами. .

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

4 Анализ и оптимизация

Когда выполнение завершает тест,Анализируйте результаты испытаний,Просмотр результатов вывода прослушивателя, таких как сводные отчеты.,Анализируйте скорость прохождения тестов, время ответа и другие показатели. Выявление неудачных тестовых случаев,и просмотреть подробную информацию об ошибках для отладки. Оптимизировать тестовый скрипт,Оптимизация тестовых сценариев на основе результатов анализа,Например, настройка условий утверждения, оптимизация стратегий параметризации и т. д. Повторите тест,до тех пор, пока не будут достигнуты желаемые результаты испытаний. Непрерывная интеграция и автоматизация,Интегрируйте тесты JMeter в свой конвейер CI/CD.,Реализовать Автоматизированное обновление. Настройте задания с помощью таких инструментов, как Jenkins.,Регулярно проводите тесты и создавайте отчеты.

Подвести итог

В этой статье в основном говорится о тестировании, Автоматизированном Новости, из практики IT-информационных систем Подвести Автоматизированное в итоговой тестовой сессии тестирование,а также Автоматизированное Классификация, инструменты тестирования и практические шаги JMeter.

boy illustration
Неразрушающее увеличение изображений одним щелчком мыши, чтобы сделать их более четкими артефактами искусственного интеллекта, включая руководства по установке и использованию.
boy illustration
Копикодер: этот инструмент отлично работает с Cursor, Bolt и V0! Предоставьте более качественные подсказки для разработки интерфейса (создание навигационного веб-сайта с использованием искусственного интеллекта).
boy illustration
Новый бесплатный RooCline превосходит Cline v3.1? ! Быстрее, умнее и лучше вилка Cline! (Независимое программирование AI, порог 0)
boy illustration
Разработав более 10 проектов с помощью Cursor, я собрал 10 примеров и 60 подсказок.
boy illustration
Я потратил 72 часа на изучение курсорных агентов, и вот неоспоримые факты, которыми я должен поделиться!
boy illustration
Идеальная интеграция Cursor и DeepSeek API
boy illustration
DeepSeek V3 снижает затраты на обучение больших моделей
boy illustration
Артефакт, увеличивающий количество очков: на основе улучшения характеристик препятствия малым целям Yolov8 (SEAM, MultiSEAM).
boy illustration
DeepSeek V3 раскручивался уже три дня. Сегодня я попробовал самопровозглашенную модель «ChatGPT».
boy illustration
Open Devin — инженер-программист искусственного интеллекта с открытым исходным кодом, который меньше программирует и больше создает.
boy illustration
Эксклюзивное оригинальное улучшение YOLOv8: собственная разработка SPPF | SPPF сочетается с воспринимаемой большой сверткой ядра UniRepLK, а свертка с большим ядром + без расширения улучшает восприимчивое поле
boy illustration
Популярное и подробное объяснение DeepSeek-V3: от его появления до преимуществ и сравнения с GPT-4o.
boy illustration
9 основных словесных инструкций по доработке академических работ с помощью ChatGPT, эффективных и практичных, которые стоит собрать
boy illustration
Вызовите deepseek в vscode для реализации программирования с помощью искусственного интеллекта.
boy illustration
Познакомьтесь с принципами сверточных нейронных сетей (CNN) в одной статье (суперподробно)
boy illustration
50,3 тыс. звезд! Immich: автономное решение для резервного копирования фотографий и видео, которое экономит деньги и избавляет от беспокойства.
boy illustration
Cloud Native|Практика: установка Dashbaord для K8s, графика неплохая
boy illustration
Краткий обзор статьи — использование синтетических данных при обучении больших моделей и оптимизации производительности
boy illustration
MiniPerplx: новая поисковая система искусственного интеллекта с открытым исходным кодом, спонсируемая xAI и Vercel.
boy illustration
Конструкция сервиса Synology Drive сочетает проникновение в интрасеть и синхронизацию папок заметок Obsidian в облаке.
boy illustration
Центр конфигурации————Накос
boy illustration
Начинаем с нуля при разработке в облаке Copilot: начать разработку с минимальным использованием кода стало проще
boy illustration
[Серия Docker] Docker создает мультиплатформенные образы: практика архитектуры Arm64
boy illustration
Обновление новых возможностей coze | Я использовал coze для создания апплета помощника по исправлению домашних заданий по математике
boy illustration
Советы по развертыванию Nginx: практическое создание статических веб-сайтов на облачных серверах
boy illustration
Feiniu fnos использует Docker для развертывания личного блокнота Notepad
boy illustration
Сверточная нейронная сеть VGG реализует классификацию изображений Cifar10 — практический опыт Pytorch
boy illustration
Начало работы с EdgeonePages — новым недорогим решением для хостинга веб-сайтов
boy illustration
[Зона легкого облачного игрового сервера] Управление игровыми архивами
boy illustration
Развертывание SpringCloud-проекта на базе Docker и Docker-Compose