Test Engineering Notes – Telegram
Test Engineering Notes
3.8K subscribers
177 photos
2 videos
641 links
Україномовний канал про технічні аспекти тестування, розподілені системи, блокчейн та кібербезпеку.

Консультації з автоматизації, менторинг, проведення співбесід - @al8xr
Download Telegram
Досить чекати на результати - нехай комп'ютер сам про це скаже!

#testing #terminal

Час від часу нам треба запускати якісь довгі тести або скрипти на локальній машині. Але чекати на результат та дивитись тільки в термінал - то дуже нудно.
З іншого боку, можна відволіктися та залипнути в іншій задачі (або у відео на ютубі) та пропустити, коли задача буде виконана.

Пропоную вам альтернативу. Можна попросити комп'ютер сказати, коли тести будуть завершені.
Для цього є команда say (на OSX) та spd-say (на Ubuntu)

pytest -vv -log-cli-level=DEBUG; say "Test run is finished. Please check results"

pytest -vv -log-cli-level=DEBUG; spd-say "Test run is finished. Please check results"

Не знав про таке. Але виглядає як мінімум цікаво.
👍317
Цікаве зі світу тестування

#testing #automation

Всім привіт. Сьогодні п'ятниця, але подкаст зараз у відпустці.
Якщо вам нічого почитати на вихідних (чи навіть сьогодні, коли під час релізу усі будуть бігати та дивитись як білд горить) - ділюся трьома цікавими новинами зі світу тестування:

- Виявляється, Microsoft працює над хмарним сервісом для запуску тестів на Playwright.
- Ось тут покроково розповідають, як за GitHub Copilot вже зараз генерує тести та моки. (А ви можете писати моки?)
- А тут - Simon Stewart в інтерв'ю ділиться своїми враженнями про те, як Google та Facebook тестують свій код

А що ви цікавого читали чи дивились цього тижня? Що взнали? Діліться в коментарях!
🔥22👍92
NIST обрала пост-квантові криптографічні алгоритми для стандартизації

#cryptography

NIST (Національний інститут стандартів і технології США) після довгих досліджень обрав алгоритми, які буде стандартизувати та рекомендувати для застосування усім в еру квантових комп'ютерів. Весь процес відбору заняв близько семи років (з 2016 року!)

- CRYSTALS–KYBER як алгоритм інкапсуляції відкритого ключа
- CRYSTALS–Dilithium, FALCON, та SPHINCS+ - як алгоритми цифрового підпису

Тепер будемо чекати, як блокчейни почнуть імплементувати такі речі в себе.
12👍1
Кар'єрна порада варта уваги.
65👍14
Test Engineering Notes: Vol.5. Про тестування LLM, ідею тест-кейсів, баги в безпеці Microsoft й не тільки

#testing #engineering #digest

Серпневий дайджест вже готовий.

TLDR, або Що у випуску
- Розбір деяких багів в безпеці (типу Heartbleed) та роздуми про те, чим можна було б їх знайти за допомогою модульних тестів
- Поради для тих, хто в автоматизації хоче рости в T-Shape спеціаліста
- Чудова візуалізація quality gates
- Тестування LLM та нові інструменти тестування розподілених систем
- Інтерв’ю з Саймоном Стюартом про те, як Selenium використовують Meta та Google
- Julie Evans ділиться думками про те, чому може бути корисним користуватись командною стрічкою
- Детальний опис останнього злому Microsoft (та декілька інших багів в безпеці — нових та старих)
- Статті про те, коли варто змінювати роботу та як працювати (та менеджити) «складних» співробітників
👍19🔥1
Why Do Old Books Smell So Good?

#books

Сьогодні п'ятниця (та ще й "найулюбленіший" день усіх школярів)
Для когось - це день релізів та овертаймів.
Для когось - привід завершити усі можливі робочі задачі та підготуватись до вихідних.

Тому я приніс просто цікаву статтю для тих, хто любить читати.
👍14
How to test a video stream?

#testing

Не можу не поділитись цікавим постом від MYKOLA AVRAMUK про те, як тестувати різного роду стримінги.
Наче ковток свіжого повітря в океані е2е тестів та усіляких сайпресо-плейратів.
👍174
Працюємо з декількома сессіями з командою screen

#noscripting #bash #linux

Задача
Треба запустити N вузлів з різними вхідними параметрами, портами та ін. Для кожного вузла підготований власний shell-скрипт.

- Можна робити це вручну, в різних табах терміналу.
- Можна - запускати та відправляти процеси в бекграунд.

А можна - за допомогою команди screen.
Ця команда дозволяє переключатись між різними окремими сессіями в терміналі (наприклад коли вам треба запустити якісь процеси в рамках однієї SSH сессії). Доволі зручно.

#!/bin/bash
nodes=("a" "b" "c" "d" "e")

for node in "${nodes[@]}"; do
screen -dmS $node bash -c "~/noscripts/${node}.sh; exec bash"
echo "Started ${node} node"
done
echo "Nodes have been started in separate screens."

Прибрати усі наявні скріни можна наступним скріптом:

