Bash команды для тестировщика
Введение
Большинству тестировщиков в своей карьере рано или поздно придётся столкнуться с терминалом Linux
Скорее всего это начнётся как необходимость зайти на сервер и посмотреть логи.
Сервера делают на разных операционных системах:
Из семейства
Linux
популярны:
Также часто применяют UNIX подобные ОС:
Они немного отличаются друг от друга но есть и общее свойство:
На сервере обычно нет графического интерфейса
Но зато есть командная оболочка вроде
bash
Именно поэтому тестировщику нужно освоить основы работы с терминалом Linux.
В этой статье Вы увидите команды нужные именно тестировщику. Больше полезных
команд можно найти в статьях:
Работа с директориями
Тестировщику приходится постоянно работать с логами. Каждый найденный баг обычно нужно
описать как функционально: что не работает, что при этом делали, что показал UI.
Так и подтвердить документально: timestamp + логи клиента/сервера/партнёрского бэкенда.
Даже если в каком-то конкретном случае логи не нужны, разработчики скорее всего их попросят -
просто по привычке.
Для того, чтобы найти логи, нужно уметь перемащаться между директориям и смотреть из содержимое.
Просмотр директорий
Чтобы перейти в директорию с логами достаточно ввести команду cd и её абсолютный адрес.
Например:
cd /glassfish_domains/server_name/logs
Если абсолютный адрес директории неизвестен, нужно перемещаться куда-то из текущей директории.
Узнать содержимое текущей директории можно с помощью команды
ls
Например
ls -la
где опция l требует вывода в так называемом длинном формате.
Вывод будет содержать
права доступа, количество жёстких ссылок на файл , владельца, группу, размер,
время последнего изменения и называние файла.
a - это опция которая требует показать скрытые файлы - те, называние которых начинается с .
Переместиться в директорию на уровень ниже можно с помощью команды cd название директории
cd testProject01
Подняться на уровень выше
cd ..
Создание директории
Для того, чтобы создать директорию выполните команду:
mkdir название_директории
где название_директории - это та директорию, который вы хотите создать.
К примеру, создадим директорию test_Project2:
mkdir test_Project2
Копирование директории
Для того, чтобы скопировать директорию из одного места в другое, выполните команду:
cp -a project01 project02
где project01 - источник (директорию, которую вы хотите скопировать)
а project02 - получатель (тот директорию, в которую вы хотите скопировать)
ключ -a означает то, что мы выполняем нерекурсивное копирование.
Например, скопируем директорию /usr/local/project01 в своу домашнюю директорию и назовем её project01arj:
cp -a /usr/local/project01 ~/project01arj
Перемещение / Переименование директории
За перемещение и переименование директорий, в Linux отвечает команда mv.
Рассмотрим примеры:
перемещение директории /usr/local/projects в уже существующую, в домашней директории, директорию project01arj:
mv /usr/local/statistics ~/project01arj/
переименование директории /usr/local/projects в /usr/local/testedProjects:
mv /usr/local/statistics /usr/local/newstatistics
Удаление директории
Удаление директории и её содержимого, можно произвести при помощи команд rmdir или rm:
удаляем директорию /usr/local/testedProjects/temp:
rmdir /usr/local/testedProjects/temp
или рекурсивно директорию /usr/local/testedProjects/temp, со всеми директориями внутри него:
rm -rf /usr/local/testedProjects/temp
Работа с логами
Подробнее о том, что такое логи и какими они бывают читайте в параграфе «Изучение логов»
Просмотр последних логов
Зачастую открывать весь файл слишком долго. В этом случае можно воспользоваться командой tail
sudo tail -n 1000 ~/glassfish_domains/server/logs/project-name-2019-09-25.log
Эта команда выведет 1000 последних строк лога.
Логи в реальном времени
Опция -f позволяет мониторить изменения в реальном времени
sudo tail -f ~/glassfish_domains/server/logs/project-name-2019-09-25.log
Если Вы хотите вырезать определённый диапазон строк из лога - читайте
мою статью про текстовые препроцессоры:
Как вырезать строки из лога с помощью SED
Чтобы подсчитать сколько всего строк в файле latest.log используйте
wc -l latest.log
282608 latest.log
Тестирование ПО | |
Разработка ПО | |
DevOps | |
IT | |
Кибербезопасность | |
RFID | |
Web | |
Список открытых API |