Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Bagaimana untuk menggunakan gomega untuk penegasan dalam ujian unit Golang?

Bagaimana untuk menggunakan gomega untuk penegasan dalam ujian unit Golang?

王林
王林asal
2024-06-05 22:48:59720semak imbas

如何在 Golang 单元测试中使用 gomega 进行断言?

Cara menggunakan Gomega untuk penegasan dalam ujian unit Golang

Dalam ujian unit Golang, Gomega ialah perpustakaan penegasan yang popular dan berkuasa yang menyediakan kaedah penegasan yang kaya supaya pembangun dapat mengesahkan keputusan ujian dengan mudah.

Pasang Gomega

go get -u github.com/onsi/gomega

Gunakan Gomega untuk penegasan
Berikut adalah beberapa contoh biasa menggunakan Gomega untuk penegasan:

1.2Penegasan kesamarataan🜎

rreeee

3 . Penegasan kebenaran

import "github.com/onsi/gomega"

func Test_MyFunction(t *testing.T) {
    gomega.RegisterTestingT(t)

    actual := MyFunction()
    gomega.Expect(actual).To(gomega.Equal(5))
}

4. Penegasan kesamaan penunjuk

import "github.com/onsi/gomega"

func Test_MyFunction(t *testing.T) {
    gomega.RegisterTestingT(t)

    actual := MyFunction()
    gomega.Expect(actual).NotTo(gomega.Equal(5))
}

5 Penegasan kegagalan

import "github.com/onsi/gomega"

func Test_MyFunction(t *testing.T) {
    gomega.RegisterTestingT(t)

    actual := MyFunction()
    gomega.Expect(actual).To(gomega.BeTrue())
}

Kes praktikal

andaikan dua nombor itu ada. Kami boleh menggunakan Gomega untuk menulis ujian unit berikut:

import "github.com/onsi/gomega"

func Test_MyFunction(t *testing.T) {
    gomega.RegisterTestingT(t)

    actual := &MyStruct{}
    expected := &MyStruct{}
    gomega.Expect(actual).To(gomega.PointTo(expected))
}

Menggunakan Gomega membolehkan kami mengesahkan keputusan ujian dengan mudah dan meningkatkan kebolehpercayaan ujian unit. ComputeSum

Atas ialah kandungan terperinci Bagaimana untuk menggunakan gomega untuk penegasan dalam ujian unit Golang?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn