Bagaimana untuk menguji fungsi Golang?

WBOY
Lepaskan: 2024-04-11 21:03:02
asal
688 orang telah melayarinya

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
Salin selepas log masuk

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

import "github.com/stretchr/testify/assert"
Salin selepas log masuk

Kini anda boleh menulis kes ujian anda seperti ini:

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

Gunakan go test

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

go test
Salin selepas log masuk

实战案例

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

func Add(a, b int) int {
  return a + b
}
Salin selepas log masuk

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

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)
  }
}
Salin selepas log masuk

在测试用例中,我们将多个测试集合到 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!

Label berkaitan:
sumber:php.cn
Kenyataan Laman Web ini
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
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan