Keş nədir, kukilər nədir?
QA / QA Automation
İzləmə matrisəsi nədir və necə formalaşır?
HTTP sorğusu nədən ibarətdir?
Testlərdə ORM hansı məqsədlə istifadə olunur və hansı hallarda istifadə etməmək daha yaxşıdır?
Obyekt yönümlü proqramlaşdırma (OOP) — bu, kod obyektlər şəklində təşkil olunan proqramların hazırlanması üçün yanaşmadır İnkapsulyasiya İnkapsulyasiya — bu, məlumatların və bu məlumatlarla işləyən metodların eyni sinif daxilində birləşdirilməsi və obyektin daxili vəziyyətinə birbaşa girişin məhdudlaşdırılmasıdır. Sadə dillə: obyekt öz məlumatlarını idarə edir, xarici kod isə onunla metodlar vasitəsilə qarşılıqlı əlaqə qurur. Abstraksiya Abstraksiya — bu, obyektin yalnız vacib xüsusiyyətlərinin seçilməsi və onun həyata keçirilmə detalları ilə gizlədilməsidir. Sadə dillə: istifadəçi obyektin nə etdiyinə maraqlanır, necə etdiyinə yox. Polimorfizm Polimorfizm — bu, müxtəlif həyata keçirilməyə malik obyektlərin eyni interfeysi istifadə edə bilməsidir. Testlərdə bu, müxtəlif məlumat tipləri və ya sinflərlə işləyən ümumi kod yazmağa kömək edir. Python nümunəsi: class Animal: def make_sound(self): pass class Dog(Animal): def make_sound(self): return "Hav!" class Cat(Animal): def make_sound(self): return "Miyov!" def animal_sound(animal: Animal): print(animal.make_sound()) dog = Dog() cat = Cat() animal_sound(dog) # Hav! animal_sound(cat) # Miyov! Avtomatlaşdırılmış testlərdə, polimorfizm aşağıdakı üçün faydalıdır: - Ümumi yoxlama metodlarının yaradılması - Bir interfeys vasitəsilə müxtəlif test strategiyalarının həyata keçirilməsi - API/UI-nin müxtəlif versiyalarını dəstəkləmək, testləri dəyişdirmədən Miras Miras — bu, yeni sinfin mövcud sinfdən avtomatik istifadə etməsinə imkan verən mexanizmdir. Sadə dillə: yeni sinif valideyn sinfin kodunu təkrar istifadə edir və lazım olduqda genişləndirir. Git 1. Versiya idarəetmə sistemləri. Lokal, mərkəzləşdirilmiş, paylanmış. 2. Əsas anlayışlar. Repozitoriya, indeks, commit, göstəricilər, filial, iş nüsxəsi. 3. Repozitoriya ilə işləmək. Əmr: init, clone, status 4. Commit yaratmaq. Əmr: add, commit. 5. Filial yaratmaq, baxmaq, dəyişdirmək, silmək. Əmr: branch, checkout, log, diff. 6. Dəyişiklikləri geri almaq. Əmr: restore, rm, checkout, revert. 7. Filiallar arasında dəyişiklikləri birləşdirmək. Əmr: merge, cherry-pick, rebase. 8. Uzaq depo ilə işləmək. Əmr: fetch, pull, push. 9. GitHub ilə işləmək, forklar və Pull Requests.
REST API: necə mock-xidmət yaratmaq olar? Alət nümunələri verin.
PUT və PATCH metodları arasındakı fərq nədir və onların işləmə xüsusiyyətləri nələrdir?
Kafka-da mesajların yarış problemi necə həll olunur?
Bir səhvin həyat dövrü haqqında danışa bilərsiniz. Statuslar istifadə oluna bilər.
HTTP sorğusunun başlıqlarında hansı məlumatlar ötürülür?
SQL-də ORDER BY və GROUP BY nə üçün istifadə olunur? İşinizdə hansı toplama funksiyalarını istifadə etdiniz?
Mesajların izlənməsi nədir və bu, mikroxidmət memarlığında qüsuru tapmağa necə kömək edir?
Hansı hallarda asinxron istifadə etmək məntiqlidir və hansı hallarda yox? Testlərdə asinxronluğu necə həyata keçirirsiniz?
Pytest-də bir testdə bir neçə yoxlama üçün soft assert necə həyata keçirilir ki, test ilk səhvdə uğursuz olmasın və bütün yoxlamaları həyata keçirsin?
İterator və generator arasındakı fərq nədir?
Smoke, Sanity və Regression testləri arasındakı fərq nədir?
Playwright-də API-dən cavabı necə ələ keçirmək və UI test üçün dəyişdirmək olar?