Доброго ранку, банда ☀️☀️☀️
Що я маю вам сказати. Вчора говорив із одним знайомим, крутий спец, шарить добре, та й працює реально як за 10-тьох.
Але каже, Просто вже не можу. Вигорання люте. На роботу не хочеться, на мітингах тільки 'ага' і 'окей'. І навіть звільнитись не можу, бо відчуття, що все тримається на мені.
І тут мені знову згадалась та сама думка, яку я собі не раз повторював і вам нагадаю
Робота має або приносити гроші, або задоволення.
Ідеально обидва. Але хоча б щось із цього.
Можна фігачити як конячка, але якщо,
добре платять - це мотивація.
кайфуєш від того, що робиш -це заряд.
А якщо ні першого, ні другого вигорання не за горами. І отой я ще трохи потерплю може закінчитись дуже фігово без ресурсу, без інтересу, без себе.
Я наприклад дуже кайфую від своїй роботи, так буває тяжкі дні і коли мозок плавиться - але коли ти вирішив на роботі ту чи іншу проблему або розібрався в том функціоналі та ти шо ти як заново родився і гордий за себе)
Як ви це відчуваєте?
Бували моменти, коли ловили себе на думці, Та гори воно все...
Як виходили з цього стану?
Поділіться, тут всі свої. Може, комусь із нашої банди допоможе ваше слово
Всім гарного дня і настрою)
Що я маю вам сказати. Вчора говорив із одним знайомим, крутий спец, шарить добре, та й працює реально як за 10-тьох.
Але каже, Просто вже не можу. Вигорання люте. На роботу не хочеться, на мітингах тільки 'ага' і 'окей'. І навіть звільнитись не можу, бо відчуття, що все тримається на мені.
І тут мені знову згадалась та сама думка, яку я собі не раз повторював і вам нагадаю
Робота має або приносити гроші, або задоволення.
Ідеально обидва. Але хоча б щось із цього.
Можна фігачити як конячка, але якщо,
добре платять - це мотивація.
кайфуєш від того, що робиш -це заряд.
А якщо ні першого, ні другого вигорання не за горами. І отой я ще трохи потерплю може закінчитись дуже фігово без ресурсу, без інтересу, без себе.
Я наприклад дуже кайфую від своїй роботи, так буває тяжкі дні і коли мозок плавиться - але коли ти вирішив на роботі ту чи іншу проблему або розібрався в том функціоналі та ти шо ти як заново родився і гордий за себе)
Як ви це відчуваєте?
Бували моменти, коли ловили себе на думці, Та гори воно все...
Як виходили з цього стану?
Поділіться, тут всі свої. Може, комусь із нашої банди допоможе ваше слово
Всім гарного дня і настрою)
❤18💔4👍2🥴2🙏1
Завдання дня для QA
Яку роль виконує директива proxy_pass у конфігурації Nginx?
Яку роль виконує директива proxy_pass у конфігурації Nginx?
Anonymous Quiz
7%
(A) Вона вказує шлях до статичних файлів, які треба кешувати
12%
(B) Вона визначає правило переписування URL для frontend-роутера
75%
(C) Вона дозволяє передати запит від Nginx до іншого сервера (reverse proxy)
7%
(D) Вона активує TLS для HTTPS-запитів
🔥6
Bug or Defect?
Завдання дня для QA
Навіщо браузери поважають заголовок X-Content-Type-Options: nosniff?
Навіщо браузери поважають заголовок X-Content-Type-Options: nosniff?
Доброго вечора, як ваші справи? щось у мене завал просто, не продохнути.
Вирішив вам зробити розбір цього пула вже як звільнився від праці)
ну коротенько чому це не (A) але він в топі по відповідям
Caме це робить заголовок SameSite, або політика CORS, а не nosniff.
чому ні (С)
Тут принцепі не про те, nosniff не має ніякого відношення до швидкості. Це про безпеку, а не про перформанс.
Чому і не (D)
А тут навпаки. nosniff підсилює політику Same-Origin. Він забороняє виконання файлів, якщо вони не мають правильний тип.
ну і правильна відповідь чому саме (B)
Друзі, дивіться яка штука.
Є той самий заголовок X-Content-Type-Options: nosniff і він звучить складно, але насправді суть проста, тобто це заборона браузеру розумничати.
Бо браузери іноді думають, що вони знають краще, ніж сервер. Ти умовно кажеш ось тобі CSS, а він каже Ммм це виглядає як JavaScript, давай я його виконаю.
І ось тут саме тоді в гру вступає nosniff, він каже не вигадуй. Виконуй лише той контент, MIME-тип якого чітко співпадає з очікуваним і все.
Це важливо для безпеки, бо інакше можна завантажити скрипт з .css розширенням, і браузер його виконає. А це вже XSS і інші пригоди.
Як я це запам’ятав та дуже просто
nosniff це як QA, який каже не треба здогадуватись, працюємо тільки по документації!
Ось така простенька, але важлива деталька, яку краще памʼятати 😉
сподіваюсь пул вийшов цікавий і комусь корисний)
Всім гарного вечора, обняв 🤗🤗🤗
Вирішив вам зробити розбір цього пула вже як звільнився від праці)
ну коротенько чому це не (A) але він в топі по відповідям
Caме це робить заголовок SameSite, або політика CORS, а не nosniff.
чому ні (С)
Тут принцепі не про те, nosniff не має ніякого відношення до швидкості. Це про безпеку, а не про перформанс.
Чому і не (D)
А тут навпаки. nosniff підсилює політику Same-Origin. Він забороняє виконання файлів, якщо вони не мають правильний тип.
ну і правильна відповідь чому саме (B)
Друзі, дивіться яка штука.
Є той самий заголовок X-Content-Type-Options: nosniff і він звучить складно, але насправді суть проста, тобто це заборона браузеру розумничати.
Бо браузери іноді думають, що вони знають краще, ніж сервер. Ти умовно кажеш ось тобі CSS, а він каже Ммм це виглядає як JavaScript, давай я його виконаю.
І ось тут саме тоді в гру вступає nosniff, він каже не вигадуй. Виконуй лише той контент, MIME-тип якого чітко співпадає з очікуваним і все.
Це важливо для безпеки, бо інакше можна завантажити скрипт з .css розширенням, і браузер його виконає. А це вже XSS і інші пригоди.
Як я це запам’ятав та дуже просто
nosniff це як QA, який каже не треба здогадуватись, працюємо тільки по документації!
Ось така простенька, але важлива деталька, яку краще памʼятати 😉
сподіваюсь пул вийшов цікавий і комусь корисний)
Всім гарного вечора, обняв 🤗🤗🤗
2❤🔥9🔥5👍3❤1
This media is not supported in your browser
VIEW IN TELEGRAM
Друзі, всім привіт! Як ваші справи?
В Одесі сьогодні було дуже гучно, але сподіваюсь, ви всі в безпеці і цілі 💛💙
А я вже з 6 ранку, вже дві кафусі бахнув, і поліз в роботу, бо кінцівка спринта така, шо аж нікуди, питання, фікси, блокери, все й одразу 🤯
Бажаю вам продуктивного, але спокійного дня. Не забувайте відпочивати)
А відео для підняття настрою
Ну цеж прямо класика коли до тебе такі приходять
Все, релізнемось сьогодні, поїхали!
А ти, Який реліз? Я навіть ще не дивився, шо там!
Всіх обняв 🤗🤗🤗
В Одесі сьогодні було дуже гучно, але сподіваюсь, ви всі в безпеці і цілі 💛💙
А я вже з 6 ранку, вже дві кафусі бахнув, і поліз в роботу, бо кінцівка спринта така, шо аж нікуди, питання, фікси, блокери, все й одразу 🤯
Бажаю вам продуктивного, але спокійного дня. Не забувайте відпочивати)
А відео для підняття настрою
Ну цеж прямо класика коли до тебе такі приходять
Все, релізнемось сьогодні, поїхали!
А ти, Який реліз? Я навіть ще не дивився, шо там!
Всіх обняв 🤗🤗🤗
2❤12🤣8🥴1
Друзі привіт, сорі сьогодні день не як пʼятниця, завал)
Но без рубрики залишить вас не можу) Завдання дня для QA Для чого найчастіше використовують Telnet у тестуванні або налагодженні?
Но без рубрики залишить вас не можу) Завдання дня для QA Для чого найчастіше використовують Telnet у тестуванні або налагодженні?
Anonymous Quiz
10%
(A) Щоб шифрувати дані перед передачею
6%
(B) Щоб перевірити наявність XSS у фронтенді
72%
(C) Щоб перевірити, чи відкритий порт на віддаленому сервері
11%
(D) Щоб моніторити CPU-споживання сервера в реальному часі
❤3👍3
This media is not supported in your browser
VIEW IN TELEGRAM
🌞 Ранковий QA-постик 🌞
Друзі всім привіт, як ваші справи?
Субота, вихідні, час трошки перевести подих, ну, це якщо ти не я, бо сьогодні ще 3 уроки з учнями, але я радий, це для мене в кайф
На відео це буквально я вчора, один фікс, і за ним 1005000000 регресій, які ми ще будемо розгрібати понеділок-п’ятниця 😅
А ще, помітив от яку штуку. Уже не перший раз проводжу уроки по Postman, і кожен раз дивуюсь env, pre-request, post-respons і test scripts майже ніхто не юзає.
А це ж просто мастхев для нормального API тестування. Не обов’язково одразу все автоматизувати, але базовий сетап, це вже 50% профі-роботи.
Тому сьогодні ще підвечір спробую скласти пост на цю тему, з прикладами, сценаріями і поясненням, для чого вони реально потрібні.
Якщо цікаво, поставте 🔥)
Всіх обняв, гарного дня і настрою, і кава щоб була смачна.
#ранковіісторіїQA
Друзі всім привіт, як ваші справи?
Субота, вихідні, час трошки перевести подих, ну, це якщо ти не я, бо сьогодні ще 3 уроки з учнями, але я радий, це для мене в кайф
На відео це буквально я вчора, один фікс, і за ним 1005000000 регресій, які ми ще будемо розгрібати понеділок-п’ятниця 😅
А ще, помітив от яку штуку. Уже не перший раз проводжу уроки по Postman, і кожен раз дивуюсь env, pre-request, post-respons і test scripts майже ніхто не юзає.
А це ж просто мастхев для нормального API тестування. Не обов’язково одразу все автоматизувати, але базовий сетап, це вже 50% профі-роботи.
Тому сьогодні ще підвечір спробую скласти пост на цю тему, з прикладами, сценаріями і поясненням, для чого вони реально потрібні.
Якщо цікаво, поставте 🔥)
Всіх обняв, гарного дня і настрою, і кава щоб була смачна.
#ранковіісторіїQA
7🔥45❤3😁2
Завдання дня для QA:
Що з наведеного найкраще описує роль заголовка Content-Type в HTTP-запиті?
Що з наведеного найкраще описує роль заголовка Content-Type в HTTP-запиті?
Anonymous Quiz
0%
(A) Визначає розмір тіла запиту
40%
(B) Вказує, який тип контенту поверне сервер
57%
(C) Вказує, який формат даних міститься в тілі запиту
3%
(D) Визначає мову користувача для локалізації відповіді
❤10👍4😢1
Bug or Defect?
🌞 Ранковий QA-постик 🌞 Друзі всім привіт, як ваші справи? Субота, вихідні, час трошки перевести подих, ну, це якщо ти не я, бо сьогодні ще 3 уроки з учнями, але я радий, це для мене в кайф На відео це буквально я вчора, один фікс, і за ним 1005000000 регресій…
Привіт банда)
Як і обіцяв, сьогодні трошки про ту тему, яка чомусь часто пролітає мимо, скрипти в Postman Pre-request і Tests.
Але як казав один мудрий QA, якщо у тебе ріквести йдуть у флоу, не використовувати параметризацію це просто злочин. І я повністю згоден.
Я знаю, ніхто не любить скрипти в Postman'і, бо все ж працює.
Але давайте чесно, ти або тикнеш 50000000 разів руками, або один раз напишеш нормально, і потім живеш.
Так от що це таке страшне ці Pre-request + Test scripts, це прям твій внутрішній автотестер у Postman.
Вони юзаються для того, щоб передати id, token, username між запитами, згенерити унікальні значення типу емейлу, логіна, дати, одразу провалідити респонс і зберегти щось в env
ну і що головне, працювати з Postman як з легенькою автоматизацією, не тільки ручками тикати.
так ну что я написав вам стандартні і те шо юзаю за часту і показую на уроках для своїх учнів)
1. Pre-request script і готуємо дані до запиту
Унікальний логін
це щоб створити унікальний логін користувача на кожен запуск, і не ловити помилку (користувач вже існує.
Зручно при тесті реєстрації, створення акаунтів, унікальних назв.
2. Валідний email
а ценерує email, який точно буде унікальний, з міткою часу.
Корисно при реєстрації, коли система не дозволяє дублі.
3. Дата створення та завершення
це тут ставить дату зараз + через 10 днів у правильному ISO-форматі (з урахуванням таймзони).
Супер для створення сесій, подій, об’єктів з датами дії.
Це вже ми про Test Script
4. Перевірка статусу + збереження ID та токена
Перевіряємо, що об’єкт створено (201) чи можемо на любий статус код і зберігаємо id + token, щоб далі юзати їх в наступних запитах без копіпасту, тобто налаштував собі env всі данні в зміні автоматично записалися і в наступному запиті полетіли)
Це ключова зв’язка для побудови флоу із декількох запитів.
5. Валідація структури відповіді
а це щоб одразу перевірити, чи в полі name реально приходить рядок, а не null, object, або взагалі undefined.
Добре ловить непомітні проблеми типу бекенд вернув щось не те, але ти не помітив.
Мій поінт такий, якщо в тебе є більше ніж 1 запит і між ними летять якісь змінні - скрипти, твої друзі.
Це не автоматизація в класичному сенсі, але це QA-професіоналізм, якому не треба соромитись.
А хто ще не пробував, спробуйте, це реально спрощує і покращує вашу щоденну роботу.
Сподіваюсь коротко вийшло але зрозуміло
якщо вам є шо додати то пишіть які ви юзаєте скрипти і навіщо, буде цікаво не тільки мені)
Якщо пост зайшов і був корисний, ставь серденько)
Зберу фідбек і знайду час напишу для вас окремий ше пост де розповім про
setNextRequest як будувати динамічні флоу ну і pm.iterationData щоб робити data-driven тести
Гарного вам дня і вечора) 🤗🤗🤗
Як і обіцяв, сьогодні трошки про ту тему, яка чомусь часто пролітає мимо, скрипти в Postman Pre-request і Tests.
Але як казав один мудрий QA, якщо у тебе ріквести йдуть у флоу, не використовувати параметризацію це просто злочин. І я повністю згоден.
Я знаю, ніхто не любить скрипти в Postman'і, бо все ж працює.
Але давайте чесно, ти або тикнеш 50000000 разів руками, або один раз напишеш нормально, і потім живеш.
Так от що це таке страшне ці Pre-request + Test scripts, це прям твій внутрішній автотестер у Postman.
Вони юзаються для того, щоб передати id, token, username між запитами, згенерити унікальні значення типу емейлу, логіна, дати, одразу провалідити респонс і зберегти щось в env
ну і що головне, працювати з Postman як з легенькою автоматизацією, не тільки ручками тикати.
так ну что я написав вам стандартні і те шо юзаю за часту і показую на уроках для своїх учнів)
1. Pre-request script і готуємо дані до запиту
Унікальний логін
const rnd = Math.floor(Math.random() * 10000);
pm.environment.set("test_login", test_user_${rnd});
це щоб створити унікальний логін користувача на кожен запуск, і не ловити помилку (користувач вже існує.
Зручно при тесті реєстрації, створення акаунтів, унікальних назв.
2. Валідний email
const email = user_${Date.now()}@example.com;
pm.environment.set("test_email", email);а ценерує email, який точно буде унікальний, з міткою часу.
Корисно при реєстрації, коли система не дозволяє дублі.
3. Дата створення та завершення
const now = new Date();
const plus10 = new Date(now);
plus10.setDate(now.getDate() + 10);
const nowISO = new Date(now.getTime() - now.getTimezoneOffset() * 60000).toISOString();
const plus10ISO = new Date(plus10.getTime() - plus10.getTimezoneOffset() * 60000).toISOString();
pm.environment.set("created_at", nowISO);
pm.environment.set("expired_at", plus10ISO);
це тут ставить дату зараз + через 10 днів у правильному ISO-форматі (з урахуванням таймзони).
Супер для створення сесій, подій, об’єктів з датами дії.
Це вже ми про Test Script
4. Перевірка статусу + збереження ID та токена
pm.test("Status 201 — Created", function () {
pm.response.to.have.status(201);
});
const res = pm.response.json();
pm.environment.set("user_id", res.data.id);
pm.environment.set("access_token", res.data.token);Перевіряємо, що об’єкт створено (201) чи можемо на любий статус код і зберігаємо id + token, щоб далі юзати їх в наступних запитах без копіпасту, тобто налаштував собі env всі данні в зміні автоматично записалися і в наступному запиті полетіли)
Це ключова зв’язка для побудови флоу із декількох запитів.
5. Валідація структури відповіді
pm.test("Поле name — рядок", function () {
const data = pm.response.json().data;
pm.expect(data.name).to.be.a("string");
});а це щоб одразу перевірити, чи в полі name реально приходить рядок, а не null, object, або взагалі undefined.
Добре ловить непомітні проблеми типу бекенд вернув щось не те, але ти не помітив.
Мій поінт такий, якщо в тебе є більше ніж 1 запит і між ними летять якісь змінні - скрипти, твої друзі.
Це не автоматизація в класичному сенсі, але це QA-професіоналізм, якому не треба соромитись.
А хто ще не пробував, спробуйте, це реально спрощує і покращує вашу щоденну роботу.
Сподіваюсь коротко вийшло але зрозуміло
якщо вам є шо додати то пишіть які ви юзаєте скрипти і навіщо, буде цікаво не тільки мені)
Якщо пост зайшов і був корисний, ставь серденько)
Зберу фідбек і знайду час напишу для вас окремий ше пост де розповім про
setNextRequest як будувати динамічні флоу ну і pm.iterationData щоб робити data-driven тести
Гарного вам дня і вечора) 🤗🤗🤗
4❤47❤🔥5👍3
This media is not supported in your browser
VIEW IN TELEGRAM
Всім доброго ранку і гарного старту тижня!
Понеділок день, коли кава закінчується швидше, ніж таски)
І знаєте, буває такий момент, коли щось не працює. І ти такий ходиш, думаєш:
«Ну точно хтось натупив. Хто це зробив? Хто там міг поламати?
А потім копаєш, і та-дам
це ж Ти сам і зробив ту бяку ще у п’ятницю 🫠
От на відео, прям я в такі моменти
(коли ловлю сам себе за хвіст у багрепорті)
Друзі, бажаю вам сьогодні не ловити самі себе, пити теплу каву і не забути те, що зробили в п’ятницю 😅
А якщо забули, нічого, головне чесно зізнатися самому собі й порішати!
Обняв, гарного понеділка!
#qaбудні #ранковіісторіїQA
Понеділок день, коли кава закінчується швидше, ніж таски)
І знаєте, буває такий момент, коли щось не працює. І ти такий ходиш, думаєш:
«Ну точно хтось натупив. Хто це зробив? Хто там міг поламати?
А потім копаєш, і та-дам
це ж Ти сам і зробив ту бяку ще у п’ятницю 🫠
От на відео, прям я в такі моменти
(коли ловлю сам себе за хвіст у багрепорті)
Друзі, бажаю вам сьогодні не ловити самі себе, пити теплу каву і не забути те, що зробили в п’ятницю 😅
А якщо забули, нічого, головне чесно зізнатися самому собі й порішати!
Обняв, гарного понеділка!
#qaбудні #ранковіісторіїQA
1😁16❤5👍2🔥2🥴1
Завдання дня для QA
Питання: Під час тестування API на локальному сервері ви отримали помилку ERR_CONNECTION_TIMED_OUT. Сервер працює, URL правильний. Яка з причин найбільш ймовірна?
Питання: Під час тестування API на локальному сервері ви отримали помилку ERR_CONNECTION_TIMED_OUT. Сервер працює, URL правильний. Яка з причин найбільш ймовірна?
Anonymous Quiz
7%
(A) Некоректний формат JSON у тілі запиту
18%
(B) Помилка в логіці бекенду (500 помилка)
64%
(C) Обмеження фаєрволу або мережевий доступ заблокований
11%
(D) Невірний Content-Type заголовок
🔥9👏2
Bug or Defect?
Привіт банда) Як і обіцяв, сьогодні трошки про ту тему, яка чомусь часто пролітає мимо, скрипти в Postman Pre-request і Tests. Але як казав один мудрий QA, якщо у тебе ріквести йдуть у флоу, не використовувати параметризацію це просто злочин. І я повністю…
Привіт, банда! 👋
Як і обіцяв, сьогодні розповім про ті штуки, які виглядають страшно, але на ділі, просто must have, якщо хочеш бути не просто тикальщиком у Postman, а QA з повагою до свого часу )
Ну ось коротенько вам про postman.setNextRequest() це коли треба динамічний флоу
Ідея яка, умовно ти хочеш в залежності від відповіді переходити до іншого запиту. Це як if/else в коді, тільки в Postman.
Як це працює, після поточного запиту Postman автоматично викликає вказаний. Можна реалізовувати умовну логіку, якщо токен не валідний, авторизуйся, якщо все ок, йди далі.
І так працює тільки в Runner, не в одиночному запуску, але я може шось не знаю і вже змінилось це)
pm.iterationData, це для Data-Driven тестування
Умовно у вас є колекція запитів, і треба запускати їх з різними наборами даних (логіни, email-и, конфігурації).
Робиш CSV або JSON з даними (типу users.csv)
І ось у скриптах використовуєш
І кожен запуск буде бігти з новими даними
Як їх можно комбінувати? впринцепі не дуже складно але треба зрозуміти логику
ну ось вам приклад реального флоу
Тестуємо створення акаунта, авторизацію, запит до захищеного ресурсу
ЗАпис Created User
Дали запит на логін.
запит на отримання того чи іншого профілю
Поінт який, Якщо маєш 2+ ріквести, роби з них флоу.
Якщо тестуєш багато різних даних, не копіпасти руками, а юзай pm.iterationData.
Це не full-scale автомейшн, але це вже QA, який поважає свій час
Сподіваюсь корисно) якщо так ставьте серденько, задавайте питання залюбки відповім у вільний час.
Може ще хочете продовження з більш складними прикладами (pre-request, custom utils, або інтеграція з Newman)?
Всіх Обняв, Гарного вечора вам 🤗🤗🤗
Як і обіцяв, сьогодні розповім про ті штуки, які виглядають страшно, але на ділі, просто must have, якщо хочеш бути не просто тикальщиком у Postman, а QA з повагою до свого часу )
Ну ось коротенько вам про postman.setNextRequest() це коли треба динамічний флоу
Ідея яка, умовно ти хочеш в залежності від відповіді переходити до іншого запиту. Це як if/else в коді, тільки в Postman.
if (pm.response.code === 401) {
postman.setNextRequest("Auth Request");
} else {
postman.setNextRequest("Main Flow Step 2");
}Як це працює, після поточного запиту Postman автоматично викликає вказаний. Можна реалізовувати умовну логіку, якщо токен не валідний, авторизуйся, якщо все ок, йди далі.
І так працює тільки в Runner, не в одиночному запуску, але я може шось не знаю і вже змінилось це)
pm.iterationData, це для Data-Driven тестування
Умовно у вас є колекція запитів, і треба запускати їх з різними наборами даних (логіни, email-и, конфігурації).
Робиш CSV або JSON з даними (типу users.csv)
login,email,password
qa_user1,user1@example.com,qwe123
qa_user2,user2@example.com,asd456
І ось у скриптах використовуєш
pm.iterationData.get("login")
pm.environment.set("test_login", pm.iterationData.get("login"));
pm.environment.set("test_email", pm.iterationData.get("email"));
pm.environment.set("test_password", pm.iterationData.get("password"));І кожен запуск буде бігти з новими даними
Як їх можно комбінувати? впринцепі не дуже складно але треба зрозуміти логику
ну ось вам приклад реального флоу
Тестуємо створення акаунта, авторизацію, запит до захищеного ресурсу
ЗАпис Created User
const user = {
login: pm.iterationData.get("login"),
email: pm.iterationData.get("email")
};
pm.environment.set("test_login", user.login);
pm.environment.set("test_email", user.email);Дали запит на логін.
const login = pm.environment.get("test_login");
pm.test("Логін успішний", () => {
pm.response.to.have.status(200);
const res = pm.response.json();
pm.environment.set("access_token", res.token);
});
postman.setNextRequest("Отримати Профіль");запит на отримання того чи іншого профілю
pm.test("Профіль OK", () => {
pm.response.to.have.status(200);
});Поінт який, Якщо маєш 2+ ріквести, роби з них флоу.
Якщо тестуєш багато різних даних, не копіпасти руками, а юзай pm.iterationData.
Це не full-scale автомейшн, але це вже QA, який поважає свій час
Сподіваюсь корисно) якщо так ставьте серденько, задавайте питання залюбки відповім у вільний час.
Може ще хочете продовження з більш складними прикладами (pre-request, custom utils, або інтеграція з Newman)?
Всіх Обняв, Гарного вечора вам 🤗🤗🤗
3🔥23❤🔥5👍3❤1⚡1🥴1
Всім доброго раночку, банда!
Як ваш настрій? На дворі сонечно, ну це прям кайф 💛
Вчора отримав круте питання, от просто в саме серденько.
Ігор, як ти менеджиш свій час? Ну реально, і працювати, і учні, і канал, як все встигаєш?
Та шо сказати, магії тут нема
Все, що встигається, це завдяки плануванню, дисципліні і стікерам, яких на борді вже більше ніж в Trello
Як я це роблю? Робота, це святе, в робочий час фокус тільки туди.
- Учні це вечори/вихідні, окремо забиті в календар. ну і постійний борд + reminder от чесно, якби не вони, то я б вже загубився.
Буває, з одного уроку на інший переходжу в розбіг у 1 хвилину, без напоміналки злетів би )))
І от подумалось, планування часу, це окремий скіл.
Бо як не вмієш планувати, то просто не встигаєш.
А далі або вигорання, або відчуття, що вічно щось не зробив.
Ну от як це у вас відбувається?
Як ви керуєте своїм часом?
Чим користуєтесь, Google Calendar? Notion? Todoist? Excel-файлик на робочому столі?
Може є якісь лайфхаки, без яких ви б уже поплили?
Поділіться, буде цікаво і мені, і всім хто читає
Бо як казав один мудрий QA, розгребти беклог, то одне, а от знайти на це час, зовсім інше 😄
Всім гарного, продуктивного дня і побільше сонця в душі ☀️☀️☀️
Обняв!
Як ваш настрій? На дворі сонечно, ну це прям кайф 💛
Вчора отримав круте питання, от просто в саме серденько.
Ігор, як ти менеджиш свій час? Ну реально, і працювати, і учні, і канал, як все встигаєш?
Та шо сказати, магії тут нема
Все, що встигається, це завдяки плануванню, дисципліні і стікерам, яких на борді вже більше ніж в Trello
Як я це роблю? Робота, це святе, в робочий час фокус тільки туди.
- Учні це вечори/вихідні, окремо забиті в календар. ну і постійний борд + reminder от чесно, якби не вони, то я б вже загубився.
Буває, з одного уроку на інший переходжу в розбіг у 1 хвилину, без напоміналки злетів би )))
І от подумалось, планування часу, це окремий скіл.
Бо як не вмієш планувати, то просто не встигаєш.
А далі або вигорання, або відчуття, що вічно щось не зробив.
Ну от як це у вас відбувається?
Як ви керуєте своїм часом?
Чим користуєтесь, Google Calendar? Notion? Todoist? Excel-файлик на робочому столі?
Може є якісь лайфхаки, без яких ви б уже поплили?
Поділіться, буде цікаво і мені, і всім хто читає
Бо як казав один мудрий QA, розгребти беклог, то одне, а от знайти на це час, зовсім інше 😄
Всім гарного, продуктивного дня і побільше сонця в душі ☀️☀️☀️
Обняв!
2❤14👍3👏1🥴1👨💻1
Завдання дня для QA:
Питання. Яку основну задачу виконує Fail2Ban у Linux-системах?
Питання. Яку основну задачу виконує Fail2Ban у Linux-системах?
Anonymous Quiz
5%
(A) Оптимізує використання ресурсів процесора
6%
(B) Автоматично оновлює пакети безпеки
78%
(C) Захищає систему, блокуючи підозрілі IP-адреси
11%
(D) Резервує критичні конфігураційні файли
❤7👍4
This media is not supported in your browser
VIEW IN TELEGRAM
Друзі, доброго вечора! 🌙
Як ви там? Ви теж у вічній запарі на роботі чи вже релакс?
А то щось тихо сьогодні, активності нул, всі закопані в таски?
Ану признавайтесь, на відео себе впізнали?
Бережіть себе 💛
Як ви там? Ви теж у вічній запарі на роботі чи вже релакс?
А то щось тихо сьогодні, активності нул, всі закопані в таски?
Ану признавайтесь, на відео себе впізнали?
Бережіть себе 💛
😁11❤3🤣2
Привіт друзі ☀️☀️☀️
Назовемо це ранкове відкриття и як Pandas працює на QA
Я натрапив на Pandas бібліотеку на Python, про яку раніше якось не задумувався, а тепер шкодую. Якщо ви тестуєте API, працюєте з масивами даних або валідуєте JSON ця штука реально економить купу часу.
Якщо вже знаєте Python спробуйте, воно варте того. а якщо ні може це той самий привід, щоб почати.
шо я маю вам сказати за той Pandas?
Це така бібліотека для роботи з табличками і списками, щось на кшталт Excel, але прямо в коді. Забуваєш про довгі цикли і крутіння словників пиши прості фільтри.
Наприклад, хочеш всі рядки, де країна Україна, просто робиш
і от готово.
як приклад,
Уявімо, тестуєш API, яке повертає список юзерів. Тебе цікавить, скільки користувачів з України, чи є дублі email-ів, хто не вказав email
Ось такий приклад відповіді з API
І скрипт на Python, як це перевірити
це зручно, не треба вручну лазити в кожен рядок
Весь масив даних видно одразу, можна швидко знайти проблеми
Легко тестувати сотні і тисячі записів
Якщо знаєш Python, працювати з Pandas, як мати крутий інструмент, що поєднує зручність Excel і гнучкість коду
Висновок від мене:
Якщо працюєш з API і даними, Pandas реально вартий уваги. Це не тільки для дата-сайєнтистів, а й для QA, хто хоче зробити життя простішим.
Якщо вам цікаво, ставте серденько - дам вам круту шпаргалку по цьому)
Всім гарного дня, обняв 🤗
Назовемо це ранкове відкриття и як Pandas працює на QA
Я натрапив на Pandas бібліотеку на Python, про яку раніше якось не задумувався, а тепер шкодую. Якщо ви тестуєте API, працюєте з масивами даних або валідуєте JSON ця штука реально економить купу часу.
Якщо вже знаєте Python спробуйте, воно варте того. а якщо ні може це той самий привід, щоб почати.
шо я маю вам сказати за той Pandas?
Це така бібліотека для роботи з табличками і списками, щось на кшталт Excel, але прямо в коді. Забуваєш про довгі цикли і крутіння словників пиши прості фільтри.
Наприклад, хочеш всі рядки, де країна Україна, просто робиш
df[df['country'] == 'UA']
і от готово.
як приклад,
Уявімо, тестуєш API, яке повертає список юзерів. Тебе цікавить, скільки користувачів з України, чи є дублі email-ів, хто не вказав email
Ось такий приклад відповіді з API
[
{"id": 1, "name": "Ihor", "email": "ihor@example.com", "country": "UA"},
{"id": 2, "name": "Anna", "email": "anna@example.com", "country": "UA"},
{"id": 3, "name": "John", "email": "john@example.com", "country": "US"},
{"id": 4, "name": "Anna", "email": "anna@example.com", "country": "UA"},
{"id": 5, "name": "Petro", "country": "UA"}
]
І скрипт на Python, як це перевірити
import pandas as pd
import json
# Читаємо жесон у змінну
with open("users.json", "r") as f:
data = json.load(f)
# Перетворюємо на таблицю
df = pd.DataFrame(data)
# Юзери з країни UA
ua_users = df[df['country'] == 'UA']
print("Користувачів з України:", len(ua_users))
# Дублікати емаіл
duplicates = df[df.duplicated('email', keep=False)]
print("Дублікати email:")
print(duplicates[['name', 'email']])
# Користувачі без емаил (відсутнє поле або None)
missing = df[df['email'].isnull()]
print("Користувачі без email:")
print(missing[['id', 'name']])
це зручно, не треба вручну лазити в кожен рядок
Весь масив даних видно одразу, можна швидко знайти проблеми
Легко тестувати сотні і тисячі записів
Якщо знаєш Python, працювати з Pandas, як мати крутий інструмент, що поєднує зручність Excel і гнучкість коду
Висновок від мене:
Якщо працюєш з API і даними, Pandas реально вартий уваги. Це не тільки для дата-сайєнтистів, а й для QA, хто хоче зробити життя простішим.
Якщо вам цікаво, ставте серденько - дам вам круту шпаргалку по цьому)
Всім гарного дня, обняв 🤗
2❤25🔥2
Завдання дня для QA:
Ти працюєш у гілці feature/login-page. Дев залив фікс у main, і ти хочеш підтягнути його собі без зайвих комітів. Що робиш?
Ти працюєш у гілці feature/login-page. Дев залив фікс у main, і ти хочеш підтягнути його собі без зайвих комітів. Що робиш?
Anonymous Quiz
19%
(A) git merge main
47%
(B) git pull origin main
21%
(C) git rebase main
14%
(D) git checkout main
❤10😱9🔥2
Привіт банда!
Як ваш ранок, як настрій? В Одесі сонце, а я з 6 ранку вже з відкритими очима, і шо ви думаєте, знов залип в статтю по тестуванню 🙃
Ну реально, поки всі ще досипають, я натрапив на доволі годну штуку, і хочеться з вами поділитись
https://bugbug.io/blog/test-automation/software-testing-best-practices/
Там не вода, а прям по ділу, що треба кожному КУА, від мануальщика до автомейшена.
Вся сіль у простих речах, пиши плани не на завтра, а одразу/ тестуй незалежно/ не нехтуй логами/ тести в CI/CD маст хев ну і, будь ласка, метрики, це не тільки а скільки багів?😅
це прямо як для нас з вами для живих людей, які щодня між, ще не все задокументував (забув або відлікся на щось), ну і наше улюблене нам треба вже релізитись 😂
І да, пам’ятаю що ви просили зробити підбірку, де я беру круті матеріали для читання про QA / IT, я це зроблю!
На днях викладу окремий пост з добіркою
Обняв, гарного вам дня і нехай прод не буде ламатись 😁
#qaбудні #ранковастаття
Як ваш ранок, як настрій? В Одесі сонце, а я з 6 ранку вже з відкритими очима, і шо ви думаєте, знов залип в статтю по тестуванню 🙃
Ну реально, поки всі ще досипають, я натрапив на доволі годну штуку, і хочеться з вами поділитись
https://bugbug.io/blog/test-automation/software-testing-best-practices/
Там не вода, а прям по ділу, що треба кожному КУА, від мануальщика до автомейшена.
Вся сіль у простих речах, пиши плани не на завтра, а одразу/ тестуй незалежно/ не нехтуй логами/ тести в CI/CD маст хев ну і, будь ласка, метрики, це не тільки а скільки багів?😅
це прямо як для нас з вами для живих людей, які щодня між, ще не все задокументував (забув або відлікся на щось), ну і наше улюблене нам треба вже релізитись 😂
І да, пам’ятаю що ви просили зробити підбірку, де я беру круті матеріали для читання про QA / IT, я це зроблю!
На днях викладу окремий пост з добіркою
Обняв, гарного вам дня і нехай прод не буде ламатись 😁
#qaбудні #ранковастаття
BugBug
Software Testing Best Practices for 2025
Discover proven software testing best practices to improve software quality, streamline QA workflows, and make your testing process more efficient.
3❤17⚡3❤🔥3👏1
Завдання дня для QA:
У якому випадку збереження trusted_id у localStorage може викликати проблеми в роботі клієнтського застосунку?
У якому випадку збереження trusted_id у localStorage може викликати проблеми в роботі клієнтського застосунку?
Anonymous Quiz
25%
(A) Коли браузер очищає localStorage після кожного оновлення сторінки
33%
(B) Коли trusted_id зберігається без зв’язку з конкретною сесією або room
12%
(C) оли значення trusted_id, це JWT токен
30%
(D) Коли trusted_id має однакове значення для всіх користувачів
👀7👍3❤1✍1
Bug or Defect?
Завдання дня для QA:
Ти працюєш у гілці feature/login-page. Дев залив фікс у main, і ти хочеш підтягнути його собі без зайвих комітів. Що робиш?
Ти працюєш у гілці feature/login-page. Дев залив фікс у main, і ти хочеш підтягнути його собі без зайвих комітів. Що робиш?
Доброго вечора друзі)
Дивлюсь пул вийшов цікавим) давайте розберемо його коротенько як завжди.
і так чому це не (А)
Це як сказати, Хай історія моєї роботи і основна історія просто зіллються докупи. Зручно, але є це саме але,
У результаті з’явиться додатковий коміт, такий собі (зшивач) двох історій. Це ніби у твій щоденник вставили сторінку з написом Злиття. І якщо таких злиттів багато історія стає (заплутаною), довго шукати, де що змінилось.
Ну і я розумію чому саме більше всього (B), але все ж питання стояло по іншому)
Тут ви просите гіт завантажити всі нові зміни з main і зліпити їх у себе.
Так це Працює, але робить майже те саме, що і merge, тож коміти-злиття теж з’являться. Якщо ти хочеш чисту історію, цей варіант, не найкращий.
Чому ні (D) ну тут все коротко.
Це просто перейти у гілку main. Тобі не підтягне нічого в твою роботу, просто ти змінишся на іншу гілку. Для твоєї задачі, це не те, що потрібно.
Ну і чому саме (С) це правильна відповідь.
Оце справжня магія. Уявить, що ваша робота була як окремий блок LEGO, який ви будував трохи раніше. А тепер ти просто переробляєш цей блок, щоб поставити його вже після останніх нових деталей з основної конструкції (main).
В результаті твоя історія ніби (переписується), і виглядає, що ти почав працювати вже після того, як додали всі зміни з main. Ніяких зайвих злиттів, історія чиста і логічна. Ідеально для тих, хто хоче тримати порядок.
ну і підсумуємо)
чисту історію щоб потім самим і колегам було легко розібратись, що і коли зроблено
без зайвих комітів, які часто з'являються при злиттях і плутають
щоб ніби ти почав працювати після всіх актуальних змін, так простіше вирішувати конфлікти і підтримувати порядок.
якщо просто rebase це як переписати історію, зробити все акуратно і красиво.
якщо є шо сказать, пішіть в коментарі поболтаємо)
Всім гарного вечора друзі - Обняв 🤗🤗🤗
Дивлюсь пул вийшов цікавим) давайте розберемо його коротенько як завжди.
і так чому це не (А)
Це як сказати, Хай історія моєї роботи і основна історія просто зіллються докупи. Зручно, але є це саме але,
У результаті з’явиться додатковий коміт, такий собі (зшивач) двох історій. Це ніби у твій щоденник вставили сторінку з написом Злиття. І якщо таких злиттів багато історія стає (заплутаною), довго шукати, де що змінилось.
Ну і я розумію чому саме більше всього (B), але все ж питання стояло по іншому)
Тут ви просите гіт завантажити всі нові зміни з main і зліпити їх у себе.
Так це Працює, але робить майже те саме, що і merge, тож коміти-злиття теж з’являться. Якщо ти хочеш чисту історію, цей варіант, не найкращий.
Чому ні (D) ну тут все коротко.
Це просто перейти у гілку main. Тобі не підтягне нічого в твою роботу, просто ти змінишся на іншу гілку. Для твоєї задачі, це не те, що потрібно.
Ну і чому саме (С) це правильна відповідь.
Оце справжня магія. Уявить, що ваша робота була як окремий блок LEGO, який ви будував трохи раніше. А тепер ти просто переробляєш цей блок, щоб поставити його вже після останніх нових деталей з основної конструкції (main).
В результаті твоя історія ніби (переписується), і виглядає, що ти почав працювати вже після того, як додали всі зміни з main. Ніяких зайвих злиттів, історія чиста і логічна. Ідеально для тих, хто хоче тримати порядок.
ну і підсумуємо)
чисту історію щоб потім самим і колегам було легко розібратись, що і коли зроблено
без зайвих комітів, які часто з'являються при злиттях і плутають
щоб ніби ти почав працювати після всіх актуальних змін, так простіше вирішувати конфлікти і підтримувати порядок.
якщо просто rebase це як переписати історію, зробити все акуратно і красиво.
якщо є шо сказать, пішіть в коментарі поболтаємо)
Всім гарного вечора друзі - Обняв 🤗🤗🤗
2👍7❤5❤🔥2🔥1
This media is not supported in your browser
VIEW IN TELEGRAM
Доброго ранку, банда!
П’ятниця вже тут, а це значить, що час налити собі кашечку кави, глянути на беклог і спробувати зробити вигляд, що все під контролем 😄
Чистим таски, оновлюємо доки, добиваємо пару фіксів і вже ближче до вечора можна переходити в режим не турбувати до понеділка.
А на відео, дуже сподіваюсь, що це не ваш продакшен сьогодні😂
Бо якшо так, то точно не до кави буде 😅
Як ваш настрій?
Обійняв 🫶
П’ятниця вже тут, а це значить, що час налити собі кашечку кави, глянути на беклог і спробувати зробити вигляд, що все під контролем 😄
Чистим таски, оновлюємо доки, добиваємо пару фіксів і вже ближче до вечора можна переходити в режим не турбувати до понеділка.
А на відео, дуже сподіваюсь, що це не ваш продакшен сьогодні😂
Бо якшо так, то точно не до кави буде 😅
Як ваш настрій?
Обійняв 🫶
😁19❤2🤗2
Завдання дня для QA:
У чому головна особливість sessionStorage, яка відрізняє його від localStorage?
У чому головна особливість sessionStorage, яка відрізняє його від localStorage?
Anonymous Quiz
18%
(A) Зберігає дані між вкладками одного браузера
76%
(B) Дані очищуються після закриття вкладки чи браузера
6%
(C) Має більший об’єм для зберігання, ніж localStorage
1%
(D) Не підтримується в сучасних браузерах
❤4⚡2