行为驱动开发 (bdd) 是一种软件开发方法,致力于以用户视角撰写清晰可维修的功能测试。在 go 中,ginkgo 是一种流行的 bdd 架构,给予词法以清楚简洁地撰写根据规范的功能测试:组装:go install github.com/onsi/ginkgo/ginkgo@latest撰写检测:标准块(describe)包括功能测试(it),主要包括试验条件和预期成果。认证结论:expect() 和 to() 函数用以认证具体结论是否与预期成果配对。运行测试:ginkgo
应用 ginkgo 在 Go 内进行行为驱动开发单元测试 zvvq
什么叫行为驱动开发 (BDD)?
zvvq好,好zvvq
BDD 是一种软件开发方法,重视从用户的角度编写测试用例,让检测变得更易读、更可维护。
内容来自samhan666
Ginkgo 介绍
本文来自zvvq
Ginkgo 是 Go 中一个流行的 BDD 架构。它提供了一套词法,用以以清晰且简约的方法撰写根据规范的功能测试。
内容来自zvvq,别采集哟
组装 Ginkgo
zvvq.cn
使用下列指令组装 Ginkgo: zvvq.cn
goinstallgithub.com/onsi/ginkgo/ginkgo@latest
撰写 BDD 功能测试
copyright zvvq
在 Ginkgo检测中,功能测试是标准整理的。一个标准包括功能测试的一组条件及预期成果。
zvvq
比如,下面是一个功能测试用以检测一个回到登录名的函数: 本文来自zvvq
packagemypackage
zvvq
import( zvvq
"testing"
."github.com/onsi/ginkgo" zvvq
) 内容来自samhan666
var_=Describe("GetName",func(){
It("shouldreturnthecorrectname",func(){
name:=GetName() 内容来自zvvq
Expect(name).To(Equal("JohnDoe")) 内容来自zvvq,别采集哟
})
zvvq.cn
})
在这儿: 内容来自zvvq
Describe 函数定义了一个标准块,它包含功能测试。It 函数定义了一个功能测试,它包含试验条件和预期成果。GetName() 是待检测的函数。Expect() 和 To() 函数用以验证测试结论是否符合预期。实战案例
内容来自samhan
使我们撰写一个功能测试来检测一个将字符串转换为大写的函数: 本文来自zvvq
packagemypackage 本文来自zvvq
import(
"testing" 内容来自samhan666
"github.com/onsi/ginkgo"
"github.com/onsi/gomega" zvvq好,好zvvq
) 内容来自zvvq,别采集哟
var_=Describe("ToUpper",func(){ 内容来自zvvq
It("shouldconvertthestringtouppercase",func(){ zvvq.cn
s:=ToUpper("hello") zvvq
gomega.Expect(s).To(gomega.Equal("HELLO"))
})
}) zvvq好,好zvvq
运行测试
内容来自zvvq,别采集哟
使用下列指令运作 Ginkgo检测:
ginkgo zvvq.cn
如果所有检测都通过,你将见到下列导出: 内容来自samhan
Ran1of1Spec(100%)
Success
以上就是怎么使用 BDD 架构(如 ginkgo)在golang框架中撰写行为推动单元测试?的详细内容,大量请关注其他类似文章! zvvq.cn