Telegram Web Link
Собеседование QA Automation Java: стандартные задачи

Материал включает в себя список задач с верным ответом.

Содержание:

🔹 Напишите код, который профильтрует дублирующиеся элементы в массиве и выведет их в виде списка.
🔹 Дайте пример кода, который сортирует список строк с использованием коллекции.
🔹 Напишите функцию, которая переворачивает число (порядок цифр в нем изменяет на противоположный, инвертирует).
🔹 Напишите метод проверки, является ли введенное число простым числом
🔹 Напишите метод поиска двух самых больших значений в массиве.
🔹 Напишите код поиска самой длинной подстроки из введенной строки, в которой нет дублирующихся символов.
🔹 Напишите код, который удаляет из строки лишние пробелы.
🔹 Напишите код, проверяющий, является ли введенное число палиндромом (то есть, читается ли с конца на начало — так же как с начала на конец, как слово «Анна» или фраза «Лёша на полке клопа нашёл»).
🔹 Напишите код, который меняет местами два числа, при этом нельзя создавать «временную» переменную.
🔹 Напишите код, который переворачивает строку, в двух вариантах: с применением класса BufferString, и без.

Подробнее

#собесы
7👍4🤔2
18 готовых скриптов для Postman

В Postman скрипты пишутся на JavaScript во вкладке «Тесты» после отправки API-запроса. Каждый скрипт ниже — связан с определенным API-запросом и выполняется автоматически после отправки этого запроса. Скрипт имеет доступ к данным ответа и запроса и различным функциям Postman.

Базовая структура скрипта выглядит следующим образом:

pm.test("Test Description", function () {
// Assertion logic goes here
});

Изучить скрипты

#туториал
🥰1915👏11👍10🔥10
🎉🏵️ Что нового в Chrome 117

Выкатили обнову для Chrome. Что примечательного:

🔹 Три новые функции CSS позволяют легко добавлять плавные анимации появления и исчезновения.
🔹 Вычисление наборов данных более высокого порядка с помощью группировки массивов.
🔹 DevTools упрощает процесс локальных переопределений.
🔹 И многое другое.

Новые возможности CSS для анимации появления и исчезновения

CSS-функции дополняют набор, позволяющий легко добавлять анимацию входа и выхода, а также плавно анимировать перемещение на верхний слой и с него таких элементов, как диалоговые окна и всплывающие окна.

Первая функция — transition-behavior. Для анимации дискретных свойств, таких как display, используйте значение allow-discrete для transition-behavior.

Правило @starting-style для анимации эффектов появления через display: none в верхний слой. @starting-style используется для применения стиля, который браузер может найти до того, как элемент будет открыт на странице.

Чтобы вывести всплывающее окно или диалоговое окно из верхнего слоя, добавляется свойство overlay в список переходов. Включайте свойство overlay в переход или анимацию, чтобы анимировать наложение вместе с остальными элементами и обеспечить его сохранение в верхнем слое при анимировании.

Группировка массивов

Возможность объединения данных в группы позволяет разработчикам вычислять наборы данных более высокого порядка. Например, средний возраст когорты или ежедневные значения LCP для веб-страницы.

Группировка массивов позволяет реализовать эти сценарии за счет добавления статических методов Object.groupBy и Map.groupBy.

groupBy вызывает предоставленную функцию обратного вызова один раз для каждого элемента. Функция обратного вызова должна возвращать строку или символ, указывающий на группу связанного элемента.

Упорядочение локальных переопределений в DevTools

Теперь функция локальных переопределений оптимизирована, что позволяет легко изменять заголовки ответов и веб-содержимое удаленных ресурсов из панели Network, не имея к ним доступа.

И по мелочи

🔹 Долгожданное значение subgrid для grid-template-columns и grid-template-rows теперь реализовано в Chrome.
🔹 WebSQL помечена как устаревшая и событие unload тоже.
🔹 notRestoredReasons API для bfcache должен быть запущен в этой версии.

#новости
👍51🔥1
Что бесит рекрутеров и соискателей на интервью

В этой статье вы узнаете о триггерах (или раздражителях), которые случаются в ходе собеседования между соискателем и HR-специалистом.

Ахиллесова пята IT-рекрутинга — это собеседования. Такие разные, такие эмоциональные и интересные — они как кино:

есть классика: «Мы расскажем о себе, вы расскажете о себе, поговорим о нас»;
есть артхаус, авторское кино: «Ни за что не хочу такого опыта снова, но расскажу о нём всем!»;
бывают комедии или сериалы в 5–6 этапов (это вообще жесть😱).

