Система контроля версий (от англ. Version Control System, VCS) — это место хранения кода. Как dropbox, только для разработчиков!
Она заточена именно на разработку продуктов. То есть на хранение кода, синхронизацию работы нескольких человек, создание релизов (бранчей)... Но давайте я лучше расскажу на примере, чем она лучше дропбокса. Всё как всегда, история с кучей картиночек для наглядности ))
А потом я подробнее расскажу, как VCS работает — что значит "создать репозиторий", "закоммитить и смерджить изменения", и другие страшные слова. В конце мы пощупаем одну из систем VCS руками, скачаем код из открытого репозитория.
Автор: Никола Оуэн (Nicola Owen) Оригинал статьи Перевод: Ольга Алифанова
Я размышлял над этой статьей с тех пор, как увидел обсуждение в Министерстве Тестирования. Честно говоря, мне было сложно его интерпретировать – как можно точно описать важные навыки?
Чтобы структурировать свои мысли, я переформулировал "Важные навыки для тестирования" в вопрос, какие навыки полезны отличному тестировщику.
Привет, меня зовут Иван, я работаю руководителем горизонтали автоматизаторов в Skyeng. Занимаюсь менеджментом ресурсов автоматизаторов, внедряю процессы, которые упрощают работу ребят, пишу инструменты для команды (слак-бот, всякие интеграции с TMS и др.), менторю начинающих автоматизаторов и, иногда, пишу авто-тесты.
Ручные тестировщики и начинающие автоматизаторы из компании часто спрашивают у меня, как им определиться с дальнейшим развитием. Я выделил 7 проблем, с которыми сталкивался сам, постарался рассказать, как боролся с ними и как можно обратить некоторые из своих слабых сторон на пользу себе и окружающим. Учиться на своих ошибках — хорошо, а на чужих — еще лучше. Надеюсь, мой рассказ поможет вам пойти вторым путем :)
В современном мире тестирование API становится неотъемлемой частью тестирования продукта в целом. Если раньше приложение взаимодействовало только со своим сервером, то в наши дни ни одно приложение не обходится без общения с сервисами метрик, социальными сетями и другими приложениями. Это общение происходит через API - специальный интерфейс, через который программы общаются друг с другом.
Соответственно, кратно растет спрос на специалистов, которые будут тестировать эти API.
Так как API нужно для общения именно программ, его не получится протестировать через какой-то пользовательский интерфейс. Лучшим подходом будет автоматизация тестирования API с помощью написанной нами программы. Python является идеальным выбором для этого. Он дает невероятную гибкость в создании сценариев тестирования с одной стороны, и не переусложняет создание и поддержку проекта с другой.
На курсе мы изучим все с нуля - от скачивания и установки нужных программ и библиотек до создания собственного фреймворка, с помощью которого мы напишем множество тестов. Итоговый проект, который вы напишите на курсе, можно будет закинуть на Github, использовать на работе или приложить к своему резюме.
Для прохождения курса нужно общее представление о том, как писать код на любом языке программирования - что такое условие IF, для чего нужны циклы и как создать класс. Всему остальному мы научим.
Курс исключительно практический - мы создали для него свой API, который и будем тестировать на протяжении всего курса. Плюс, вас ждет множество домашних заданий, которые будут проходить тщательное код-ревью.
И то, и другое — интерпретаторы командной строки в линуксе. То есть если вы откроете командную строку и введете любую команду, да хоть:
cd /home
То именно интерпретатор ее расшифрует и скажет компьютеру «он хочет перейти в директорию /home». Компьютер ведь не понимает команды на русском / английском языке. Ему нужны байтики. Этим и занимается интерпретатор — переводом с «нашего» на «компьютерный» язык.
Так что «cd /home» — это shell-команда! Или bash. Смотря какой интерпретатор установлен в вашей системе. В каждой операционной системе установлен интерпретатор по умолчанию. У них есть какие-то различия, но есть и набор базовых команд, которые понимают все: cd, mv, cp, ls…(в винде эти команды немного другие)
А что такое shell-скрипт тогда? Это просто текстовый документ, внутри которого написан набор команд! Это не обязательно должны быть «сложные» команды, которые делают что-то супер-навороченное. Это любые команды, которые вы выполняете в консоли.
Автор: Майкл Болтон (Michael Bolton) Оригинал статьи Перевод: Ольга Алифанова
Приятель, дружба с которым только началась, ведет тренинги по развитию навыков для начинающих тестировщиков. Сегодня он сказал, что его студенты начинают проект, включающий тест-дизайн, тест-техники и запуск тестов. Есть ли у тебя совет для них, спросил он? Вот мой ответ.
Тест-дизайн, тест-техники и запуск тестов – классные вещи. Я бы предпочел "выполнение тестов" "запуску тестов" – мой вариант показывает, что тест – это деятельность, активно выполняемая человеком, адаптирующимся по ходу дела. "Запуск тестов" звучит как рецепт или запрограммированный набор инструкций.
Я бы советовал начать с выполнения тестов. Но этот совет может несколько смутить тех, кто убежден, что тестирование имеет дело только с неким (почти) готовым продуктом и нацелено на поиск ошибок кода. В Rapid Software Testing мы смотрим на вопрос шире: тестирование – это процесс оценки продукта путем его изучения через опыт, исследование и эксперименты, включающие до некоторой степени вопросы, наблюдения, моделирование, вмешательства, и т. д.
Автор: Яковлев Станислав — Team Lead команды тестирования сервиса Юла, телеграмм канал t.me/qa_chillout
Push-уведомления — это сообщения, отправляемые приложением на мобильное устройство клиента. Они обычно используются для доставки обновлений продуктов, напоминаний, персонализированных предложений, последних новостей и любой информации, которая является неотъемлемой частью функциональности приложения и требует особого внимания или быстрых действий.
Автор: Филип Рик (Filip Hric) Оригинал статьи Перевод: Ольга Алифанова
Я часто сталкиваюсь с необходимостью протестировать панель навигации, дабы убедиться, что все ссылки в ней правильно работают. Это симпатичный тестовый случай, к которому можно применять разнообразные подходы. В этой статье я хочу их осветить и показать, как применять их в Cypress.
Сначала посмотрим, что мы будем тестировать. У нас есть простая панель навигации, направляющая нас на различные страницы нашего сайта. Как обычно, можно воспользоваться примером в моем репозитории.
Работая тестировщиком рано или поздно каждый из нас приходит к моменту, кода нужно выбрать свой дальнейший карьерный путь. Для большинства из нас этот выбор не так велик: кардинальная смена вида деятельности, менеджмент, автоматизированное тестирование. Этот выбор не так прост как кажется. Тем, кто пришел из «нетехнических» сфер деятельности и на код смотрит как на инопланетную письменность, может казаться, что автоматизация – это нечто сложное и непостижимое для гуманитарного ума. Однако, сейчас выбор инструментов для автоматизации тестирования настолько велик, что любой может выбрать для себя то, что нравится и больше подходит по сложности, стоимости и даже привлекательности.
Если позволяют способности и время, можно смело браться за Selenium со всеми его сложностями и преимуществами. Процесс освоения займет ни один месяц, и не каждый будет способен самостоятельно освоить этот инструмент. Часто тот, кто платит тестировщику зарплату, предпочтет нанять готового специалиста, чем обучать имеющегося, даже при условии, что инструмент бесплатный, получается что использовать его не так уж дешево.
Что же может сделать тот, кто желает освоить и начать применять автоматизированное тестирование на своем проекте при минимальных затратах времени и финансов? Выбрать бесплатный инструмент, который легко освоить и использовать без предварительной подготовки и больших затрат времени на освоение.
TestProject один из таких инструментов, определенно стоящий внимания. Рассмотрим некоторые преимущества инструмента.