fa
Feedback
Test Engineering Notes

Test Engineering Notes

رفتن به کانال در Telegram

Канал про технічні аспекти тестування, розподілені системи, блокчейн, ШІ та перфоманс. Консультації з автоматизації, менторинг, тестові співбесіди - @al8xr

نمایش بیشتر
3 913
مشترکین
+224 ساعت
-37 روز
-1130 روز
آرشیو پست ها
Характеристики якості програмного забезпечення #testing Якщо ви думаєте, що на функціональному тестуванні якість закінчується, то ось ще невеличкий список можливих характеритики якості (як зовнішніх та і внутрішніх). Так, це ті самі *-ility та набагато більше. Цей список стане хорошим джерелом ідей, куди розвивати тестування й інструменти на проєкті.

Сіньйор пробує vibe coding (з ШІ) Сьогодні хочу поділитись відео про те, як сіньйори в реальності користуються ШІ. Це ж насправді так, Артуре?

Що краще: enumerate чи range для циклів #python Уявімо, що треба пройти по усім елементам циклу. Це можна зробити дуже просто

fruits = ["apple", "banana", "cherry"]
for fruit in fruits:
    print(fruit)
Якщо ж треба мати доступ до елементу разом із його індексом, є такі варіанти

# range
fruits = ["apple", "banana", "cherry"]
for index in range(len(fruits)):
    print(index, fruits[index])

# enumerate
fruits = ["apple", "banana", "cherry"]
for index, fruit in enumerate(fruits):
    print(index, fruit)
Що краще обрати - enumerate чи range? 1. enumerate більш чисто виглядає та ще й оптимізована на рівні інтерпертатора 2. enumerate не має потенційних проблем з доступом по неіснуючому індексу 3. enumerate дозволяє задати початковий індекс для ітерації

for index, fruit in enumerate(fruits, start=1):
    print(index, fruit)
Окей, а коли ж краще користуватись range? - коли колекція елементів точно індексована - коли не треба мати доступ до конкретного елементу за поточним індексом

for i in range(10):
    print(i**2)

Vibe coding та реальність #engineering #llm Починаємо тиждень з трендів. Останнім часом чув багато хайпу щодо такого поняття як vibe coding. Це коли люди пропагують забити на складне навчання, а всю роботу віддати LLM. Штучний інтелект сам все зробить, а людині треба буде тільки "якось інтегрувати чи просто запустити згенероване". В цьому пості розробник пояснює, чому поки що такий підхід не настільки продуктивний, як його рекламують. А ще - цей підхід несе більше загрози, ніж користі. P.S. Наші досвід та вміння ШІ поки не замінить. Поки ...

Тестування - дуже легко, що там вчити взагалі ... #testing #roadmap З одного боку наче в теорії тестування небагато всього. П
Тестування - дуже легко, що там вчити взагалі ... #testing #roadmap З одного боку наче в теорії тестування небагато всього. Процеси, техніки тест дизайну, інструменти. А з іншого - тестувальнику можна (й треба) розширяти свій світогляд. То ж дозвольте поділитись з вами класною схемою тем, дотичних до тестування, які можна вчити. (Не тільки автоматизація) Посилання на постер в гарній якості - тут.

Why do we fail at interviews? #testing #interview Невелика стаття, де я розповідаю, чому нам зазвичай складно проходити співбесіди. А як ви проходите інтервʼю? Чи вам легко відповідати на усі питання?

Integrated Tests Are Scam #testing #engineering #automation Хороша доповідь про те, чому писати end-to-end UI та інтеграційні
Integrated Tests Are Scam #testing #engineering #automation Хороша доповідь про те, чому писати end-to-end UI та інтеграційні тести - це шлях у нікуди (за думкою доповідача). По факту, він розповідає, що юніт + контрактні тести зможуть майже на 100% замінити оці нестабільні високорівневі перевірки. Про контрактні тести говорили ще 9 років тому!

Чи помирає BDD? #testing Знайшов доволі цікаву статтю про те, що ж таке то BDD, як воно виникло та чому воно помирає. Та чи зникне цей підхід взагалі? Автор наводить приклади, куди можливо буде розвиватись BDD далі - це behavior development. Так, без ШІ не обійшлося.

Testing & Evaluating Large Language Models(LLMs) #testing #ai #llm Сьогодні я хочу поділитись циклом з трьох статей про те, як оцінювати якість роботи LLM систем. - Part 1 - Part 2 - Part 3 Дуже цікаво подивитись на різні метрики для таких систем.

Пошук роботи в 2021 та 2025 #video Начебто розважальне відео, але ...

Чи правда шаурма стає гіршою чим ближче до станції метро ... #engineering #python Цієї пʼятниці хочу поділитись дуже цікавою історією про те, як одна фраза на Reddit може привести до повноцінного проєкту з аналізу даних. А точніше - приклад того, як можна інженерно підходити до перевірки гіпотез.

What would happen if we didn't use TCP or UDP? #engineering #rust Невеличкий експеримент щодо використання кастомних протоколів (відмінних від TCP та UDP). Чи будуть такий протокол обробляти провайдери - такі як Digital Ocean чи AWS?