Автор побывал по обе стороны баррикад: провел сотни HR-интервью, присутствовал на сотнях технических интервью и примерно столько же собеседований прошел сам на роль рекрутера. Поэтому уверенно заявляет: в процессе интервью нас всех триггерят очень разные вещи.

Подробнее

#дляобщегоразвития
9👍2
🎓💼 ТОП-9 не самых очевидных компаний для стажировки в ИТ

Везде просят опыт работы... Но где его взять? Как раз об этом сейчас и расскажем!

Читать
8👍2🔥1
😎 #дайджест ресурсов, которые прокачают ваш английский:

👉 Learn English British Council — на сайте можно пройти языковые курсы онлайн, позаниматься в бесплатных тренажерах, попрактиковать Speaking, Listening, Reading и Writing.

👉 Baihou English — имеется раздел с понятными уроками по английской грамматике, фразы и идиомы, собрана коллекция мотивирующих и вдохновляющих видео и самых популярных песен с субтитрами.

👉 Voice of America — тут вы найдете идиомы в американском английском, новости, объяснения использования слов из той или иной тематики, видео разных тематик с субтитрами и адаптированной скоростью речи.

👉 BBC English — здесь можно пройти тесты, викторины, почитать актуальные новости доступным языком и все в таком роде. Для отработки навыков чтения на английском точно хватит.

👉 Lingualeo — площадка с различными форматами обучения (видео, тесты, речь, песни и прочее). Бонусом к этому ресурсу юзайте ролики из YouTube от канала EngVid — очень толковые ребята
4👍2🔥2
Ozon Tech Community QA Meetup

На митапе будет обсуждаться, как устроено тестирование в Ozon, узнаете о тестовоем покрытии и как работает QA в блоке по продукту и технологиям товарных операций, а именно в разработке склада.

Программа встречи:

Дмитрий Колесник, руководитель группы разработки инструменты тестирования.
«Тестовое покрытие». Узнаете, зачем и как собирать тестовое покрытие, а также когда достаточно тестировать, чтобы сделать успешный релиз.

Фёдор Жирков, руководитель группы тестирования «ТМЦ, брак и излишки».
«Как устроено тестирование склада (WMS)». Как выглядит верхнеуровневая архитектура сервисов и топология команды, как устроено тестирование бэка. Обсудите тестирование фронта (WEB), мобилки (Android), а также немного о нагрузочном тестировании.

Владимир Ушаков, специалист по тестированию в группе «Производство и возвраты».
«Кодогенерация Python gRPC клиентов». Узнаете, как устроен генератор, как версионируются пакеты, а также как они используются в текущий момент.

Присоединяйтесь тут
5👍1🔥1
🛠️⚒️ Инструменты и навыки для новичков. Или как не потеряться в дремучем лесу тестирования

Когда специалист врывается в любую новую сферу, задавались вопросами: «какими инструментами необходимо владеть, чтобы…», «а точно ли это весь перечень?», «а какие навыки необходимы, чтобы пройти собеседование?». Таких вопросов больше у новичков, которые уже начали обучение или только в поисках обучения, пытаются понять минимум необходимый для старта.

В статье вы пройдётесь по нужным навыкам, инструментам. Будут полезные ссылки для углубления в тему и получите карту компетенций, которая поможет визуализировать объем информации, необходимый для старта в профессии.

⚠️ Статья имеет очевидный рекламный подтекст, но это НЕ реклама. Из материала можно почерпнуть реальные полезные советы для новичков.

Читать статью
7
🔎📡 Поиск локаторов в iOS приложениях

Использование Appium Inspector для поиска элементов в iOS-приложениях может быть полезным при автоматизации тестирования мобильных приложений. Appium Inspector предоставляет графический интерфейс для взаимодействия с приложением и поиска локаторов (элементов) для автотестов.

Простыми словами — локатор это адрес до определенного элемента: квартира в городе — элемент, это может быть кнопка, текст, поле и многие другие элементы экрана приложения, а город, улица, дом — все это те места, где квартира находится. Например, городом в приложении может быть какой-то модуль приложения, улицей — часть экрана, а домом уже какой-либо конкретный раздел экрана.

Вот такой план:

Настройка окружения
Установка XCode
Установка Appium
Запуск Appium Inspector

Поиск локаторов
Происходит с помощью таких инструментов:
iOS Class Chain
iOS Predicate String
XPath

Подробнее здесь
👍5🔥21
🛣️ Дорожная карта Java-разработчика в 2023 году

В данной статье мы расскажем, в каком порядке изучать Java, чтобы начать свой путь в разработке и стать востребованным специалистом в 2023 году.

#новость
4🔥1
Продолжаем формат поста: «Вопросы-ответы для собеса».

