Какво е кеш, какво са бисквитките?
QA / QA Automation
Какво е матрица за проследяване и как се формира?
От какво се състои HTTP заявката?
За каква цел се използва ORM в тестовете и в кои случаи е по-добре да не го използвате?
Обектно-ориентираното програмиране (ООП) е подход към разработката на софтуер, при който кодът е организиран под формата на обекти Инкапсулация Инкапсулацията е обединяване на данни и методи, които работят с тези данни, в рамките на един клас, както и ограничаване на директния достъп до вътрешното състояние на обекта. Просто казано: обектът управлява собствените си данни, а външният код взаимодейства с него чрез методи. Абстракция Абстракцията е изолиране само на важните характеристики на обекта и скриване на детайлите на неговата реализация. Просто казано: потребителят се интересува от това, което прави обектът, а не как точно го прави. Полиморфизъм Полиморфизмът е възможността на обекти с различна реализация да използват един и същи интерфейс. В тестовете това помага да се пише универсален код, който работи с различни типове данни или класове. Пример в Python: class Animal: def make_sound(self): pass class Dog(Animal): def make_sound(self): return "Га!" class Cat(Animal): def make_sound(self): return "Мяу!" def animal_sound(animal: Animal): print(animal.make_sound()) dog = Dog() cat = Cat() animal_sound(dog) # Га! animal_sound(cat) # Мяу! В автоматизираните тестове полиморфизмът е полезен за: - Създаване на универсални методи за проверка - Реализиране на различни стратегии за тестване чрез един интерфейс - Поддръжка на различни версии на API/UI без промяна на тестовете Наследство Наследството е механизъм, който позволява на нов клас автоматично да използва съществуващ клас, наследявайки неговите свойства и методи. Просто казано: новият клас рециклира кода на родителския клас и го разширява при необходимост.
REST API: как да създадете mock услуга? Дайте примери за инструменти.
Каква е разликата между методите PUT и PATCH и какви са техните особености при работа?
Как се решава проблемът с гонката на съобщенията в Kafka?
Разкажете ни за жизнения цикъл на грешката. Могат да се използват статуси.
Каква информация се предава в заглавките на HTTP заявката?
За какво се използват ORDER BY и GROUP BY в SQL? Какви агрегатни функции използвахте в работата си?
Какво е проследяване на съобщения и как помага за локализиране на дефект в архитектурата на микросервизи?
В кои случаи има смисъл да използвате асинхронност и в кои не? Как реализирате асинхронността в тестовете?
Как се реализира soft assert в pytest за няколко проверки в тест, така че тестът да не се проваля при първата грешка, а да изпълнява всички проверки?
Каква е разликата между итератор и генератор?
Каква е разликата между тестовете Smoke, Sanity и Regression?
Как да прихванете и модифицирате отговора от API в Playwright за тестване на UI?