Bug or Defect?
2.51K subscribers
237 photos
94 videos
1 file
213 links
Download Telegram
Bug or Defect?
Завдання дня для QA:

Яка база краще для зберігання такого JSON? { "user": "Іван", "items": [ { "product": "Чай" }, { "product": "Кава" } ] }
Привіт друзі - ну що чучуть розберемо цей пул?


(A) Excel ну я думаю тут не будемо сильно зупиняться і так все понятноТак,
Excel топ для таблиця хто що здав, але JSON з вкладеним масивом у Excel виглядає як трагедія.
Пробуєте розтягнути items, зберегти цілісність структури, а потім ще це все парсити... Це не база це костиль)


Чому все ж не (B) хоча так хотілось би, Так?
На перший погляд виглядає як норм: робимо таблицю users, окремо items, через user_id зв'язуємо. Але постійно є це АЛЕ, Структура JSON вимагає нормалізації а масив items це взагалі окрема таблиця ну і потрібні JOIN'и для відновлення повної структури
І якщо у product завтра додасться поле price треба міняти схему.

це ускладнює зберігання гнучких структур.
SQL, дійсно хороший варіант, коли схема стабільна та фіксована.

(D) Google Docs, для копіпасту - тут теж все просто і зрозуміло)
Ніяких індексів, запитів, цілісності, Це не база, а текстовий документ. JSON там зберігається просто як текст.



ну і чому саме (C) NoSQL, правильна відповідь)
Наприклад, MongoDB, документна база, яка приймає JSON/BSON як є. Це прямо такий об’єкт, без трансформацій, зберігається як документ. Масиви, вкладення, різні типи ну і усе зберігається без втрати структури. це дуже підходить для API-first підходу, де UI/API головні, а база лише бекенд.

Якщо прям Технічно - insertOne({ user: "Іван", items: [...] }), це вже вся операція, як що пошук: db.orders.find({ "items.product": "Чай" }) так кажучи Без JOIN, без схеми, без болю

У тестах зручно перевіряти, що API повертає, і зберігати аналогічну структуру.

як кажуть QA не тільки клік і подивився.
А треба зрозуміти, як і де зберігаються дані, це вже рівень вище.
Бо коли API скаже "500", ти маєш знати, де воно могло впасти.

Обійняв 🤗
🔥11❤‍🔥4🤗31
This media is not supported in your browser
VIEW IN TELEGRAM
Привіт, друзі! Як ранок?

Я вже дві кави навернув і зараз буду вклинуватись у роботу. Сьогодні, схоже, знову тяжкий день, задач купа, вхід у роботу як у лід в ополонці )
але що нам

Пізніше на обіді опишу вам вчорашній фокап, як я читав системні лінуксові логи на Windows, бо моя Linux-машина в ремонті. Квест реально 10 з 10: ssh нема, 80-й порт закритий, а журнал треба глянути.

А поки, бажаю вам гарного і стабільного дня!
На відео, скоріше за все, сьогодні

На Відео ОБЕРЕЖНО мат)

Обняв🤗🤗☀️
😁12👍4🤣1🤗1
Ну що всім ще раз привіт)

Обідня Історії QA)

Коротше, моя Linux-машина в ремонті. І виявилось якщо треба почитати системний лог з лінукса на вінді, це та ще пригода.
А ситуація така: приходять до мене і кажуть, апка не працює, REST не відповідає.
Ну і я такий як завжди думати що не так

А Сертифікат живий?
Пішли перевіряти. За пару хвилин повертаються:
Та ні, просрочений. Вже кілька днів.

Ну я в шоці, TLS мав сам автоматом оновити. Значить десь щось пішло не так...

Окей, думаю, стягну логи з сервера, подивимось по acme, шо там і як.

Ну всі і так знають але нагадаю
Команда, щоб скачати лог з лінукса
scp user@server:/var/log/syslog ./syslog

(або

/var/log/journal/

якщо journald - тут треба дивитись, куди пише система)

