ZVVQ代理分享网

如何使用 BDD 框架(如 ginkgo)在 golang 框架中编写

作者:zvvq博客网
导读行为驱动开发 (bdd) 是一种软件开发方法,专注于以用户角度编写清晰可维护的测试用例。在 go 中,ginkgo 是一种流行的 bdd 框架,提供语法以清晰简洁地编写基于规范的测试用例:安装

行为驱动开发 (bdd) 是一种软件开发方法,致力于以用户视角撰写清晰可维修的功能测试。在 go 中,ginkgo 是一种流行的 bdd 架构,给予词法以清楚简洁地撰写根据规范的功能测试:组装:go install github.com/onsi/ginkgo/ginkgo@latest撰写检测:标准块(describe)包括功能测试(it),主要包括试验条件和预期成果。认证结论:expect() 和 to() 函数用以认证具体结论是否与预期成果配对。运行测试:ginkgo

应用 ginkgo 在 Go 内进行行为驱动开发单元测试

什么叫行为驱动开发 (BDD)?

BDD 是一种软件开发方法,重视从用户的角度编写测试用例,让检测变得更易读、更可维护。

Ginkgo 介绍

Ginkgo 是 Go 中一个流行的 BDD 架构。它提供了一套词法,用以以清晰且简约的方法撰写根据规范的功能测试。

组装 Ginkgo

使用下列指令组装 Ginkgo:

goinstallgithub.com/onsi/ginkgo/ginkgo@latest

撰写 BDD 功能测试

在 Ginkgo检测中,功能测试是标准整理的。一个标准包括功能测试的一组条件及预期成果。

比如,下面是一个功能测试用以检测一个回到登录名的函数:

packagemypackage

import(

"testing"

."github.com/onsi/ginkgo"

)

var_=Describe("GetName",func(){

It("shouldreturnthecorrectname",func(){

name:=GetName()

Expect(name).To(Equal("JohnDoe"))

})

})

在这儿:

Describe 函数定义了一个标准块,它包含功能测试。It 函数定义了一个功能测试,它包含试验条件和预期成果。GetName() 是待检测的函数。Expect() 和 To() 函数用以验证测试结论是否符合预期。实战案例

使我们撰写一个功能测试来检测一个将字符串转换为大写的函数:

packagemypackage

import(

"testing"

"github.com/onsi/ginkgo"

"github.com/onsi/gomega"

)

var_=Describe("ToUpper",func(){

It("shouldconvertthestringtouppercase",func(){

s:=ToUpper("hello")

gomega.Expect(s).To(gomega.Equal("HELLO"))

})

})

运行测试

使用下列指令运作 Ginkgo检测:

ginkgo

如果所有检测都通过,你将见到下列导出:

Ran1of1Spec(100%)

Success

以上就是怎么使用 BDD 架构(如 ginkgo)在golang框架中撰写行为推动单元测试?的详细内容,大量请关注其他类似文章!