Sobes.tech
Junior — Middle

Verilənlər bazası ilə qarşılıqlı əlaqə quran kodu necə test etdiniz?

sobes.tech Süni İntellekt

AI-dan cavab

Go dilində verilənlər bazası ilə qarşılıqlı əlaqədə olan kodu sınaqdan keçirmək üçün müxtəlif yanaşmalar tətbiq edilir:

  • Verilənlər bazasının mock edilməsi — verilənlər bazası ilə işləmək üçün interfeyslər yaradılır və real çağırışlar mock-larla əvəz olunur, beləliklə, məntiqi real verilənlər bazası olmadan sınaqdan keçirmək mümkündür.
  • Test verilənlər bazaları — ayrıca test verilənlər bazası və ya yaddaşda olan bazalar (məsələn, SQLite) istifadə edilərək inteqrasiya testləri həyata keçirilir.
  • Rollback ilə tranzaksiyalar — testlərdə tranzaksiya açılır, əməliyyatlar yerinə yetirilir və sonunda dəyişikliklər geri alınır, beləliklə, test mühiti təmiz saxlanılır.

Interfeys və mock-lardan istifadə nümunəsi:

// Verilənlər bazası ilə işləmək üçün interfeys
type UserRepository interface {
    GetUser(id int) (*User, error)
}

// Testlərdə mock yaradılır
type MockUserRepo struct {}
func (m *MockUserRepo) GetUser(id int) (*User, error) {
    return &User{ID: id, Name: "Test"}, nil
}

Bu yanaşma, test olunan kodu real verilənlər bazasından ayırmağa imkan verir.