Але тут почалось найвеселіше, як його глянути на вінді?
Бо журнал в journalctl-форматі, це не просто текстовий файл. Він у бінарному форматі systemd journal.


Як скачати логи з Linux на Windows (якщо твій комп тимчасово на Windows)?

вроді все легко, але коли ти це знаєшь, коротше робиться це через scp,
але треба або:

WSL (якщо в тебе встановлений), або OpenSSH client в PowerShell.

Якщо ще не встановлено то треба качать WSL
wsl --install


Після ребуту (або через Microsoft Store) постав Ubuntu. І тільки тепер можна юзати scp прямо з PowerShell або Ubuntu консолі у WSL.

Команда для завантаження логів з Linux-сервера
scp user@your-server:/var/log/syslog C:\Users\yourname\Downloads\

або якщо файл з journal:
scp user@your-server:/var/log/journal/remote/system.journal C:\Users\yourname\Downloads\


Ну якщо пароль не питає або каже "permission denied" можно зробити і додати ключ -i для ssh-ключа або зробити ssh-copy-id на Linux перед цим

Після того, як скачав лог (наприклад syslog або system.journal), треба подивитися, що там взагалі писалось про acme, certbot, або letsencrypt.

Якщо це простий .log файл (наприклад syslog,

/var/log/syslog, /var/log/letsencrypt/letsencrypt.log)

:


То можно просто юзати
cat syslog | grep acme
cat syslog | grep certbot
cat syslog | grep letsencrypt

або на вінді (через PowerShell):
Select-String -Path .\syslog -Pattern "acme"



можете побачити такий лог умовно,
acme: Attempting to renew cert...
acme: Renewal failed: Could not connect to http://yourdomain/.well-known/acme-challenge/...
або
certbot[12345]: Successfully received certificate.
certbot[12345]: Cert is not due for renewal


Тобто видно:
чи взагалі намагався оновлювати, чи пройшла валідація яка була помилка (80 закритий, DNS не той, або ще щось) або коли останній раз проходило успішно

Якщо у вас systemd journal (system.journal, journalctl), то фільтруєте так:


journalctl --file=./system.journal | grep acme
journalctl --file=./system.journal | grep certbot

або без grep:
journalctl --file=./system.journal -u certbot

Можна ще по часу:
journalctl --file=./system.journal --since "3 days ago" | grep acme


Якщо проблеми скоріше покаже щось типо того - вони типо за часту стандартні
acme: Renewing an existing certificate
acme: Could not connect to http://mydomain.com/.well-known/acme-challenge/

одразу зрозуміло: серт пробував оновити, але 80-й порт був закритий зовні. Сертифікат не зміг зробити HTTP-челендж.
Як результат, автоматичне оновлення впало, і ніхто не побачив. Сертифікат протух.

Ну і да Якщо у вас certbot з логами

/var/log/letsencrypt/letsencrypt.log

там теж все видно, навіть без journal. Можна просто відкрити й шукати ERROR, challenge, timeout, renewal.

Ось Тепер ви знаєте, як викачати і прочитати логи, навіть якщо ти тимчасово на Windows.
І ще раз переконався, що журнал це твій друг.

Може ви знаєте якісь другий спосіб або свидший то пишіть - мені це буде цікаво і актуально)
7❤‍🔥43🔥2👍1
Завдання дня для QA:

Апка на стейджі не відповідає. Фронт шле запит умовно на https://backend.internal/api, але 500 або взагалі тиша. API нібито підняте, все має працювати, але не працює: Що перевіриш у першу чергу?
Anonymous Quiz
36%
(A) ping backend.internal
10%
(C) nc -zv backend.internal 443
10%
(D) telnet backend.internal 443
👀14👍31🔥1😁1
Всім доброго вечора колеги, як ваш день)

Сьогодні трохи про SQL. Але не з позиції "от вам SELECT, INSERT і біжіть".

