Linux/*nix знания для тестировщика
#1
Отправлено 19 июня 2012 - 18:40
Хочу узнать, что входит в понятие "знание Linux/*nix". Например, знание bash-a, уметь написать простой скрипт, знание базовых комманд, умение работать без графической оболочки (только с консолью), умение собрать программу и так далее.
Если можно, поделитесь мыслями с указанием "уровня" знания (знание простейших комманд - beginner level, написать скрипт - intermediate, пересобрать ядро - advanced).
Так же интересно какие таски в этой ОС чаще всего приходилось делать, расскажите о вашем опыте.
В конце хочу составить для себя эдакий список-чеклист того, что надо выучить.
Также посоветуйте дистрибутив годный для учебы - я ставил убунту, но не знаю насколько она "близка" к боевым машинам, с которыми приходится работать тестировщикам.
#2
Отправлено 19 июня 2012 - 21:08
1) Линукс очень разный. Много дистрибутивов, разные оконные среды, много инструментов для работы и горы документации. Поэтому путь у каждого индивидуальный. Конечно, надо уметь работать с командной оболочкой и консольными редакторами, так как *nix в своей основе - командная строка, и именно в ней доступны все возможности. Ограничения графических оболочек почувствуете довольно быстро.
2) Научиться работать в консоли можно и в убунте. Просто забудьте, что есть графические конфигураторы, файловые менеджеры и центр установки приложений. Открывайте терминал и пытайтесь делать всё там. Убунта обладает тем преимуществом, что на начальном этапе помогает сберечь нервы и не способствует возникновению антипатии к ОСи. Хочется более острых ощущений - заведите виртуалку и поставьте на нее более "жесткий" дистрибутив. Или даже попытайтесь создать свой Линукс "с нуля" (www.linuxfromscratch.org).
3) Имхо, знание базовых команд не сильно отличается от умения написать скрипт для bash. Скрипт тоже может быть на "базовом" уровне. А вот поднабрать арсенал полезных утилит и опций можно только на практике: почитайте man даже по самым простым командам и убедитесь, что без опыта всё это множество опций освоить нереально.
Ответ очевиден - приходилось тестировать свой продукт. Какие-то настройки среды делать приходилось, но какой-то перечень даже трудно привести: при наличии базовых знаний из книжек, мануалов и гугла все проблемы постепенно переходят в разрешенное состояние.Так же интересно какие таски в этой ОС чаще всего приходилось делать, расскажите о вашем опыте.
#3
Отправлено 20 июня 2012 - 12:22
Здравствуйте, уважаемые форумчане!
Хочу узнать, что входит в понятие "знание Linux/*nix". ...
Также посоветуйте дистрибутив годный для учебы - я ставил убунту, но не знаю насколько она "близка" к боевым машинам, с которыми приходится работать тестировщикам.
И вам день добрый!
Мне только не понятно, так вы хотите научиться производить тестирование продукта или же узнать что такое линукс?! Если первое то лучше учиться на продукте майкрософт ибо я сейчас на нем только начал познавать азы тестирования(ручное, автоматизированное). Если второе, то простейших команд это понятие очень растяжимо (смотря для чего именно).
Оба сразу это навряд ли осуществимо. Я в курсе, что существует такой продукт для тестирования это Selenium и кажется он и в майкрософте работает и в линукс средах.
написать скрипт ---- скрипт для чего?
пересобрать ядро ---- простейших команд будет совсем мало.
Я же по своему опыту начинал с Ubuntu ибо она самая добрая в плане познания линукса "Checo" правильно сказал.
После я перешел на Debian так как он мне больше понравился, но он тяжелее в познании. Если в Ubuntu все находиться автоматом и просто нужно нажать установить, то в Debian все по другому.
Консоль--- (умение работать без GUI), а линукс без консоли это не линукс! все равно все делается через консольку, вы сначала научитесь работать с граф. оболочкой это во первых, а лишь потом задумывайтесь о консоли. "Простейшие команды"-тогда сами будут всплывать, как говорится гугл в помощь. Я изучал линукс на администрировании (установка и настройка различных серверов). На своем блоге я причем отписывал, что и как надо было сделать (но саморекламой не буду заниматься). Вы сначала поставьте вопрос, а что именно вам нужно и где приоритет выше. Если тестирование, то учитесь пока на майкрософте, инструменты для этого есть куча (Warp PRO, LoadRunner, Visual Studio, TestComplite и тонна других) я сам использую их на майкрософте. Если же линукс то пока забудьте о тестинге и познавайте его, потому что линукс это очень большая тема и в понятие "ЗНАТЬ" входит знать его!
#4
Отправлено 20 июня 2012 - 16:48
- Пересобрать ядро, модуль ядра, чтобы включить дополнения виртуализации (Hyper-V)
- Поднять почтовый сервер (сейчас стал чаще использовать Exchange - 120 дней работает бесплатно, а так под Windows есть только один нормальный бесплатный почтовый сервер: hMailServer, но всё-же и он кривой, а в Linux всё ставится удобно и работает неограниченно долго).
- Поднять Novell e-Directory (сам не делал - но это реальная задача для целей тестирования).
- Запустить какой-нибудь специфичный софт для тестирования (тестирования безопасности в основном - особых навыков не требует, ни кто-то и этого не сможет сделать).
- Проверить работу программы в Wine (также удобно, когда надо быстро сэмулировать Windows 98, например, которой нет под рукой), но wine - это редко. Так чтобы прямо по работе нужно было - два раза в жизни, остальное - собственные исследования.
- Обойти пароль в Windows (забыт пароль на виртуальной машине, а зайти как-то надо, не ломая машину).
Если вы тестировщик и хотите тестировать в Linux. То тестировал Altlinux (дефекты там исправляются медленно, а обнаруживаются быстро - тем не менее, вот тут можно ощутить, что используется повседневно, что не используется).
Нормальная разработка, ей пророчили большое будующее в госорганах, но это вилами на воде (предыдущий министр связи хоть и на словах говорил про Linux, на деле чаще обсуждал облачные решения c Windows, Azure, ... Но в то же время, начинка ноутов на голосовании, которые обеспечивали видеонаблюдение на участках, была с Linux).
На работе Linux можно использовать очень широко. Главное написать хорошие инструкции. Как мне говорят - мол на Linux это делать не будем, потому, что как там всё устроено, будешь знать только ты. Но если написать хорошую документацию (рассказать как там всё устроено, как поднять то, как настроить это, как подключиться к этому и где логи лежат). И это действительно будет работать. То разрешат. Но в основном не разрешают. И если какой-то нужный для работы сайт работает на связке IIS+FastCGI+PHP нестабильно (кеширование в такой связке глючное), а на LAMP - вполне хорошо, то как вариант рассмотрят LAMP, но примут решение делать всё на nginx+PHP под Windows, например.
#5
Отправлено 20 июня 2012 - 17:26
А далее - весь арсенал навыков сам обозначится. Тут и работа с загрузчиком, и поиск информации, и исследование логов, и назначение прав, и всякие тонкости работы с командной строкой, strace, службы, конфиги, структура каталогов, символические ссылки, структура инсталляционных пакетов, исходники, ...
Тут, конечно, не хватает инструментов от Марка Русиновича. Но тут есть свои инструменты.
А когда освоитесь (в Windows бы пришлось переустанавливать), то почувствуете - границы мира расширились, мир стал больше; и пришло понимание основ, понимание того, как он функционирует и должен функционировать.
#6
Отправлено 21 июня 2012 - 04:05
Так ведь он линукс и не знает я так понял, как он развернет на них службы? человек ведь не знает даже простейшие команды! очень интересно как он будет все это поднимать.Поставье любой дистрибутив (Altlinux, OpenSuse, Ubuntu). Разверните на нём нужные для работы службы. И обновитесь (ядро обновите, драйвер видеокарты, или ещё-чего). Вот тут нежданчики появятся.
#7
Отправлено 22 июня 2012 - 10:01
Он почувствует силу, на шаг приблизившись к тому, чтобы стать джедаем. Ведь как известно: "Ядрёная консоль делает меня сильней!". И поднимет.очень интересно как он будет все это поднимать.
Или найдёт TFM, и выполнит по отношению к нему действие Read.
#8
Отправлено 25 июня 2012 - 20:29
Сомневаюсь :) Люди занимающиеся подбором персонала обычно, в лучшем случае, знают что линукс существует и как-то используется в компании.Наверное, люди, более близкие к подбору персонала, расскажут Вам подробнее. Но не могу удержаться от пары замечаний.
Вот с этим могу поспорить. Убунта - УГ и вообще бажное УГ. И нервы попортить она как раз может больше чем другие дистры. Я предпочитаю openSuse.2) Научиться работать в консоли можно и в убунте. Просто забудьте, что есть графические конфигураторы, файловые менеджеры и центр установки приложений. Открывайте терминал и пытайтесь делать всё там. Убунта обладает тем преимуществом, что на начальном этапе помогает сберечь нервы и не способствует возникновению антипатии к ОСи.
Абсолютно точно, полностью поддерживаю этот комментарий. Хотите научиться - перебирайтесь на линукс и работайте в нем, если это не критично для тестируемого приложения (ну или пускайте его в виртуалке, если виндовое). Есть рецепт перелезания на линукс, которым я сам и воспольовался - сначала на виндах перейти на кросплатформенные продукты (мс офис - libre office, почтовик - thunderbird итд.) Единственно - нет замены Far-у (есть mc, но это отстой).3) Имхо, знание базовых команд не сильно отличается от умения написать скрипт для bash. Скрипт тоже может быть на "базовом" уровне. А вот поднабрать арсенал полезных утилит и опций можно только на практике: почитайте man даже по самым простым командам и убедитесь, что без опыта всё это множество опций освоить нереально.
Alexey
#9
Отправлено 25 июня 2012 - 20:51
Начну с конца - тестировщикам "приходится" работать на разных операционках с разными настройками - ведь все зависит от того, как надо тестировать приложение. У нас, например, нет жестких требований по окружению, но корпоративный стандарт - убунта (хотя у меня openSuse).Здравствуйте, уважаемые форумчане!
Хочу узнать, что входит в понятие "знание Linux/*nix". Например, знание bash-a, уметь написать простой скрипт, знание базовых комманд, умение работать без графической оболочки (только с консолью), умение собрать программу и так далее.
Если можно, поделитесь мыслями с указанием "уровня" знания (знание простейших комманд - beginner level, написать скрипт - intermediate, пересобрать ядро - advanced).
Так же интересно какие таски в этой ОС чаще всего приходилось делать, расскажите о вашем опыте.
В конце хочу составить для себя эдакий список-чеклист того, что надо выучить.
Также посоветуйте дистрибутив годный для учебы - я ставил убунту, но не знаю насколько она "близка" к боевым машинам, с которыми приходится работать тестировщикам.
Теперь о том, что делать - работать приходилось чаще всего. Собственно для этого и нужна операционка.
Поэтому, для начального уровня вам надо научиться устанавливать систему (с обычными "дружелюбными" дистрибутивами это не сложнее чем установка виндов). Научиться работать в системе (с консолью или без - решать только вам). Считайте это начальным уровнем.
Если вы захотите работать быстрее и удобнее (а если линукс это ваша единственная операционка - то это желание придет достаточно быстро), то вы волей-неволей начнете писать скрипты, использовать консоль, научитесь компилировать программы, которых нет в пакетах (обычно они компилируются достаточно легко и все это выглядит страшно только на первый взгляд). Считайте это уже более продвинутым уровнем.
Еще более продвинутым уровнем можно считать, когда вы научитесь настраивать свою машину таким образом, что сможете зайти на нее с любого другого компа по ssh и сделать в консоли все то, что могли бы сделать сидя за ней.
А ядро вам не придется пересобирать (если вы конечно не выберете какой-нибудь gentoo). Людям которым нужно "ехать" это ни к чему, ну а тем кому "шашешчки"...
Могу книгу порекоммендовать - http://www.books.ru/...ruzhenie-82361/
До середины - маст рид.
Alexey
Количество пользователей, читающих эту тему: 1
0 пользователей, 1 гостей, 0 анонимных