Rumah >pembangunan bahagian belakang >Golang >Gabungan pengendalian ralat dan ujian unit fungsi golang

Gabungan pengendalian ralat dan ujian unit fungsi golang

王林
王林asal
2024-04-24 17:36:02880semak imbas

Pengendalian ralat dalam GoLang menggunakan jenis ralat untuk mewakili ralat, yang boleh dibuat melalui fmt.Errorf(). Pengujian unit menggunakan perpustakaan ujian untuk mengesahkan ketepatan fungsi dengan menulis kes ujian dan menegaskan sama ada keputusan yang dikembalikan adalah konsisten dengan jangkaan.

Gabungan pengendalian ralat dan ujian unit fungsi golang

Pemadanan pengendalian ralat fungsi GoLang dan ujian unit

Pengendalian ralat

Mekanisme pengendalian ralat dalam GoLang adalah sangat mudah dan berkesan. Dengan menggunakan jenis error kita boleh mewakili ralat dalam pelaksanaan fungsi. Mesej ralat boleh dibuat melalui fungsi fmt.Errorf(). error 类型,我们可以表示函数执行中的错误。可以通过 fmt.Errorf() 函数创建错误信息。

package main

import (
    "fmt"
)

func divide(a, b int) (int, error) {
    if b == 0 {
        return 0, fmt.Errorf("cannot divide by zero")
    }
    return a / b, nil
}

func main() {
    result, err := divide(10, 2)
    if err != nil {
        fmt.Println(err)
    } else {
        fmt.Println(result)
    }
}

单元测试

单元测试对于验证函数的正确性至关重要。GoLang 提供了 testing 库,可以轻松编写和运行单元测试。

package main

import (
    "fmt"
    "testing"
)

func TestDivide(t *testing.T) {
    type testCases struct {
        a int
        b int
        expected int
        expectedError error
    }

    cases := []testCases{
        {10, 2, 5, nil},
        {10, 0, 0, fmt.Errorf("cannot divide by zero")},
    }

    for _, c := range cases {
        result, err := divide(c.a, c.b)
        if result != c.expected || err != c.expectedError {
            t.Errorf("Test failed for input (%d, %d) expected (%d, %s) but got (%d, %s)", c.a, c.b, c.expected, c.expectedError, result, err)
        }
    }
}

在此示例中,我们创建了一个测试表,其中包含不同的测试用例。然后,我们对每个测试用例运行 dividerrreee

Ujian Unit

🎜🎜Ujian unit adalah penting untuk mengesahkan ketepatan sesuatu fungsi. GoLang menyediakan perpustakaan ujian untuk menulis dan menjalankan ujian unit dengan mudah. 🎜rrreee🎜Dalam contoh ini, kami telah mencipta jadual ujian yang mengandungi kes ujian yang berbeza. Kami kemudian menjalankan fungsi divide terhadap setiap kes ujian dan menegaskan bahawa nilai dan ralat yang dikembalikan sepadan dengan keputusan yang dijangkakan. 🎜🎜Dengan menggabungkan pengendalian ralat dengan ujian unit, kami boleh memastikan fungsi berfungsi seperti yang diharapkan di bawah pelbagai situasi input. 🎜

Atas ialah kandungan terperinci Gabungan pengendalian ralat dan ujian unit 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