#!/bin/bash
active_sessions=$(screen -ls | grep -o '[0-9]\+\.')

for session in $active_sessions; do
screen -S "${session%?}" -X quit
done
echo "All screen sessions have been terminated and closed."
👍11👏2
Незрозумілі Bash скрипти (та команди) - та що з цим робити

#noscripting #linux

Задача: Що робити, коли з вами поділились корисною складною cmd командою або скриптом - а ви не розумієте, як вона працює?
Щось типу
git log --graph --abbrev-commit --pretty=oneline origin..mybranch


Рішення:
- Можна, авжеж, й далі вважати себе маглом та думати, що це магія поза зоною вашого розуміння. (привіт, синдром самозванця!)
- Можна запитати в автора та попросити розповісти (тут треба мати прокачані soft skills)
- Можна запитати в ChatGPT (nice!)
- А можна скористатись досить непоганим сервісом explainshell де вам розберуть кожну команду та параметр.
👍322🥱1
Майндмапи з тестування на будь-який смак

#testing

Знайшов підбірку майндмапів з багатьох аспектів тестування - web, mobile, api. Щось цікаве знайти можна.
👍287🥱1
Про QA Party Hard, Lviv (September edition)

Про конференцію
Сьогодні вранці я тільки-но повернувся зі Львову, де брав участь в благодійній конференції QA Party Hard.
Дуже затишна та кулуарна конференція. Зал кінотеатру з приглушеним світлом та звуком додавав атмосфери таємничості та дійсно якогось "закритого" клубу. (А воно так і було!😂).
Крім того, вибір тем також хороший. Це були дійсно історії з практики (стільки варіантів ретро я навіть й не уявляв) та те, про що українською розповідають дуже рідко (наприклад про accessibility testing). Авжеж не забуду про доповідь БДД та індусів.
Тому дуже раджу відвідати наступні конференції!

Про доповідь
Це був дебют для мене в декількох сенсах.
По-перше це був мій перший офлайн виступ з доковідних часів. По-друге - то була моя перша доповідь українською мовою.

Доповідь моя була про те, що таке блокчейн та як його тестувати. Тема дуже велика, насичена та непроста.
Для тих, хто хоче переглянути схеми, слайди та інструменти - ось посилання.
Якщо у вас залишились або з'явились якісь запитання після доповіді - можна задавати їх тут, у коментах. Або в дірект.

Ще раз дякую Роману з QA Club Lviv за запрошення. Дякую слухачам та спікерам за цікаві розмови в кулуарах.
Побачимось на наступних конференціях.
P.S. Окремий привіт Володимиру, Євгену та Олександру (Куперу).
26👍5❤‍🔥1🥱1
How to sound smart in your TEDx Talk

#speaking #video

"Як правильно говорити?", "Про що говорити?", "А що, як люди це вже знають та буде занадто банально?". Такі питання ми задаємо собі, коли готуємо будь-яку доповідь.
А що, якщо я вам скажу, що можна зробити нереально круту доповідь ... ні про що?
Саме так. Причому зробити це на відомій конференції TEDx. Думаєте це неможливо? А цьому хлопцю вдалося.

Де б ви не виступали - перед колегами, на локальному мітапі чи великій конференції - дуже раджу подивитись цю доповідь. Подача, темп, слайди, паузи - все на місці.
Це, мабуть, найкраща TED доповідь, що я бачив. Всього п'ять хвилин вашого часу.
👍21🤔1💩1
Конспект на одну сторінку для тих, хто хоче відновити знання з базових структур даних
🔥40👍7
Avi Rubin: All your devices can be hacked

#security #video

Натрапив на невелике цікаве відео про те, як різні сучасні технології можна зламати.

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

Як? Відповіді у відео.
👍103
Forwarded from Нотатки суворого QA 💛💙 (Artem Grygorenko)
⚡️Епізод 11: Де тестувальник занурюється в історію

Ласкаво
просимо у другий сезон подкасту Testing Minutes.

Дев'ятого вересня тестувальники відзначали своє професійне свято. В цей день, аж 76 років тому, знайшли та задокументували перший баг.
Саме тому Артем та Олександр в цьому епізоді вирішили трошки зануритись у історію та знайти цікаві баги. Баги, які є доказом того, що помилки бувають усюди - навіть у великих компаніях та космічних апаратах.
🔸 YouTube
🔹 Spotify Podcast
🔸 Apple Podcast
🔹 Google Podcast

А ще ви можете підтримати наш подкаст будь яким донатом на Buy Me a Coffee ☕️
Окрім того, за різні підписки ви зможете отримати доступ до закритого чату подкасту, отримувати нові епізоди до самого виходу, а також є можливість присутності під час запису 😏

#testingminutes | @a_grygorenko | Test Engineering Notes
🔥13👍5
Про "ненадійність" MFA та нові технології зламу систем

#security #testing

Колись, треба було мати хоча б один пароль (який-небудь) для усіх сервісів. Потім рекомендували мати складний пароль з цифрами, спеціальними символами та літерами. Бажано - різний для кожного Вашого сервісу.
Далі настала потреба мати ще більше захисту - ввели OTP або інший варіант мульти-факторної аутентифікації. Один з розповсюджених варіантів - користуватись сервісом для генерації паролів типу Google Authenticator.