Багато хто з QA знає базові запити, але цього недостатньо, коли починається реальна робота з проєктом. Особливо, якщо це мікросервіси, складна логіка чи просто бажання перевірити, що дані справді коректно записались після форми чи API-запиту.

SQL це не лише про "уміти писати SELECT", це про "розуміти, як поводяться дані всередині". Чому запит не повертає результат? Чому після UI-дії в базі дірка? Чому UPDATE без WHERE може все зламати?

Тема сьогодні: топові SQL-команди, які повинен знати кожен QA, це не строго але вам буде великий +++
Ось вам зручна шпаргалка по всьому

Який поін від мене)
SQL, це не про бази, це про контроль.
Іноді саме SELECT покаже більше, ніж будь-який UI.

Всім гарного вечора друзі)

Обняв 🤗🤗🤗💛

Буду вдячний за репост группи якщо вам заходить мої дописи 🫣
1👍197🔥32🤗2
Доброго ранку, друзі! Як настрій?

В Одесі сьогодні свіже повітря після дощу, якраз той настрій, коли хочеться пити каву на балконі й шукати щось нове для росту

Натрапив на класну статтю для QA, хто хоче або вже керує проєктами. Вона не про як писати баг-репорти, а саме про управління кількома проєктами, пріоритетами, людьми й процесами. Якщо ви вже відчуваєте, що просто тестувати, цього мало, дуже раджу

https://www.practitest.com/resource-center/article/qa-project-management/

Можливо, хтось уже керує або хоче рости далі, прочитайте, може знайдете щось нове для себе. Якщо зайде, напишіть, цікаво чи ми на одній хвилі мислимо

Гарного дня всім!☀️☀️☀️
Обіймаю 🤗🤗🤗
❤‍🔥105👍51
Завдання дня для QA:

Фіча: Додав товар, з'являється попап з кнопкою Перейти в корзину. Тест: Попап є/ Кнопка працює / UI норм/ Але в базі товару немає Це ще acceptance-тестування?
Anonymous Quiz
19%
(A) Ні, це просто флоу
46%
(B) Так, бо перевіряється бізнес-вимога
33%
(C) Ні, це інтеграційне
2%
(D) Так, але тільки в проді
👍4👀4🔥2
This media is not supported in your browser
VIEW IN TELEGRAM
Друзі, всім привіт і обійми ❤️
Як ви? Сподіваюсь, усе добре і ви в безпеці.

Знаю, буває важко. Настрій не завжди на висоті. Але головне, не опускати голову.
Сьогодні чудова нагода зробити ковток теплого повітря після дощу, прогулятись, усміхнутись рідним, зробити собі смачну каву.

Я просто хочу побажати вам гарного дня і трохи натхнення 🌤
Ось вам коротенький мотиваційний ролик, гляньте, може стане тепліше:

Cильні💛💛💛
Обняв!🤗🤗🤗
19🤗8🥰3
Доброго ранку, друзі! ☀️☀️☀️

Як ваші справи? Як минули вихідні?

Ну що, вриваємося у робочі будні? Так!

Вчора мав дуже цікаву розмову з лідом одного стартапу. І знову почув те, що сам давно відчуваю, мануальне тестування не вимирає. І не вимре ще дуже довго. ШІ та автомейшн, це дійсно круто, але роль manual QA все одно критично важлива на багатьох етапах розробки.

Я навіть настільки загрузився цим питанням, що знайшов круту статтю, вона розкриває багато нюансів щодо майбутнього manual QA
https://testrigor.com/blog/does-manual-testing-have-a-future/

Обов’язково почитайте, і напишіть, що думаєте - як ви вважаєте?
А трохи згодом зроблю свій розбір цієї теми та додам особисту думку, я вже якось це сгадував але коротенько, бо мене часто питають, Чому ти не пішов у автоматизацію, якщо знаєш Python і автоматизуєш собі роботу?

Тримаємо фокус, заряджаємось кавою, і вперед!

Всім бажаю гарного настрою і рабочего дня)

