Вопрос №146
Абстракция.
1. Выделяет главные свойства предмета.
2. Отбрасывает второстепенные характеристики.
Абстракция.
1. Выделяет главные свойства предмета.
2. Отбрасывает второстепенные характеристики.
- - - - - - - - -
Docker. Основы работы с контейнерами.
- - - - - - - - -
Виртуализация позволяет абстрагироваться от аппаратных средств (реального «железа») для изоляции нескольких вычислительных процессов на одном компьютере.
https://smartiqa.ru/blog/docker-basics
Docker. Основы работы с контейнерами.
- - - - - - - - -
Виртуализация позволяет абстрагироваться от аппаратных средств (реального «железа») для изоляции нескольких вычислительных процессов на одном компьютере.
https://smartiqa.ru/blog/docker-basics
smartiqa.ru
Docker. Основы работы с контейнерами.
Контейнеризация в разработке: преимущества Docker’a, базовый инструментарий. Использование образов и контейнеров. Создание собственных приложений.
👍1
Вопрос №147
Инкапсуляция.
Прячет внутреннюю реализацию объекта, все взаимодействия - через интерфейс.
Инкапсуляция.
Прячет внутреннюю реализацию объекта, все взаимодействия - через интерфейс.
- - - - - - - - -
BDD тестирование. Язык Gherkin. Фреймворк Cucumber.
- - - - - - - - -
1. Что такое TDD?
Разработка через тестирование (англ. Test-driven development, TDD) — техника разработки программного обеспечения, которая основывается на повторении очень коротких циклов разработки: сначала пишется тест, покрывающий желаемое изменение, затем пишется код, который позволит пройти тест, и под конец проводится рефакторинг нового кода к соответствующим стандартам.
https://smartiqa.ru/blog/bdd_gherkin_cucumber
BDD тестирование. Язык Gherkin. Фреймворк Cucumber.
- - - - - - - - -
1. Что такое TDD?
Разработка через тестирование (англ. Test-driven development, TDD) — техника разработки программного обеспечения, которая основывается на повторении очень коротких циклов разработки: сначала пишется тест, покрывающий желаемое изменение, затем пишется код, который позволит пройти тест, и под конец проводится рефакторинг нового кода к соответствующим стандартам.
https://smartiqa.ru/blog/bdd_gherkin_cucumber
smartiqa.ru
BDD тестирование. Язык Gherkin. Фреймворк Cucumber.
Отправление запросов и получение ответов от сайтов напрямую и через API. Основные свойства и методы библиотеки Requests. Простое управление web-приложениями с помощью Python.
Вопрос №149
Композиция.
Класс, известный как составной, содержит объект другого класса, известный как компонент. Выражает отношение "Имеет" (Например, машина имеет двигатель).
Композиция.
Класс, известный как составной, содержит объект другого класса, известный как компонент. Выражает отношение "Имеет" (Например, машина имеет двигатель).
- - - - - - - - -
Docker. Тома, контроль версий, Docker Hub, Docker Compose.
- - - - - - - - -
1. Доступ к файлам и ресурсам с помощью томов
Работа с изолированными контейнерами при помощи Docker является удобной и простой, но может иметь недостаток: все сгенерированные ими данные автоматически исчезают в момент удаления. Предположим, мы делали некоторые расчеты, которые хотелось бы сохранить. Однако, это по умолчанию невозможно. Естественно, имеются решения, помогающие решить указанную проблему (и не только):
Копирование (команда cp)
Тома (volumes)
Совместные каталоги (bind mounts)
https://smartiqa.ru/blog/docker-share-hub-compose
Docker. Тома, контроль версий, Docker Hub, Docker Compose.
- - - - - - - - -
1. Доступ к файлам и ресурсам с помощью томов
Работа с изолированными контейнерами при помощи Docker является удобной и простой, но может иметь недостаток: все сгенерированные ими данные автоматически исчезают в момент удаления. Предположим, мы делали некоторые расчеты, которые хотелось бы сохранить. Однако, это по умолчанию невозможно. Естественно, имеются решения, помогающие решить указанную проблему (и не только):
Копирование (команда cp)
Тома (volumes)
Совместные каталоги (bind mounts)
https://smartiqa.ru/blog/docker-share-hub-compose
smartiqa.ru
Docker. Тома, контроль версий, Docker Hub, Docker Compose.
Доступ к внешним ресурсам из контейнеров. Docker Hub как инструмент контроля версий. Применение Docker Compose для управления мультиконтейнерными проектами.
- - - - - - - - -
Selenium WebDriver для начинающих
- - - - - - - - -
1. UI тестирование
UI тестирование - имитация действий пользователя — клики, переходы по ссылкам, и другие действия подобного плана. Вопрос о целесообразности большого количества автоматизированных тестов, работающих через пользовательский интерфейс, является весьма спорным, потому что:
Автоматизированные UI тесты очень хрупкие. Как правило, даже косметические изменения в коде тестируемого приложения(например, смена имени checkbox) приводят к необходимости внесения соответствующих изменений к код тестов. В итоге, поддержка обширных UI тестов является задачей достаточно трудоемкой, а для приложений с активно развивающимся графическим интерфейсом - даже бессмысленной.
https://smartiqa.ru/blog/selenium-webdriver-basics
Selenium WebDriver для начинающих
- - - - - - - - -
1. UI тестирование
UI тестирование - имитация действий пользователя — клики, переходы по ссылкам, и другие действия подобного плана. Вопрос о целесообразности большого количества автоматизированных тестов, работающих через пользовательский интерфейс, является весьма спорным, потому что:
Автоматизированные UI тесты очень хрупкие. Как правило, даже косметические изменения в коде тестируемого приложения(например, смена имени checkbox) приводят к необходимости внесения соответствующих изменений к код тестов. В итоге, поддержка обширных UI тестов является задачей достаточно трудоемкой, а для приложений с активно развивающимся графическим интерфейсом - даже бессмысленной.
https://smartiqa.ru/blog/selenium-webdriver-basics
smartiqa.ru
Selenium WebDriver для начинающих
Основные API методы, локаторы, ожидания.
Вопрос №150
Чем отличаются Наследование и Композиция?
Общее: позволяют повторно использовать существующий код.
Отличия:
1. Наследование требует расширения наследуемого класса.
2. Во многих языках запрещено множественное Наследование. А значит нельзя переиспользовать функционал нескольких разных классов. В Композиции – можно.
3. При Композиции легче писать юнит тесты – делаем заглушки. При Наследовании это сделать сложнее – не получится заменить заглушкой родительский класс.
4. При наследовании класс-потомок зависит от функционала класса-родителя. Ломается родитель – ломается и потомок.
Итог: когда нужно использовать класс как таковой без каких-либо изменений, рекомендуется Композиция, а когда нужно изменить поведение метода в другом классе, рекомендуется Наследование.
Чем отличаются Наследование и Композиция?
Общее: позволяют повторно использовать существующий код.
Отличия:
1. Наследование требует расширения наследуемого класса.
2. Во многих языках запрещено множественное Наследование. А значит нельзя переиспользовать функционал нескольких разных классов. В Композиции – можно.
3. При Композиции легче писать юнит тесты – делаем заглушки. При Наследовании это сделать сложнее – не получится заменить заглушкой родительский класс.
4. При наследовании класс-потомок зависит от функционала класса-родителя. Ломается родитель – ломается и потомок.
Итог: когда нужно использовать класс как таковой без каких-либо изменений, рекомендуется Композиция, а когда нужно изменить поведение метода в другом классе, рекомендуется Наследование.
- - - - - - - - -
Собеседование на должность QA Automation Engineer.
Основы программирования.
- - - - - - - - -
1. Проектирование
Почему глобальные переменные это плохо? 1. Нарушают инкапсуляцию (к ним открыт доступ из любой части программы), добавляют лишние зависимости между компонентами. 2. Ухудшают масштабируемость 3. Способствуют возникновению трудноуловимых ошибок.
https://smartiqa.ru/blog/qa_automation_engineer_interview_2
Собеседование на должность QA Automation Engineer.
Основы программирования.
- - - - - - - - -
1. Проектирование
Почему глобальные переменные это плохо? 1. Нарушают инкапсуляцию (к ним открыт доступ из любой части программы), добавляют лишние зависимости между компонентами. 2. Ухудшают масштабируемость 3. Способствуют возникновению трудноуловимых ошибок.
https://smartiqa.ru/blog/qa_automation_engineer_interview_2
smartiqa.ru
[ Часть 2 ] Собеседование на должность QA Automation Engineer. Основы программирования.
Вопросы и ответы по темам: проектирование, языки программирования, ООП, алгоритмы, задачи, Python
Вопрос №151
Полиморфизм.
Поддержка нескольких реализаций на основе общего интерфейса. Т.е. позволяет перегружать одноименные методы родительского класса в классах-потомках. Пример: метод len() позволяет получать длину последовательности для разных классов (int, str, list и т д).
Полиморфизм.
Поддержка нескольких реализаций на основе общего интерфейса. Т.е. позволяет перегружать одноименные методы родительского класса в классах-потомках. Пример: метод len() позволяет получать длину последовательности для разных классов (int, str, list и т д).
- - - - - - - - -
Шпаргалка по GitLab
- - - - - - - - -
1. Global keywords / Глобальные ключевые слова
2. Jobs keywords / Ключевые слова уровня джобы
https://smartiqa.ru/blog/gitlab-cheatsheet
Шпаргалка по GitLab
- - - - - - - - -
1. Global keywords / Глобальные ключевые слова
2. Jobs keywords / Ключевые слова уровня джобы
https://smartiqa.ru/blog/gitlab-cheatsheet
smartiqa.ru
Шпаргалка по GitLab
Обзор основных ключевых слов и переменных .gitlab-ci.yml конфига, примеры использования