Sobes.tech

QA / QA Automation

What does an HTTP request consist of?

Middle
222

What is a trace matrix and how is it formed?

Middle
221

What is cache, what are cookies?

Middle
215

REST API: how to create a mock service? Provide examples of tools.

Middle
203

Why is ORM used in tests and when is it better not to use it?

Middle
202

Object-Oriented Programming (OOP) is a programming approach where code is organized into objects. Encapsulation Encapsulation is the bundling of data and methods that operate on that data within a single class, as well as restricting direct access to the internal state of the object. Simply put: the object manages its own data, and external code interacts with it through methods. Abstraction Abstraction is the process of highlighting only the important characteristics of an object and hiding implementation details. Simply put: the user cares about what the object does, not how it does it. Polymorphism Polymorphism is the ability of objects with different implementations to use the same interface. In testing, this helps to write universal code that works with different data types or classes. Example in Python: class Animal: def make_sound(self): pass class Dog(Animal): def make_sound(self): return "Woof!" class Cat(Animal): def make_sound(self): return "Meow!" def animal_sound(animal: Animal): print(animal.make_sound()) dog = Dog() cat = Cat() animal_sound(dog) # Woof! animal_sound(cat) # Meow! In autotests, polymorphism is useful for: - Creating universal verification methods - Implementing different testing strategies through a single interface - Supporting different API/UI versions without changing tests Inheritance Inheritance is a mechanism that allows a new class to use an existing one, automatically inheriting its properties and methods. Simply put: the new class reuses the code of the parent class and extends it if necessary. Git 1. Version control systems. Local, centralized, distributed. 2. Main concepts. Repository, index, commit, pointers, branch, working copy. 3. Working with repository. Commands: init, clone, status 4. Creating a commit. Commands: add, commit. 5. Creating, viewing, switching between branches, deleting. Commands: branch, checkout, log, diff. 6. Undo changes. Commands: restore, rm, checkout, revert. 7. Merging changes between branches. Commands: merge, cherry-pick, rebase. 8. Working with remote repository. Commands: fetch, pull, push. 9. Working with GitHub, forks, and Pull Requests.

Middle
183

What are ORDER BY and GROUP BY used for in SQL? Which aggregate functions have you used in your work?

Middle
175

What is the difference between PUT and PATCH methods and what are their features?

Middle
167

How is the message race condition addressed in Kafka?

Middle
160

Tell about the bug lifecycle. You can refer to statuses.

Middle
158

What information is transmitted in the HTTP request headers?

Middle
157

What is message tracing and how does it help localize defects in microservice architecture?

Middle
144

In which cases does it make sense to use asynchrony, and in which does it not? How do you implement asynchrony in tests?

Middle
140

How to implement soft assert in pytest for multiple checks in a test so that the test does not fail on the first error but performs all checks?

Middle
137

What is the difference between an iterator and a generator?

Middle
127

What is the difference between Smoke, Sanity, and Regression testing?

Middle
114

How to intercept and modify API responses in Playwright for UI testing?

Middle
111