📚 ProTestingInfo 🔷 Канал по тестированию 📚 – Telegram
📚 ProTestingInfo 🔷 Канал по тестированию 📚
14.1K subscribers
1.31K photos
200 videos
232 files
1.18K links
📌Информация для начинающих и для коллег в области QA, для личного закрепления знаний.
📌Теория, тесты, практика
Ментор-Консультация - 5тр/час
Курс
@info_course_protestinginfo
https://protestinginfo.ru
Вопросы @nadin_qa
ИП
РКН: https://clck.ru/3FWD9v
Download Telegram
Forwarded from Yoll_QA
Немножко про Firebase

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

Через Firebase можно просматривать различные данные:

☘️ Обновление баз данных в реальном времени (Firestore и Realtime Database)

☘️ Данные об аутентификации пользователей

☘️ Аналитические данные о поведении пользователей (Firebase Analytics)

☘️ Логи производительности и ошибок (Crashlytics)

☘️ Конфигурационные данные (Remote Config)

Я работаю с Firebase в контексте мобильной разработки. И чаще всего пользуюсь следующими инструментами:

🌿 Crashlytics: помогает удобно просматривать краши как во время тестирования, так и после релиза

🌿 Performance Monitoring: для анализа производительности приложения

🌿 Firebase Analytics: для тестирования событий аналитики

Плюсы и минусы Firebase:
Плюсы:
🌵 Легкость интеграции: Простота интеграции и быстрота развертывания

🌵 Масштабируемость: Поддержка масштабирования приложений с ростом числа пользователей

🌵 Реальное время: Мгновенное обновление данных в приложении благодаря базе данных в реальном времени

🌵 Широкий функционал: Множество инструментов для аналитики, аутентификации, хостинга и других задач.

Минусы:
🌵 Зависимость от Google: Потенциальная зависимость от экосистемы Google и изменений в их политике (особенно актуально для компаний из РФ)

🌵Стоимость: Бесплатный тариф ограничен, и при росте приложения стоимость услуг может значительно увеличиться

🌵Ограниченные возможности запросов: В некоторых случаях сложные запросы к базе данных могут быть ограничены по функционалу и скорости

Конечно же, на любое ПО есть разные аналоги, Firebase не исключение:

🪴 AWS Amplify: Платформа от Amazon, предоставляющая инструменты для создания и хостинга мобильных и веб-приложений

🪴 Microsoft Azure: Облачная платформа, предлагающая множество сервисов для разработки и развертывания приложений

🪴 Backendless: Бэкенд-платформа, предлагающая широкий спектр услуг, таких как базы данных, файловое хранилище и пользовательское управление

🪴 Parse: Открытый исходный код бэкенда для мобильных приложений, который можно хостить самостоятельно.

Надеюсь, данная заметка будет полезна хотя бы в контексте ознакомления с новыми инструментами)
🔥104
Расскажите правильный порядок следующих видов тестирования после раскатки сборки на стенд с новыми фичами и минорными дефектами.

К видам тестирования связанными изменениями относятся:
- Смоук-тестирование
- Регрессионное тестирование
- Ре-тест (повторное или подтверждающее тестирование)
- Санитарное тестирование
- Тестирование новой функциональности
А также тестирование сборки.

Мой ответ таков, а вы если, что дополняйте.
После раскатки нового билда на тестовый стенд мы сначала проводим смоук-тестирование, затем санитарное тестирование (хотя на проектах это тестирование не используется осознанно😁 и в целом можно не проводить или проводится бессознательно), потом проводим тестирование новой функциональности, и все же если в сборке есть дефект высшего приоритета чем приоритет новой фичи, то проводим сперва ретест, а затем тестирование new feature.
Проверили новую функциональность, выполняем повторное тестирование (ретест) минорных дефектов или дефектов приоритета ниже приоритета новой фичи, и уже потом заканчиваем регрессионным тестированием.

Такой мой ответ для собеса.
А какой ответ будет у вас?

#собеседование

Разбор вопросов и тестовых заданий … to continue…😀
Please open Telegram to view this post
VIEW IN TELEGRAM
101🔥38👍75
This media is not supported in your browser
VIEW IN TELEGRAM
Локализация бага:

Задача на локализацию бага: к примеру пользователь вводит почту, а экран белый? Как быть, твои действия

ИЛИ

При открытии сайта отображен белый экран - ваши действия?

Я напишу свои рассуждения, а вы дополняйте.

