Junior — Middle
Test zamanı üçün mock obyektləri yaratmaq üçün hansı kitabxanalardan istifadə etdiniz?
sobes.tech Süni İntellekt
AI-dan cavab
Go dilində, testlərdə mock obyektləri yaratmaq üçün tez-tez aşağıdakı kitabxanalardan istifadə olunur:
- gomock — Google-un rəsmi kitabxanası, mockgen vasitəsilə interfeyslər əsasında mocklar yaratmağa imkan verir.
- testify/mock — məşhur testify paketinin bir hissəsi, gözləntiləri təyin etmək və çağırışları yoxlamaq üçün rahat yol təqdim edir.
testify/mock istifadə nümunəsi:
import (
"testing"
"github.com/stretchr/testify/mock"
)
type MyInterface interface {
DoSomething(int) string
}
type MyMock struct {
mock.Mock
}
func (m *MyMock) DoSomething(i int) string {
args := m.Called(i)
return args.String(0)
}
func TestMyFunction(t *testing.T) {
m := new(MyMock)
m.On("DoSomething", 123).Return("result")
res := m.DoSomething(123)
if res != "result" {
t.Errorf("gözlənilən olmayan nəticə: %s", res)
}
m.AssertExpectations(t)
}
Bu kitabxanalar test olunan kodu xarici asılılıqlardan ayırmağa və onların ilə qarşılıqlı əlaqələri yoxlamağa kömək edir.