QA / QA Automation
Правилно ли си спомням, че се договорихме на «ти» — така е по-удобно?
Кои колекции познаваш и използваш?
Имаш ли въпроси относно системата на работа и условията за сътрудничество?
Какво е матрица за проследяване и как се формира?
Тестване на поле с изискване: специални символи и цифри, три от които са задължителни.
Работили ли сте с библиотеката Requests и писали ли сте backend API тестове? Покажете приблизителен пример за тест с Requests.
Разкажи ми за операторите JOIN в SQL. Какви видове има?
Сравнение на Selenium и Playwright: плюсове, минуси, характеристики.
Какви са референтните и стойностните типове в C#? Каква е разликата? Защо има разделение на стек и купа? Как се почиства стекът?
Какво е позитивно и негативно тестване? Каква е разликата и кое се среща по-често?
С какви утилити може да се свържете с отдалечен Linux сървър и да копирате файл на локалната машина?
Какви браузъри поддържа Playwright?
Защо са необходими индекси в база данни, какви са плюсовете и минусите?
За какво използвахте фикстури в тестовете?
Работили ли сте с операционни системи Linux/Unix?
С кои нерелационни бази данни сте работили?
Обектно-ориентираното програмиране (ООП) е подход към разработката на софтуер, при който кодът е организиран под формата на обекти Инкапсулация Инкапсулацията е обединяване на данни и методи, които работят с тези данни, в рамките на един клас, както и ограничаване на директния достъп до вътрешното състояние на обекта. Просто казано: обектът управлява собствените си данни, а външният код взаимодейства с него чрез методи. Абстракция Абстракцията е изолиране само на важните характеристики на обекта и скриване на детайлите на неговата реализация. Просто казано: потребителят се интересува от това, което прави обектът, а не как точно го прави. Полиморфизъм Полиморфизмът е възможността на обекти с различна реализация да използват един и същи интерфейс. В тестовете това помага да се пише универсален код, който работи с различни типове данни или класове. Пример в 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 без промяна на тестовете Наследство Наследството е механизъм, който позволява на нов клас автоматично да използва съществуващ клас, наследявайки неговите свойства и методи. Просто казано: новият клас рециклира кода на родителския клас и го разширява при необходимост.
Работили ли сте с инструмента Visor (вероятно Appium Inspector или друг инструмент)?
Колко време отне решаването на тази задача?
Опитът от автобиографията (финансови организации) е показан в трудовата книжка?