Хочу предложить варианты решения на данный вопрос про локализацию бага:
Первым делом!
🐞- очистить кэш и куки
А потом уже другие варианты🐞:
🐞- перейти на страницу chrome://settings/system и выключить аппаратное ускорение.
🐞- установить необходимые сертификаты для работы
🐞- уточнить у разработчиков на изменение хостов или обратиться к разработке на изменение кода или эндпойнтов
🐞- проанализировать логи в console DevTools
🐞- просмотреть сетевые запросы в network Devtools
🐞- проверить интеграцию с БД
🐞- открыть «Просмотр кода страницы» и запустить любой .js файл, и затем обновить тестируемую страницу
🐞- просмотреть логи сервера
🐞- просмотреть логи проекта / пода в консоли опеншифта
🐞- проанализировать логи в кибане, sentry, graylog, grafana, если есть эти инструменты на проекте
🐞- коммуницировать с командой на наличие возможного обновления требований

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

Главное помните, что на собесах ждут ваших рассуждений, а не точного верного ответа.
Главное не молчать, а генерировать идеи!

Разбор вопросов будет продолжаться на @protestinginfo

Такой вопрос я задавала в рефлексии на курсе по тестам, который стартанет в июле.

#собеседование
Please open Telegram to view this post
VIEW IN TELEGRAM
54650🔥21👍12💋2
Всем привет!
Хочу порекомендовать прочитать статью на хабре, которая мне понравилась:

Методы тестирования веб-API, которые должен знать каждый: чек-листы для начинающих

Здесь вы ознакомитесь с:
- Разделением тестирования: фронтенд vs бэкенд;
- Спецификой тестирования API;
- Типами тестирования;
- Позитивными и негативными тестами;
- Тестированием API на производительность;
- Тестированием сценариев.


А также хочу напомнить про свою статью:
💙Шаблоны тест-кейсов по API, тест-кейсы по идемпотентности
и посмотреть видео
Стратегия написания тест-кейсов по API
Please open Telegram to view this post
VIEW IN TELEGRAM
31🔥11💯1
Порой моим менти задают вопрос на собесе:
Назовите принципы REST (или ограничения для построения распределённых REST-приложений по Филдингу.)

Ответ:
Есть шесть принципов, на которых строится REST:
- клиент-серверная модель,
- отсутствие состояния,
- кэширование,
- единообразие интерфейса,
- многоуровневая система,
- код по требованию.

Так вот, перечислить, то легко, а вот пояснить сложно. А в Википедии заумно написано, что многим также сложно понять (см. пункт “Требования к архитектуре REST”).

Хочу порекомендовать просмотреть это
ВИДЕО, где четко и понятно рассказаны принципы REST автором канала Свят404.

01:08 - Client-Server
01:30 - Stateless
02:10 - Cache
02:33 - Uniform Interface
02:55 - Identification of resources
03:27 - Manipulation of resources through representations
03:54 - Self-denoscriptive messages
04:37 - Hypermedia as the engine of application state
05:24 - Layered System
06:20 - Code on Demand

+ посмотрите видео про клиент-сервер архитектуру простыми словами.

@protestinginfo
30🔥16👍6👀1
REST.pdf
8.1 MB
+ сама шпаргалка

Размещено на канале: @protestinginfo
🔥29🤝6👍1👏1
Разбор вопросов из нельзяграма (подписаться на аккаунт Protestinginfo)

Подписчице задали такой вопрос на
Локализацию бага:
⁉️Тестировщик в Postman через post создаёт пользователя (email и пароль), а ему приходит 200 статус код и пустой json.

А точно ли это баг?
Я считаю, что это нормальное поведение, если под пустым json понимается, что нет тела ответа от сервера. На скрине отображено нормальное поведение, и все же хотелось бы, чтоб был 201 статус код, например, документация без тела ответа от сервера "Code - 201; Denoscription - User has been registered and expects confirmation by e-mail"

Но если будет действительно пустое тело ответа от сервера как {} или ключи имеют значения null, то по сути это дефект, и здесь нужно провести локализацию бага.
Смотрим документацию и проверяем значения в таблице БД.

Помните ваша задача на собесе рассуждать, задавать вопросы интервьюеру.

Сперва я укажу ответы подписчиков:
▪️- Самый главный ответ, что дефект на бэкенде.
▪️- Обычно при создании пользователя приходит статус код 201.
▪️- Пустой json - это некорректный ответ от сервера.

Я скажу так, что эти ответы не относятся к локализации бага.

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


На помощь к ответу пришел Женя (канал Про Мир ИТ) и прочитайте его рассуждения.
У меня возникает два вопроса:
1. Какое апи?
2. Возвращается именно пустой json? Не пустой body, а именно json?

Если именно пустой json то вероятно да дефект.
Если просто пустое бади, то не факт.
Если это банальный REST то там жестких правил нету. Можно сделать POST запрос, где будет 200 статус код и пустое тело в ответе. И ничего криминального в этом не будет.