Що ж робити в такому випадку? 🕶 Треба прийняти декілька важливих умов: 1. Проходити співбесіди непросто - ринок жорсткий й вимоги високі 2. Бути хорошим спеціалістом не дорівнює легко пройти співбесіду 3. Мати десятки років досвіду не означає, що ви відповісте на будь-які питання інтервʼюєра 4. Підтримка навичок в актуальному стані - процес постійний. Бо від звільнень не застрахований ніхто. 👉 Загальні поради: - вчіться проходити співбесіди (наприклад за допомогою мок інтервʼю) - адаптуйтесь під вимоги конкретної компанії - робіть висновки завдяки зворотньому звʼязку після співбесіди - постійно підтримуйте свої важливі навички в актуальному стані - за можливості - діліться знаннями та формуйте свій власний бренд та мережу звʼязків Це - непросто, навіть для сіньйорів. З мок інтервʼю та підготовкою я можу допомогти. Пишіть в ДМ або в коментарі.

Про вміння працювати та проходити співбесіди #interview У кожного з нас є свій набір знань. Туди входять фундаментальні знанн
Про вміння працювати та проходити співбесіди #interview У кожного з нас є свій набір знань. Туди входять фундаментальні знання, набутий власний досвід та вміння. Окрема частин цих знань та вмінь - це те, що. ми використовуємо безпосередньо в роботі кожного дня. Якщо в нас запитають щось з актуального - ми зможемо легко відповісти й написати код. Чим більше працюєш в індустрії, тим більшим стає коло знань та досвіду. Але коло поточних навичок може бути обмеженим - конкретною посадою чи проєктом. Знання для проходження співбесід - це окремий великий пласт знань. Який не завжди пересікається з вашим набором знань. У кожного технічного інтервʼюєра свій власний багаж знань. Плюс - вимоги конкретної компанії до конкретної позиції. Задача інтервʼюєра - знайти перетин між вміннями кандидата та вимогами позиції. Можливо перетину не буде. Але тоді - треба оцінити перспективу швидкого навчання. А ще - знання та вимоги у кожного інтервʼюєра - різні. Шо робити? 🔽

Repost from Testing Minutes
⚡️ Епізод 50: Відповідаємо на питання підписників Чи потрібен Гітхаб для тестувальника? Які найголовніші навички QA, що прино
⚡️ Епізод 50: Відповідаємо на питання підписників Чи потрібен Гітхаб для тестувальника? Які найголовніші навички QA, що приносять більше грошей? Чи переходити в розробку (бо там більше платять)? Коли AI замінить усіх? В цьому епізоді подкасту, Артем та Олександр відповідають на питання від підписників. Дивитись та слухати: 🔸 Youtube 🔹 Spotify 🔸 Apple Ваша підтримка важлива! Ми постійно розвиваємося і рухаємося вперед, але це неможливо без вашої підтримки. Тому будемо вдячні за лайки, коментарі та будь-яку іншу форму підтримки. Це допоможе нам просувати наші подкасти в рекомендаціях. Також ви можете підтримати нас донатом — це дійсно важливо для нас і є нашим рушієм. Дякуємо вам! Підтримати подкаст можна через: 🏦 База від Монобанку #testingminutes | @a_grygorenko | Test Engineering Notes

AI tools and how they kill learning #ai #tools #learning Написав невелику статтю на тему того, як сучасні інструменти зі штучним інтелектом вже зараз впливають на наше навчання. Та на навчання людей, що тільки починають в ІТ. А як ви думаєте - чи легше стало дійсно навчитись новому з ШІ - чи складніше?

Кожен може розробити калькулятор! (та де калькулятор краще - Android чи IOS) #engineering Цікавезна історія, в якій Hans-J. Boehm, що працював над власними версіями garbage collector та деякими частинами стандарту С++, отримав задачу написати ... калькулятор. Здається, задача вкрай проста. Але це не так. P.S. Hans навіть написав дослідницьку роботу про цей досвід - Towards an API for the Real Numbers

Як пишуть код в NASA #engineering Знайшов коротенький документ, що описує вимоги до написання коду в NASA. Тобто це "код для rocket science 🚀". 10 правил для safety-critical коду (на мові С): 1. Користуйтеся тільки простими конструкціями управління 2. Усі цикли повинні мати фіксований ліміт 3. Не користуйтесь динамічною памʼяттю після ініціалізації (привіт, Javascript!) 4. Функції не повинні перевищувати 60 строк (як максимум) 5. Не більше двох ассертів на функцію 6. Обʼєкти даних повинні створюватись на мінімально можливому рівні видимості 7. Результат non-void функцій перевіряє фукнція, що їх викликає; валідність вхідних параметрів перевіряється всередині кожної функції 8. Користування пре-процессорами та макросами повинно бути вкрай обмеженим 9. Посилання (pointers) повинні бути обмежені також 10. Весь код повинен бути компільованим, з першого дня розробки з усіма можливими перевірками на рівні компілятора. Усі помилки компіляції (навіть типу "warning") повинні бути виправлені одразу. Код повинен бути протестований як мінімум раз на день (більше - краще) з усіми можливими аналізаторами та із нульовою кількістю помилок.

Automated Accessibility Testing at Slack #testing #automation Якщо комусь не вистачає матеріалів з accessibility тестування - маю вкрай цікаву статтю. В ній розповідають як такий вид тестування виконують в Slack. Цікаво, як завжди.

Замість пірамід та трикутників ... Наглядний приклад, що пояснює різницю між рівнями тестування (від Wayne Roseberry)
Замість пірамід та трикутників ... Наглядний приклад, що пояснює різницю між рівнями тестування (від Wayne Roseberry)