Обняв 🤗🤗🤗
10🔥6👍5
Завдання дня для QA:

Кейс: Користувач скаржиться що сайт на телефоні відкривається, а на комп'ютері показує "браузер не підтримується". Твоя задача, знайти причину. Який заголовок HTTP ти перевіриш у першу чергу?
Anonymous Quiz
5%
(A) Authorization
66%
(B) User-Agent
15%
(C) Accept-Encoding
14%
(D) Host
👀8
Bug or Defect?
Завдання дня для QA:

Апка на стейджі не відповідає. Фронт шле запит умовно на
https://backend.internal/api, але 500 або взагалі тиша. API нібито підняте, все має працювати, але не працює: Що перевіриш у першу чергу?
Привітик друзі - ну що розберемо цей дуже цікавий пул по відповідям)

Чому не (А)
Ping класика мережевого пінг-понгу. Він перевіряє, чи є мережевий зв’язок між твоїм компом і сервером.
Це рівень машина є в мережі, перевіряє ICMP-протокол, а не HTTP чи HTTPS. Але cервер може відповідати на ping, але порт, на якому слухає API (443), може бути закритий або заблокований. Тобто ping не гарантує, що твій сервіс взагалі доступний для запитів.


Чому не (B) але він лідер у вибору
Так на перший погляд, це ж прям як треба, робиш запит і дивишся, що відповідає API.
Але! Якщо порт або мережа блокує, curl може зависнути або дати загальну помилку, і ти не побачиш, чи справа у мережі, чи в самому API.
Круто для діагностики, коли ти вже знаєш, що порт відкритий. Але на старті це як стріляти у темряві.


(D) тут не будемо багато зупинятися
Telnet це старенький, але іноді корисний інструмент, що дозволяє встановити TCP-з’єднання з портом.
Так працює схоже на nc, але не завжди встановлений за замовчуванням на сучасних системах.

Ну і чому саме всеж (С) лідер в цьому питані
Netcat це як такий маленький швейцарський ніж для мережевих перевірок. Ключ -z означає не шлимо дані, лише перевіряємо чи порт відкритий, а -v щоб бачити деталі.
Ця команда швидко скаже вам так, тут порт відкритий і хтось слухає або Ні, закрито/фільтрується, ідеально для старту розслідування чому 500 або тиша, бо якщо порт не доступний API ніколи не відповість.

Як кажуть куа, це не просто клік і дивись.
Треба розуміти, що під капотом де, як і чому може впасти твоя апка.
Бо тільки так можна швидко і ефективно знайти причину проблеми.

Гарного вечора🫣
❤‍🔥5👍5🔥1
This media is not supported in your browser
VIEW IN TELEGRAM
Всім доброго вечора - сподіваюсь я ще вам не надоїв)

Але я не міг це не скинути, і не кажіть шо це не правда)

Сподіваю вас це улибнуло)

Всім гарного вечора - на зв'язку

Сильні 💛
🤣23🔥4👍1
This media is not supported in your browser
VIEW IN TELEGRAM
Друзі, привіт! Як ваші справи сьогодні?

В Одесі було гучно цієї ночі… Сподіваюсь, у вас все добре, ви в безпеці 🤗
Але день починається, треба працювати й робити користь

Бажаю вам продуктивності, тепла й посмішок сьогодні! 😊

Також хочу трішки познайомитись ближче, нас тут багато людей, і дуже цікаво дізнатись, хто ви
Тож давайте невеличке інтерактивне опитування, поставте реакцію)

❤️ Manual QA
🤖 Automation QA
😎 Гібрид (manual + automation)
🧭 У пошуках роботи QA
🌱 Початківець
👀 Просто цікаво слідкую
👨‍💻 Developer
⚙️ DevOps

Можете просто в коментарі)

На відео впізнали себе? 😄
Буду вдячний за вашу активність, це допоможе робити ще крутіший контент для всіх

Обняв! 🤗🤗🤗
74😎18🤓3