Я бы в первую очередь обратился к документации. Чтобы понять - а как должно быть? Прелесть апи в том, что по-любому документация есть. Даже если нет её в привычном понимании - есть реализованный код, в котором запрограммировано поведение, там указано и какой код ответа должен возвращаться и что должно возвращаться в теле ответа.

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

Статус код 201 в коде прописывается тут локализовать нечего.

Пустой json: идем в БД проверить, что запись создалась корректно. Если БД допускает null значения, то запись могла создаться с пустыми значениями. Если запись есть, но поля пустые - идем в логи и смотрим, что произошло в момент записи в БД.
Если запись корректна - то идём в логи смотреть что произошло когда апи "забирал" данные из БД.


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

Основные действия по локализации:
🔹- еще раз посмотреть имеющиеся требования на проекте;
🔹- в данном задании используется Postman, тогда просмотреть логи в console Postman;
🔵- проверить интеграцию с БД, просмотреть созданную запись пользователя в БД, и по-моему мнению, что была проблема в БД, вероятно, несоответствие типов данных или размера или длины значений данных;
🔹- присмотреть логи на сервере, или в других имеющихся инструментах по сбору логов на сетевые ошибки, недоступность или некорректная конфигурация систем;
🔹- также не исключаем: уточнить информацию на обновления кода в системе у разработчика / на обновления требований у аналитика - взаимодействовать с командой;
🔹- возможно, что здесь есть интеграция с другим сервисом и посмотреть доступность другого внешнего сервиса.

Работая инженером по тестированию важно научиться предугадывать ошибки, уметь читать и анализировать логи, тем самым навык локализации багов возрастет.

А также этот вопрос на проверку, вероятно, это не дефект, а вы начнете «копать» не в ту сторону 😁.
Добавляйте свои рассуждения.
А разбор вопросов буду продолжать.
@protestinginfo
и жду ваши реакции❤️✍️🔥, реакции еще больше мотивируют делиться с полезной информацией🥰
Please open Telegram to view this post
VIEW IN TELEGRAM
❤‍🔥48👍146🔥6🆒2
SQL.pdf
247.6 KB
А еще есть крутая шпаргалка, которую мне прислала коллега! 😏

Сохраняем, пользуемся и делимся с другими!
С вас реакция ❤️

Заметки тестировщика
🔥61❤‍🔥19👍91
В дискуссиях на тему soft skills периодически упоминают умение просить помощи у коллег.

В случае сложностей возникает дилемма, как быть? Бежать за помощью немедленно? Пробовать решить проблему самому?

Если бежать за помощью немедленно:
- высокая вероятность быстро получить помощь и устранить проблему. Высокая потому что нет 100% гарантии, что у коллеги уже есть готовое решение. Иногда приходится обращаться к нескольким. Как правило проблема будет решена.
- НО: этот подход имеет и свои недостатки
- приходится отрывать коллег от работы
- не нулевая вероятность того, что никто не сможет помочь и проблему придется в итоге решать самому
- отсутствие образовательного эффекта, так как в целях экономии собственного времени коллеги не объясняют детали, а дают готовое решение

Если пытаться найти решение самому:
- с помощью документации, google, ChatGPT и тд можно найти решение самому не отвлекая коллег
- образовательный эффект за счет глубокого погружения а проблему, нахождения вариантов решения, проб и ошибок
- НО: и здесь есть недостатки
- нет гарантии, что проблему удастся решить самому и и в итоге все равно придется обращаться к коллегам
- есть риск зарыться и потратить непозволительно большое время на поиск решения. То, на что с помощью коллеги ушло бы минут десять, при самостоятельном решении может занять час-полтора и больше в зависимости от проблемы
👍13🔥53🍌1
Как_задать_вопрос.pdf
721.1 KB
А также и это рекомендую почитать схема-шаблон правильного ответа, взято из видео

Сохранено на @protestinginfo
🔥219👨‍💻2👍1
Всем привет!
Статья требует вашего прочтения 😄

Читать:

Сложно о простом. Модель OSI и TCP/IP

На собесе порой спрашивают про TCP/IP.
🔥17👍73🤝21
📚 ProTestingInfo 🔷 Канал по тестированию 📚 pinned «Коллеги, буду благодарна вашим голосам для сторис - напоминаний на полезный контент: https://news.1rj.ru/str/boost/protestinginfo»
У меня тоже есть план набрать 11111 подписчиков и снова сделаю подарок-розыгрыш.😁
🆒15👀7👍53💯1
📚 ProTestingInfo 🔷 Канал по тестированию 📚 pinned «У меня тоже есть план набрать 11111 подписчиков и снова сделаю подарок-розыгрыш.😁»
​​Вопросы, которые любят задавать на собеседовании не только на роль BA/SA, но и на роль QA Engineer.
Сохраняйте полезный пост 😎 и необходимые ссылки.
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥7👌31👨‍💻1
​​Алоха! Сегодня продолжаем разбирать вопросы, которые любят задавать на собеседовании на роль BA/SA и продолжим тему про работу с базами данных и поговорим именно об SQL:

