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