Та чи справді це гарантія захисту? Виявляється, що ні.
В кінці серпня цього року компанію Retool зламали. Причому зламали аккаунти, що були захищені MFA.

Але як?
Зловмисники спочатку надіслали фішингові SMS співробітникам. Більшість людей проігнорувала такі SMS, але одна людина таки клікнула.
Далі, ця людина зайшла по посиланню на фейковий "робочий" портал та ввела свій логін та пароль. А для того, щоб отримати згенерований пароль з Google Authenticator - зловмисники подзвонили цій людині, змінили свій голос за допомогою deepfake!!! на голос системного адміністратора та попросили співробітника сказати цей OTP пароль. Причому, хакери мали достатньо інформації про компанію, щоб звучати переконливо.

Додатковою проблемою стало те, що Google Authenticator з замовчуванням дозволяє синхронізувати дані між девайсами. Тому зловмисникам вдалося отримати не просто разовий доступ до аккаунту, а постійний.

Висновки:
- скільки не будуй систему безпеки - найбільш ненадійними все ще залишаються люди
- треба вивчати та перевіряти усі функції систем (навіть ті, що йдуть за замовчуванням та "покращують" usability)

Більше про цей інцидент - в блозі компанії.
🔥21😁4👍3
Запрошую послухати про тестування в блокчейні

#event

Всім привіт!

Для тих, хто не мав можливості доєднатись до теплої та кулуарної конференції QA Party Hard від QA Club Lviv - маю ще одну можливість послухати про тестування в світі блокчейну.

28 вересня (четвер) о 18:30 в Discord-спільноті SET University я зроблю доповідь на тему "Що таке блокчейн та як його тестувати". Реєстрація не потрібна, достатньо перейти за посиланням. Раджу зайти вже зараз, натиснути "Цікаво" (щоб прийшло сповіщення в Discord) та у налаштуваннях додати івент собі в Google Календар.

Буду радий усіх бачити на івенті.
👍21
Легке покращення командної стрічки вже сьогодні

#testing #cmd #linux

Задача
В повсякденній роботі мені потрібно працювати з багатьма різними інструментами з комадної стрічки. Час від часу нові версії інструментів з'являються та я забуваю, де яка версія лежить. Плюс - багато інструментів потрібно використовувати з зазделегідь прописаними параметрами на вході.

Що хотілося б?
Мати можливість викликати інструменти короткими командами та не паритись, де конкретно ці інструменти лежать.

Рішення
Я скористався старими добрими alias'ами (псевдонімами) в Linux. Це можливість створити нові команди на основі старих, або навіть комбінації декількох команд.
Наприклад, для Git це може бути
git st
замість
git status -sb
. Або ж
some-cli 
замість
 docker exec container-name some-cli

Як зробити?
1. Створити файл ~/.bash_aliases та покласти усі псевдоніми туди. Щось типу:
alias ls='ls --color=auto'
2. Додати інформацію про новий файл до ~/.bashrc
if [ -f ~/.bash_aliases ]; then
. ~/.bash_aliases
fi

P.S. Потрібно слідкувати за версіями інструментів та своєчасно оновлювати їх.
P.P.S. Можна робити псевдоніми для Git команд прямо в його конфігурації
git config --global alias.co checkout
👍122
Forwarded from Нотатки суворого QA 💛💙 (Artem Grygorenko)
⚡️Епізод 12: Де тестувальник розбирається із зустрічами 1 на 1

Цього разу, Артем та Олександр вирішили -побачити сон всередині сна- поговорити вдвох про зустрічі 1 на 1.
Виявляється, що правильні зустрічі можуть принести багато користі як інженеру, так і менеджеру. Але, які зустрічі правильні? Що потрібно робити обом сторонам?

Дивитись та слухати:
🔸 YouTube
🔹 Spotify Podcast
🔸 Apple Podcast
🔹 Google Podcast

А ще ви можете підтримати наш подкаст будь яким донатом на Buy Me a Coffee ☕️
Окрім того, за різні підписки ви зможете отримати доступ до закритого чату подкасту, отримувати нові епізоди до самого виходу, а також є можливість присутності під час запису 😏

#testingminutes | @a_grygorenko | Test Engineering Notes
13
Test Engineering Notes: Vol.6. Про QA в Microsoft, дублікати багів в Google, злам Retool та розробку аналогів Twitter

#testing #engineering #digest

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

TLDR, або Що у випуску

- як Microsoft позбавилася усіх SDET`ів та що з цього вийшло
- коли контрактні тести дійсно потрібно
- чи можна автоматизувати перевірку платежів в IOS
- як інженери в Google боролись з дублікатами багів за допомогою machine learning
- математичний доказ того, чому гучність розмов у великій компанії зростає із часом
- як “легко” побудувати “вбивць” Twitter - на прикладах Threads та Mastodon
- чому застосування MFA - це не панацея для вашої кібербезпеки
- як правильно ставити питання - щоб отримати корисні відповіді
- багато багато іншого
👍12🔥8