#вопросыссобеседования

Часть 7:

Данную тему очень часто затрагивают на собеседованиях и спрашивают как теорию, так и просят что-либо показать на практике, поэтому нашла пару статей👇🏼, где уже отмечены вопросы с ответами по теме sql:
📌 27 распространённых вопросов по SQL с собеседований и ответы на них
📌 Топ-30 вопросов по SQL на технических собеседованиях:
- Часть 1
- Часть 2
📌 20 вопросов и задач по SQL на собеседовании с ответами
📌 50 популярных вопросов и ответов на собеседовании по SQL Server

Также исходя из опыта и прочитав разные статьи выделю несколько вопросов, которые практически всегда задают на собеседовании:

📍Вопрос 1: Какие есть операторы SQL

Краткий ответ:
DDL (Data Definition Language, язык описания данных) - это группа операторов определения данных, в нее входят такие операторы как:
- CREATE
- ALTER
- DROP
DML (Data Manipulation Language, язык управления данными) - это группа операторов для манипуляции данными, в нее входят такие операторы как:
- SELECT
- INSERT
- UPDATE
- DELETE
DCL (Data Control Language, язык контролирования данных) - группа операторов определения доступа к данным, в нее входят такие операторы как:
- GRANT
- REVOKE
- DENY
TCL (Transaction Control Language, язык управления транзакциями) - группа операторов для управления транзакциями, в которую входят такие операторы как:
- BEGIN TRANSACTION
- COMMIT TRANSACTION
- ROLLBACK TRANSACTION
- SAVE TRANSACTION

📎Материалы по теме:
- Основные команды SQL, которые должен знать каждый программист

📍Вопрос 2: Какие есть типы соединения в SQL

Краткий ответ:
Для соединения двух таблиц используют оператор JOIN. Соединение может быть внутренним (INNER), внешним (OUTER), которое в свою очередь может быть левым (LEFT), правым (RIGHT) и полным (FULL).

Рассмотрим чуть подробней каждое из них:
- INNER JOIN - объединяет записи из двух таблиц по связующему полю, если оно содержит одинаковые значения в обеих таблицах
- FULL OUTER JOIN - возвращает все записи, для которых есть совпадение в любой из таблиц. Следовательно, он возвращает все строки из левой таблицы и все строки из правой таблицы
- LEFT JOIN - используется для возврата всех строк из левой (первой) таблицы и только совпадающих строк из правой (второй) таблицы, для которых выполняется условие соединения
- RIGHT JOIN - используется для возврата всех строк из правой (второй) таблицы и только совпадающих строк из левой (первой) таблицы, для которых выполняется условие соединения

📎Материалы по теме:
- Соединение таблиц – операция JOIN и ее виды
- SQL JOIN - соединение таблиц базы данных

📍Вопрос 3: Что такое SQL-ограничения (Constraints) и какие они бывают?

Краткий ответ:
Ограничения (constraints) используются для указания ограничения на тип данных таблицы. Они могут быть указаны при создании или изменении таблицы

Примеры ограничений:
- NOT NULL - значение не может быть NULL
- CHECK - значения столбца должны соответствовать заданным условиям
- DEFAULT - предоставляет столбцу значения по умолчанию
- UNIQUE - гарантирует уникальность значений в столбце
- INDEX — создаёт индексы в таблице для быстрого поиска/запросов
- PRIMARY KEY - требует, чтобы каждая запись в данном столбце была уникальной и не равнялась NULL
- FOREIGN KEY - требует, чтобы каждая запись в данном столбце уже существовала в определенном столбце из другой таблицы

📎Материалы по теме:
- SQL Создание ограничений
- Основы работы с ограничениями SQL

Источник: @ba_and_sa
#собеседование

‼️Предыдущие части смотрите по #собеседование #вопросыссобеседования

p.s.Делитесь своими мыслями в комментариях и напишите, какие вопросы были у вас на собесах
👍14💯72👨‍💻2🆒2
Forwarded from Надежда Дудник
Закрепление знаний по SQL😄

Оператор UPDATE относится к…
Anonymous Quiz
52%
DML
25%
DDL
10%
DCL
12%
TCL
🌚10👌2🤣2🔥1