Завдання дня для QA:
Вам треба протестувати, що після входу в пошту, клієнт коректно завантажує всі непрочитані листи: Який із протоколів за це відповідає?
Вам треба протестувати, що після входу в пошту, клієнт коректно завантажує всі непрочитані листи: Який із протоколів за це відповідає?
Anonymous Quiz
53%
(A) SMTP
12%
(B) FTP
30%
(C) IMAP
5%
(D) DNS
👀4❤3
Bug or Defect?
Завдання дня для QA:
Ви тестуєте вебдодаток, і після деплою на нову інфру QA-середовище раптово не відкривається. Dev каже, Та DNS ще не оновився.
Ви тестуєте вебдодаток, і після деплою на нову інфру QA-середовище раптово не відкривається. Dev каже, Та DNS ще не оновився.
Доброго вечора друзі) як ваш день?
Давайте розберемо цей пул коротенько - статистика цікава і зрозуміло чому така
Ну що я маю вам сказать
Чому це не (A)
Ping по домену справді може допомогти, якщо DNS уже оновився. Але якщо ні, тут отримаєте просто помилку, і не дізнаєшся нічого нового.
Пінг може бути заблокований на сервері, і це не означає, що сервіс не працює.
І чому не (С)
Перевірка у браузері надто загальний спосіб. Побачите не відкривається і що далі робити? Це може бути DNS, TLS, backend, що завгодно.(
І так чому не (D) але він в топі по відповідям
Очистити DNS-кеш так це має сенс, але лише після того, як переконався, що DNS уже оновився. Або якщо бачиш, що твій ПК кешує стару адресу
Ну і чому же все таки правильна відповідь (B)
Виконати nslookup або dig це найкращий перший крок, чого спитаєте? ці команди покажуть, куди саме резолвиться домен, чи оновився запис, і з якого DNS-сервера йде відповідь.
А вже після можна і пінгнути, і кеш почистити, і в браузер піти. Але спочатку голова, потім дії
Всім гарного вечора, головне спокійного)
Обняв 🤗🤗🤗
Давайте розберемо цей пул коротенько - статистика цікава і зрозуміло чому така
Ну що я маю вам сказать
Чому це не (A)
Ping по домену справді може допомогти, якщо DNS уже оновився. Але якщо ні, тут отримаєте просто помилку, і не дізнаєшся нічого нового.
Пінг може бути заблокований на сервері, і це не означає, що сервіс не працює.
І чому не (С)
Перевірка у браузері надто загальний спосіб. Побачите не відкривається і що далі робити? Це може бути DNS, TLS, backend, що завгодно.(
І так чому не (D) але він в топі по відповідям
Очистити DNS-кеш так це має сенс, але лише після того, як переконався, що DNS уже оновився. Або якщо бачиш, що твій ПК кешує стару адресу
Ну і чому же все таки правильна відповідь (B)
Виконати nslookup або dig це найкращий перший крок, чого спитаєте? ці команди покажуть, куди саме резолвиться домен, чи оновився запис, і з якого DNS-сервера йде відповідь.
А вже після можна і пінгнути, і кеш почистити, і в браузер піти. Але спочатку голова, потім дії
Всім гарного вечора, головне спокійного)
Обняв 🤗🤗🤗
3👍10❤🔥5⚡1👏1
This media is not supported in your browser
VIEW IN TELEGRAM
Я не міг це не закинути)
Підняти вам настрій на вечір - хтось себе взнав??? 🫣🫣🫣
Підняти вам настрій на вечір - хтось себе взнав??? 🫣🫣🫣
2😁11💯5🔥2🤣2😎1
Bug or Defect?
Завдання дня для QA:
Вам треба протестувати, що після входу в пошту, клієнт коректно завантажує всі непрочитані листи: Який із протоколів за це відповідає?
Вам треба протестувати, що після входу в пошту, клієнт коректно завантажує всі непрочитані листи: Який із протоколів за це відповідає?
Друзі, всім доброго раночку ☀️☀️☀️
Просто хотів вам побажати продуктивного дня хай баги самі стають у backlog, а фічі працюють з першого разу
А поки ви з кавою або дорогою на роботу, коротенько про протоколи, повертаючись до недавнього пулу ☝️
Це не просто терміни це ті штуки, які або економлять тобі час, або крадуть його, якщо не знаєш)
Гарного дня і мінімум фрустрації сьогодні!
Обняв 🤗
Просто хотів вам побажати продуктивного дня хай баги самі стають у backlog, а фічі працюють з першого разу
А поки ви з кавою або дорогою на роботу, коротенько про протоколи, повертаючись до недавнього пулу ☝️
Це не просто терміни це ті штуки, які або економлять тобі час, або крадуть його, якщо не знаєш)
Гарного дня і мінімум фрустрації сьогодні!
Обняв 🤗
2❤20🔥7🤗2
Завдання дня для QA: (2 Варіанта)
Тестуєте логін перекидає на дашборд, а там старі дані, як до логіна. Ніби не той юзер, або взагалі інша сесія. Дивишся API повертає правильне, а UI показує кашу: Що з цього може бути реальною причиною?
Тестуєте логін перекидає на дашборд, а там старі дані, як до логіна. Ніби не той юзер, або взагалі інша сесія. Дивишся API повертає правильне, а UI показує кашу: Що з цього може бути реальною причиною?
Anonymous Poll
50%
(A) Компонент кешує старий state
42%
(B) Куки не оновились після логіна
62%
(C) Браузер тримає старий localStorage
8%
(D) Виник race condition між запитами
11%
(E) У бекенда затримка в записі даних
❤8🔥3
Всім доброго вечора) як ваш день?
Мене переодично питають про відкритий API і сам іноді шукаю коли оновлює практичний курс для учнів - то тримайте цю круту міні шпагралку по сервісам)
Не тули, відкриті API, які реально можна юзати для QA-практики.
Це не демо-сервіси з курсів, а живі штуки з авторизацією, фільтрами, обробкою файлів, датами, статус-кодами все, що треба для нормального API-тестування.
Можна ганяти через Postman, curl або писати автотести ці API дають все, від музики та погоди до розпізнавання файлів і фоток з космосу )
То тримайте - якщо цікаво було і зайшло чи знаєте то серденько повинно світитися)
Всім гарного вечора!
Мене переодично питають про відкритий API і сам іноді шукаю коли оновлює практичний курс для учнів - то тримайте цю круту міні шпагралку по сервісам)
Не тули, відкриті API, які реально можна юзати для QA-практики.
Це не демо-сервіси з курсів, а живі штуки з авторизацією, фільтрами, обробкою файлів, датами, статус-кодами все, що треба для нормального API-тестування.
Можна ганяти через Postman, curl або писати автотести ці API дають все, від музики та погоди до розпізнавання файлів і фоток з космосу )
То тримайте - якщо цікаво було і зайшло чи знаєте то серденько повинно світитися)
Всім гарного вечора!
4❤🔥25👍7🔥7❤4
Друзі, всім привіт!
Сподіваюсь, у вас усе добре і ви в безпеці ☀️
Мене часто питають учні
«Та шо ти там знову з тою кавою? По 3 рази на день п’єш?»
Так! Бо мій ранок, це стабільно кава, балкон, новини і вид на місто.
Коротше, класичний ритуал, без якого я не я.
Ось вам і шматок мого ранку
А як у вас?
Якщо не важко, зробіть фото свого ранку з каналом кавуська, ноут, ранковий світ що завгодно.
Було б дуже круто розфорсити отаку ранкову культуру серед наших QA 😄
А так з вас сонечко або серденько)
Всім гарного, продуктивного і спокійного дня.
Тримаємось, працюємо, вчимось і не забуваємо відпочивати.
Сильні 💪 Обняв!
Сподіваюсь, у вас усе добре і ви в безпеці ☀️
Мене часто питають учні
«Та шо ти там знову з тою кавою? По 3 рази на день п’єш?»
Так! Бо мій ранок, це стабільно кава, балкон, новини і вид на місто.
Коротше, класичний ритуал, без якого я не я.
Ось вам і шматок мого ранку
А як у вас?
Якщо не важко, зробіть фото свого ранку з каналом кавуська, ноут, ранковий світ що завгодно.
Було б дуже круто розфорсити отаку ранкову культуру серед наших QA 😄
А так з вас сонечко або серденько)
Всім гарного, продуктивного і спокійного дня.
Тримаємось, працюємо, вчимось і не забуваємо відпочивати.
Сильні 💪 Обняв!
3❤🔥18🔥11👍4😇1🤗1
Завдання дня для QA:
Тестуєте логін, форма є, запит йде, але замість відповіді з токеном, 404 або взагалі HTML-сторінка. Дев каже: Все працює, бек живий А ти дивишся ні, не живий.
Тестуєте логін, форма є, запит йде, але замість відповіді з токеном, 404 або взагалі HTML-сторінка. Дев каже: Все працює, бек живий А ти дивишся ні, не живий.
Anonymous Quiz
20%
(A) API ще не запущений
54%
(B) Запит йде не туди через NGINX
22%
(C) Не переданий токен
4%
(D) Заглючив браузер
👀10❤1
Всім доброго вечора друзі)
Щось давно не було!
Вечірня історія QA. Як перевірити, чи проект світиться назовні і заробити плюсик в репутацію.
ну що я маю вам сказати.
Повертаємось до теми безпеки. І якщо ви QA, який не просто клікає кнопки, а хоче розуміти, що реально з проектом ця історія для вас.
Сьогодні поділюсь одним лайфхаком з реальної практики.
І якось прочитав я статтю, що іноді деви залишають службові файли десь у публічному доступі, просто не подумавши.
Задача яка перевірити, чи проект відкриває щось зайве через nginx. якщо якась службова інфа світиться зовні, це реальна дірка.
І я вирішив це перевірити
і так був файл який реально світиться зовні в якому інфа про версіі, номера сертифікатів і т.д до той чи іншой інфи) в нашому випадку той файлик не велику інфу несе і його прикрили) але це могло чи у вас може буди важливим)
Суть яка
Береш якийсь умовний, непримітний файл. Називаєш його скажімо,
Далі, пробуєш просто постукати по порту напряму.
Наприклад, у вас девсервер був на
, і пробуйте
І Якщо
200 OK. І пішов контент.
то цей лог доступний зовні. Просто валяється під руками, без авторизації, прямо через NGINX.
Це не баг у коді. Це неправильна конфігурація nginx. просто забули закрити або прибрати шлях у location.
І от тут ви вже не просто QA, а той, хто потенційно врятував реліз від зливу інфи.
А тепер ще цікавіше: .git/
я часто читаю шо деви особливо не опетні забувають прятати .git, і ви можете це перевірити не відкрита службова папка .git/ (а вона часом випадково заливається разом із кодом).
просто зробіть
І якщо знову 200 OK і у відповідь прийшов вміст git-конфігу з remote URL, ім'ям розробника, і навіть ssh-ключем (true story 🫣). то це просто провал)
Це реальна загроза, бо
- відкривають структуру репозиторію, через них можна відновити весь код і навіть знайти секрети, які колись хтось пушнув
як перевірити, що шось лишнє світиться,
Найпростіше через curl
Умовно
Можете перевірити ще кілька
Якщо щось дає 200 OK бігом в чат з девами
Чому це важливо для QA?
Бо іноді найкращий тест це просто подивитись трохи глибше. Ти можеш реально знайти вразливість, яка обійде всі UI-тести, не вилізе в CI. і яку ніхто навіть не шукав
А ти взяв і знайшов і тебе вже хвалять)
Поінт від мене простий
Навіть не будучи сек'юріті інженером, ви можете знаходити великі речі. Просто треба розуміти, що і навіщо перевіряти.
Такі штуки це реальний плюс до твоєї репутації як QA.
якщо хочете окрему шпаргалку по типових шляхах, які треба перевірити чекаю від вас ❤️
а вообще спробуйте шо у вас і напешіть в коментарях шо вийшло або ви про це взнали і перевіряєте це вже давно)
Бажаю вам гарного вечора!
Обняв 🤗
Щось давно не було!
Вечірня історія QA. Як перевірити, чи проект світиться назовні і заробити плюсик в репутацію.
ну що я маю вам сказати.
Повертаємось до теми безпеки. І якщо ви QA, який не просто клікає кнопки, а хоче розуміти, що реально з проектом ця історія для вас.
Сьогодні поділюсь одним лайфхаком з реальної практики.
І якось прочитав я статтю, що іноді деви залишають службові файли десь у публічному доступі, просто не подумавши.
Задача яка перевірити, чи проект відкриває щось зайве через nginx. якщо якась службова інфа світиться зовні, це реальна дірка.
І я вирішив це перевірити
і так був файл який реально світиться зовні в якому інфа про версіі, номера сертифікатів і т.д до той чи іншой інфи) в нашому випадку той файлик не велику інфу несе і його прикрили) але це могло чи у вас може буди важливим)
Суть яка
Береш якийсь умовний, непримітний файл. Називаєш його скажімо,
internal-status/health.txt або zxc123/debug.log.
Далі, пробуєш просто постукати по порту напряму.
Наприклад, у вас девсервер був на
10.10.123.123
, і пробуйте
curl -I http://10.10.123.123:443/zxc123/debug.log
І Якщо
200 OK. І пішов контент.
то цей лог доступний зовні. Просто валяється під руками, без авторизації, прямо через NGINX.
Це не баг у коді. Це неправильна конфігурація nginx. просто забули закрити або прибрати шлях у location.
І от тут ви вже не просто QA, а той, хто потенційно врятував реліз від зливу інфи.
А тепер ще цікавіше: .git/
я часто читаю шо деви особливо не опетні забувають прятати .git, і ви можете це перевірити не відкрита службова папка .git/ (а вона часом випадково заливається разом із кодом).
просто зробіть
curl -I http://{{IP}}/.git/configІ якщо знову 200 OK і у відповідь прийшов вміст git-конфігу з remote URL, ім'ям розробника, і навіть ssh-ключем (true story 🫣). то це просто провал)
Це реальна загроза, бо
.git/HEAD, .git/config, .git/index
- відкривають структуру репозиторію, через них можна відновити весь код і навіть знайти секрети, які колись хтось пушнув
як перевірити, що шось лишнє світиться,
Найпростіше через curl
Умовно
curl -I http://<IP>:<port>/.git/config
Можете перевірити ще кілька
curl -I http://<IP>/.env
curl -I http://<IP>/debug.log
curl -I http://<IP>/logs/latest.log
Якщо щось дає 200 OK бігом в чат з девами
Чому це важливо для QA?
Бо іноді найкращий тест це просто подивитись трохи глибше. Ти можеш реально знайти вразливість, яка обійде всі UI-тести, не вилізе в CI. і яку ніхто навіть не шукав
А ти взяв і знайшов і тебе вже хвалять)
Поінт від мене простий
Навіть не будучи сек'юріті інженером, ви можете знаходити великі речі. Просто треба розуміти, що і навіщо перевіряти.
Такі штуки це реальний плюс до твоєї репутації як QA.
якщо хочете окрему шпаргалку по типових шляхах, які треба перевірити чекаю від вас ❤️
а вообще спробуйте шо у вас і напешіть в коментарях шо вийшло або ви про це взнали і перевіряєте це вже давно)
Бажаю вам гарного вечора!
Обняв 🤗
3❤🔥37🔥9👍6❤3⚡2
This media is not supported in your browser
VIEW IN TELEGRAM
Друзі, всім доброго раночку ☀️
Сподіваюсь, ви в безпеці, і вже з кавою)
Нехай сьогодні буде день без багів, з приємною командою і нормальним інтернетом (це теж важливо ) бо у мене вчора був просто жесть.
А якщо ви сьогодні не на роботі просто відпочиньте. Ви це заслужили 💛
А відео просто як легке нагадування всім, хто часом переживає, що GPT, AI, роботи йдуть забирати нашу роботу.
Спойлер, не заберуть, якщо ти думаєш, аналізуєш і вмієш задавати питання 😉
Гарного і спокійного вам дня, обняв 🤗
НА ВІДЕО ПРИСУТНІЙ МАТ
Сподіваюсь, ви в безпеці, і вже з кавою)
Нехай сьогодні буде день без багів, з приємною командою і нормальним інтернетом (це теж важливо ) бо у мене вчора був просто жесть.
А якщо ви сьогодні не на роботі просто відпочиньте. Ви це заслужили 💛
А відео просто як легке нагадування всім, хто часом переживає, що GPT, AI, роботи йдуть забирати нашу роботу.
Спойлер, не заберуть, якщо ти думаєш, аналізуєш і вмієш задавати питання 😉
Гарного і спокійного вам дня, обняв 🤗
НА ВІДЕО ПРИСУТНІЙ МАТ
1😁12🤩2❤1
Завдання дня для QA:
Якщо ти тестуєш вебдодаток швидше за все, десь там є NGINX. Але от питання: для чого його найчастіше ставлять?
Якщо ти тестуєш вебдодаток швидше за все, десь там є NGINX. Але от питання: для чого його найчастіше ставлять?
Anonymous Quiz
64%
(A) Реверс-проксі пересилає запити між клієнтом і бекендом
14%
(B) Обробка логіки: виконує Python/Node.js-код
10%
(C) CI/CD запускає білди, тести, деплої
12%
(D) Агрегація логів, збирає і аналізує трафік додатку
⚡4
Ну що, обіцяний розбір хто винен, коли після логіна ви опиняєтесь на дашборді, а там дані ніби з минулого життя.
І так що я маю вам сказать!
(A) Компонент кешує старий state і чому одна з правильних відповідей
Це прямо топова причина, фронт після логіна не перерендерив потрібний компонент або взяв дані з попереднього useState/useEffect.
Таке буває, якщо логіка не підв’язана на userId чи authState, а просто працює як було.
(B) Куки не оновились після логіна це майже відпадає.
Якби куки не оновились, API скоріш за все повернув би 401 або дані старого юзера, А ми ж бачимо, що API дає правильну відповідь, просто UI не встигає або не знає.
(C) Браузер тримає старий localStorage тут можливо, але залежить від реалізації. бо якщо фронт бере дані не з API, а з localStorage (бо так хтось оптимізував) то після логіна може не бути оновлення.
Тоді в дашборді буде старе userInfo, поки не перезавантажиш сторінку.
(D) Race condition між запитами. це серйозний кандидат у винуватці.
Уявіть ви логінитесь, UI одразу відправляє запит на дані юзера, але токен або куки ще не оновились.
І бах дашборд приходить з даними попереднього юзера або взагалі кешованим.
(E) У бекенда затримка в записі даних, Рідко, але трапляється.
Якщо бек ще дописує сесію, або профіль юзера не одразу оновлюється в БД тоді дані можуть повертатись із затримкою.
Це зазвичай вирішується ретраєм або затримкою перед фетчем.
Якщо ловили таке у проєктах діліться як відловлювали.
Note: Про зустріч) це не інфо циганство це просто корисна зустріч щоб круто провести час, поспілкуватися обсудити якісь круті насушні питання)
І так що я маю вам сказать!
(A) Компонент кешує старий state і чому одна з правильних відповідей
Це прямо топова причина, фронт після логіна не перерендерив потрібний компонент або взяв дані з попереднього useState/useEffect.
Таке буває, якщо логіка не підв’язана на userId чи authState, а просто працює як було.
(B) Куки не оновились після логіна це майже відпадає.
Якби куки не оновились, API скоріш за все повернув би 401 або дані старого юзера, А ми ж бачимо, що API дає правильну відповідь, просто UI не встигає або не знає.
(C) Браузер тримає старий localStorage тут можливо, але залежить від реалізації. бо якщо фронт бере дані не з API, а з localStorage (бо так хтось оптимізував) то після логіна може не бути оновлення.
Тоді в дашборді буде старе userInfo, поки не перезавантажиш сторінку.
(D) Race condition між запитами. це серйозний кандидат у винуватці.
Уявіть ви логінитесь, UI одразу відправляє запит на дані юзера, але токен або куки ще не оновились.
І бах дашборд приходить з даними попереднього юзера або взагалі кешованим.
(E) У бекенда затримка в записі даних, Рідко, але трапляється.
Якщо бек ще дописує сесію, або профіль юзера не одразу оновлюється в БД тоді дані можуть повертатись із затримкою.
Це зазвичай вирішується ретраєм або затримкою перед фетчем.
Якщо ловили таке у проєктах діліться як відловлювали.
Note: Про зустріч) це не інфо циганство це просто корисна зустріч щоб круто провести час, поспілкуватися обсудити якісь круті насушні питання)
3❤11🔥3👍2