Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Bagaimana untuk menguji fungsi Golang?

Bagaimana untuk menguji fungsi Golang?

WBOY
WBOYasal
2024-04-11 21:03:02684semak imbas

Panduan Pengujian Fungsi Go: Ujian unit digunakan untuk menguji kelakuan fungsi secara berasingan. testimoni/assert menyediakan alat penegasan yang berguna dan perlu diimport github.com/stretchr/testify/assert. Gunakan assert.Equal(t, expected value, function call) untuk menegaskan. Jalankan ujian menggunakan arahan go test.

Bagaimana untuk menguji fungsi Golang?

Go Function Testing

Ujian unit adalah penting semasa menulis program Go, membolehkan kami mengesahkan bahawa fungsi berjalan seperti yang diharapkan. Artikel ini menyediakan panduan langkah demi langkah tentang cara menguji fungsi Go, lengkap dengan contoh praktikal.

Ujian Unit

Ujian unit menguji kelakuan fungsi dalam persekitaran terpencil, tanpa mengambil kira kod lain.

Menggunakan testimoni/assert

testify/assert ialah pakej ujian Go yang popular dengan set alat penegasan yang berguna. Untuk memasangnya, jalankan:

go get github.com/stretchr/testify/assert

Untuk menggunakan assert, anda perlu mengimportnya dahulu dalam fail ujian unit anda:

import "github.com/stretchr/testify/assert"

Kini anda boleh menulis kes ujian anda seperti ini:

func TestAdd(t *testing.T) {
  // 断言 a+b 等于 c
  assert.Equal(t, 3, Add(1, 2))
}

Gunakan go test

Untuk menjalankan unit Untuk menguji, gunakan perintah go test pada baris arahan: go test 命令:

go test

实战案例

考虑以下用于计算两个数字之和的简单函数:

func Add(a, b int) int {
  return a + b
}

为了测试此函数,我们可以使用以下测试用例:

func TestAdd(t *testing.T) {
  testCases := []struct {
    a, b, expected int
  }{
    {1, 2, 3},
    {5, 10, 15},
    {-1, -2, -3},
  }

  for _, tc := range testCases {
    actual := Add(tc.a, tc.b)
    assert.Equal(t, tc.expected, actual)
  }
}

在测试用例中,我们将多个测试集合到 testCases 片段中。每个测试用例指定了输入值 ab,以及预期的结果 expected

循环遍历每个测试用例,调用 Addrrreee

Contoh praktikal🎜🎜Pertimbangkan fungsi mudah berikut untuk mengira jumlah dua nombor: 🎜rrreee🎜Untuk menguji fungsi ini, kami boleh Gunakan kes ujian berikut: 🎜rrreee🎜Dalam kes ujian, kami mengagregatkan berbilang ujian ke dalam serpihan testCases. Setiap kes ujian menentukan nilai input a dan b, dan hasil yang dijangkakan expected. 🎜🎜Gelung setiap kes ujian, panggil fungsi Tambah dan gunakan assert untuk menegaskan bahawa hasilnya sepadan dengan nilai yang dijangkakan. Jika mana-mana penegasan gagal, ujian akan gagal. 🎜

Atas ialah kandungan terperinci Bagaimana untuk menguji fungsi 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