Ошибка, дефект, сбой, отказы - различия
Ошибка (error , mistake) — действие человека, приводящее к некорректным результатам.
Дефект (defect, bug, problem, fault) — недостаток в компоненте или системе, способный привести к ситуации сбоя или отказа.
Дефекты могут быть в документации, настройках, входных данных и т.д.
Сбой — самоустраняющийся отказ или однократный отказ, устраняемый незначительным вмешательством оператора.
Отказ — событие, заключающееся в нарушении работоспособного состояния объекта.
Сбои и отказы являются тем, что тестировщик замечает в процессе тестирования и отталкиваясь от чего, проводит исследование с целью выявить дефект и его причины.

Верификация и валидация - различия
Верификация — проверка соответствия приложения прописанным требованиям.
Валидация — проверка соответствия приложения всем остальным (подразумеваемым) требованиям.

При валидации тестируется полная работоспособность отмеченной функциональности.
При верификации проверяется наличие в продукте этой логики (параметров взаимодействия компонентов).

Простой способ запомнить разницу между валидацией и верификацией заключается в том, что валидация подтверждает, что «вы создали правильный продукт», а верификация подтверждает, что «вы создали продукт таким, каким и намеревались его сделать».

Жизненный цикл тестирования (STLC)
Жизненный цикл тестирования — это последовательность действий, проводимых в процессе тестирования, с помощью которых гарантируется качество программного обеспечения и его соответствие требованиям. STLC включает действия по верификации и валидации.
ЭТАПЫ ЖИЗНЕННОГО ЦИКЛА ТЕСТИРОВАНИЯ:
🔹 Планирование и анализ требований. Важно хотя бы найти ответы на такие вопросы, как: что нужно тестировать, какой объем работы ожидается, какие трудности возникнут во время работы и т.д.
🔹 Критерии ввода. Вы формулируете или указываете критерии ввода (чтобы определить, когда можно или необходимо начинать процесс тестирования ПО), критерий приостановки, и критерий прекращения тестирования.
🔹 Стратегия тестирования. Старший QA-менеджер определяет затраты и усилия на работу над проектом и готовит тест-план для всех видов тестирования.
🔹 Разработка тест-кейсов. Тест-кейсы создаются, разрабатываются, проверяются и перерабатываются. Также, этот этап включает в себя создание, пересмотр и переработку тестовых данных.
🔹 Установка среды. Выполняется одновременно с этапом разработки тест-кейсов. Она определяет аппаратные и программные условия, при которых тестируется продукт.
🔹 Выполнение тестов.
🔹 Завершение цикла тестирования.

Нет фиксированного стандарта жизненного цикла тестирования. Он может меняться в зависимости от:
- Жизненного цикла разработки.
- Желаний руководства.

#туториал
👏97
🐞🪲🌍 Real-World Bug Hunting: A Field Guide to Web Hacking

Поиск ошибок в реальном мире — это главное практическое руководство по рассмотрению программного обеспечения. Независимо от того, являетесь ли вы новичком в области кибербезопасности, который хочет сделать Интернет безопаснее, или опытным разработчиком, который хочет писать безопасный код, этичный хакер Питер Яворски покажет вам, как это делается.

В каждой главе описывается тип уязвимости, сопровождаемый серией фактических сообщений об ошибках. Сборник рассказов из этой книги научит вас, как злоумышленники обманом заставляют пользователей выдавать свою конфиденциальную информацию и как сайты могут раскрыть свои уязвимости опытным пользователям. Вы даже узнаете, как вы могли бы превратить свое новое сложное хобби в успешную карьеру.

В книге поднимаются вопросы:
Как работает интернет и основные концепции взлома веб приложений
Как злоумышленники компрометируют веб-сайты

Книга

#обучение
👍5👏1
🤔 Очередной #дайджест по QA

📌 Большой гайд по тестированию с Postman для начинающих — покроет большинство сценариев в вашей повседневной работе
📌 Testify meet up — митапа об особенностях тестирования ПО в разных сферах бизнеса
📌 Selenium with Java — книга про настройки среды для написания тестовых сценариев с Selenium
📌 Сказ о том, как я собеседования проводила — советы не о том, как достойно его пройти, а как быть нормальным интервьюером
📌 Как попасть в IT и не сгореть от тревог, неудач и синдрома самозванца — в видосе Доктор Кот объясняет природу страхов испытательных сроков, сравнения себя с другими, а также боязнь собеседований
👍54
Что позволяет автоматизировать функциональное и регрессионное тестирование приложений?
Anonymous Quiz
2%
Flask
79%
Selenium
5%
QTP
15%
QA-программирование
4👍2
🛠️📃 Интеграция Jenkins и генерация отчетов с использованием Selenium 4

