Командная строка linux unix
Нагугилшь команду, а перейти в нужную папку забудешь. Или перепутаешь направление dd (команда поблочного переноса данных) и все, здравствуй вечер переустановки системы и потеря данных. Справочники – это хорошо, но основы работы в командной строке Unix/Linux нужно знать наизусть.
У меня получился примерно такой список необходимых внутренних команд оболочки Bourne shell (командные процессоры sh, bash и т.д.) и внешних утилит. Вызываются они одинаково:
- Навигация по каталогам и файлам: cd, ls, pwd.
- Работа с файлами и каталогами: rm, mv, cp, mkdir, cat, more, grep, sort, touch, tail, head, less, find.
- Повышение привилегий: su, sudo.
- Управление правами: chmod, chown, chgrp.
- Текстовые редакторы: vi, vim, nano.
- Архивация и разархивирование: tar, unzip, zip.
- Установка программ: apt, yum.
- Информация о командах: man, опция -h (—help).
- История ранее выполняемых команд: history.
- Работа с сетью: curl, ping, nslookup, netstat, wget, telnet, ifconfig, ip, ss.
- Информация о системе и процессах: top, du, df, ps.
- Управление процессами: kill.
Конечно команд больше, но эти мне пригодились мне в самом начале пути. Расскажу подробнее о самых необходимых.
Совершенствуем чтение логов
Первое, для чего тестировщик откроет терминал и начнет в нем работать – это логи (от англ. logs – файлы журналов, обычно текстовые). Потому что об аргумент «у меня все работает» разбиваются все доводы и с таким трудом найденные шаги воспроизведения. Можно достать файл целиком с помощью WinSCP и приложить его к багу, но не факт, что его откроют (и хорошо еще, если правильно настроено порционирование логов и файл весит не так уж и много).
Начать можно с простого. Команда tail показывает окончание файла (аналогично команда head читает данные с начала), а если добавить ключ -n , то можно увидеть заданное количество строк:
Для чтения логов можно пользоваться любым их этих трех способов, но самый удобный – less. Он упрощает работу с большими файлами журналов и отслеживание ошибки, например, по одному треду.
Спасаем показ: подключаемся к базе данных
Рано или поздно в жизни тестировщика наступает сдача проекта. Бессонные ночи, правки на прод за час до релиза, написание ПМИ и постоянный перетест. И вот уже почти конец, остался показ.
В тот раз показ проходил в виде испытаний пользователями. Сами пользователи проходили ПМИ в качестве обучения, параллельно принимая систему. Мы могли только отслеживать и фиксировать ошибки и подсказывать, если выходили сильные заминки.
В системе объект должен был двигаться по определенному жизненному циклу. Пользователь нажал кнопку, и ничего не произошло. Даже в логах не отобразилась никакая информация. Показ встал. Действовать нужно быстро, иначе не засчитывалась защита. Под рукой только терминал. Выход из такой ситуации достаточно прост:
Если соединение открыто, остается последний шаг перед началом тестирования интеграции. С помощью утилиты curl проверить возможность представленного в спецификации запроса:
Приложение должно быть запущено, иначе лучше вернуть старые настройки и заново его рестартовать.
Нужно ли это тестировщику?
Терминал – инструмент, позволяющий решать множество мелких проблем, не прибегая к помощи других людей и программ. Конечно, есть вероятность сломать с его помощью систему или стереть нужные файлы, можно попасть в глупое положение, можно снести все. Однако сделать это можно и не используя терминал, поэтому почему бы не попробовать?