Selenium используется для тестирования и автоматизации веб-приложений. Мы можем запускать наши тесты с помощью инструментов CI/CD, таких как Jenkins.

Почему требуется интеграция с Jenkins?

Автоматизация тестирования помогает выявлять постоянные дефекты, ошибки и баги на как можно более ранней стадии. Чем раньше будет обнаружена проблема, тем дешевле ее устранить.
Благодаря интеграции CI / CD можно запускать тесты после каждой сборки или через определенный промежуток времени, что поможет выявить любые проблемы.
Всегда быстрее вручную протестировать сервис или запустить регрессию, поскольку все будет запускаться автоматически без человеческого фактора.
Таким образом, мы можем видеть, проходят ли какие-либо тесты с ошибкой или нет. В случае сбоя они могут быть легко исправлены.

Требования:

Jenkins
JDK
Maven
Selenium project

Подробнее читайте тут

#гайд
👍234🔥2
Продолжаем формат поста: «Вопросы-ответы для собеса».

Cookie and Cash (отличия)
Файлы cookie – это файлы, создаваемые веб-сайтами, которые вы посещаете. Они делают работу в Интернете проще и удобнее.
В cash-памяти сохраняется определенная информация с веб-страниц (например, изображения), чтобы в следующий раз они открывались быстрее.

Тестирование в режиме ингогнито
Режим "инкогнито" доступен в Chrome, Firefox, Edge, Safari, и Internet Explorer. Он дает возможность открыть одноразовую сессию браузера, которая теряет свои настройки и временные файлы после закрытия. Такой режим идеален для тестирования ситуаций, для которых хранение информации не так уж важно. Имейте в виду, что все инкогнито-окна одного браузера делят между собой одну и ту же сессию. К примеру, временные файлы делятся между активными окнами браузера, открытыми в режиме инкогнито.

Протоколы
IP — Internet Protocol. Главная задача IP — маршрутизация датаграмм, то есть речь идет об определении пути следования данных по узлам сети. Он ненадежен — не подтверждает доставку пакетов получателю, как и не контролирует целостность данных. Передача данных происходит без установки соединения.
TCP/IP — Transmission Control Protocol/Internet Protocol. Обеспечивает и контролирует передачу данных и следит за надежностью и целостностью. IP отвечает за маршрутизацию. Протокол TCP нередко используется другими, более комплексными протоколами.
UDP — User Datagram Protocol. Обеспечивает передачу данных, не создавая предварительного соединения между ними. Считается недостаточно надежным, т. к. пакеты могут не только не дойти, но и продублироваться либо прийти не по порядку.
Но есть и преимущество: скорость доставки данных. Именно поэтому в приложениях, особо чувствительных к сетевым задержкам, нередко применяют UDP.
FTP — File Transfer Protocol. Служит для передачи файлов. Он и сегодня используется при организации удаленного доступа к хостингам. Надежен, гарантирует передачу данных, функционирует по принципу клиент-серверной архитектуры. Для работы с файловой системой сервера пользователь проходит аутентификацию (анонимный вариант тоже возможен), после чего получает доступ.
DNS. Представляет собой не только систему доменных имён (Domain Name System), но и протокол, без которого данная система работать бы не смогла. Протокол дает возможность клиентским компьютерам запрашивать у DNS-сервера IP-адрес какого-нибудь сайта, плюс он помогает осуществлять обмен БД между серверами DNS.
HTTP — HyperText Transfer Protocol. Поначалу это был протокол передачи HTML-документов. Сейчас он задействуется в целях передачи произвольных данных в сети. Считается протоколом клиент-серверного взаимодействия без сохранения промежуточного состояния. В качестве клиента обычно выступает web-браузер, хотя это может быть и поисковый робот. При обмене информацией протокол HTTP чаще всего использует TCP/IP.
Протокол HTTP имеет расширение HTTPS, поддерживающее шифрование. В нем данные уже передаются поверх криптографического протокола TLS.
NTP — Network Time Protocol. Протокол NTP служит для синхронизации локальных часов устройства со временем в глобальной/локальной сети. NTP задействует алгоритм Марзулло, в результате чего выбирается наиболее точный источник времени. А еще NTP работает поверх UDP, что позволяет ему достигать максимальной скорости передачи данных.
SSH — Secure SHell. Обеспечивает удаленное управление ОС с применением TCP. В SSH шифруют весь трафик, при этом сохраняется возможность выбора алгоритма шифрования. Это необходимо для передачи паролей и прочей важной информации.

#обучалка
👍10🔥53🤔1
2025/07/12 20:38:21
Back to Top
HTML Embed Code: