草庐IT

power_unit

全部标签

unit-testing - 由于先前的测试用例失败而引发的断言异常

我想不出更好的标题。在下面的代码中,如果rollBackLogger为nil,第一个测试用例将失败,但所有其他测试用例将引发异常。除了使用if语句之外,是否有其他方法可以避免这种情况?我相信这是单元测试中非常常见的情况,assert中应该有一些函数或其他一些方法来避免这种情况。assert.NotNil(rollbackLogger)assert.Equal("Action",rollBackLogger[0].Action)assert.Equal("randompath",rollBackLogger[0].FilePath) 最佳答案

unit-testing - 由于先前的测试用例失败而引发的断言异常

我想不出更好的标题。在下面的代码中,如果rollBackLogger为nil,第一个测试用例将失败,但所有其他测试用例将引发异常。除了使用if语句之外,是否有其他方法可以避免这种情况?我相信这是单元测试中非常常见的情况,assert中应该有一些函数或其他一些方法来避免这种情况。assert.NotNil(rollbackLogger)assert.Equal("Action",rollBackLogger[0].Action)assert.Equal("randompath",rollBackLogger[0].FilePath) 最佳答案

unit-testing - 学习编写单元测试

我正在尝试学习如何为我的代码编写测试以便编写更好的代码,但我似乎最难弄清楚如何实际测试我编写的一些代码。我读了很多教程,其中大部分似乎只涵盖了将两个数字相加或模拟某些数据库或服务器的函数。我在下面编写了一个简单的函数,它将文本模板和CSV文件作为输入并使用CSV的值执行模板。我已经通过反复试验、传递文件和打印值“测试”了代码,但我想学习如何为它编写适当的测试。我觉得学习测试自己的代码会帮助我更快更好地理解和学习。感谢您的帮助。//generateCmdsgeneratesconfigurationcommandsfromatexttemplateusing//thevaluesfrom

unit-testing - 学习编写单元测试

我正在尝试学习如何为我的代码编写测试以便编写更好的代码,但我似乎最难弄清楚如何实际测试我编写的一些代码。我读了很多教程,其中大部分似乎只涵盖了将两个数字相加或模拟某些数据库或服务器的函数。我在下面编写了一个简单的函数,它将文本模板和CSV文件作为输入并使用CSV的值执行模板。我已经通过反复试验、传递文件和打印值“测试”了代码,但我想学习如何为它编写适当的测试。我觉得学习测试自己的代码会帮助我更快更好地理解和学习。感谢您的帮助。//generateCmdsgeneratesconfigurationcommandsfromatexttemplateusing//thevaluesfrom

unit-testing - 为归档函数 fs 创建单元测试

我有以下按预期工作的功能。现在我想为它创建单元测试。问题是我正在使用文件系统,但我无法弄清楚如何使用一些模拟或任何其他解决方案来做到这一点。知道如何在Go中简单地完成这件事吗?我真的应该创建一个文件然后用单元测试检查吗?恐怕在某些系统中它会工作而有些它会损坏(winodos/mac/linux)这是工作函数:funcZipper(srcstring,artifactstring,targetstring)error{zf,err:=os.Create(artifact)iferr!=nil{returnerr}deferzf.Close()ziper:=zip.NewWriter(zf

unit-testing - 为归档函数 fs 创建单元测试

我有以下按预期工作的功能。现在我想为它创建单元测试。问题是我正在使用文件系统,但我无法弄清楚如何使用一些模拟或任何其他解决方案来做到这一点。知道如何在Go中简单地完成这件事吗?我真的应该创建一个文件然后用单元测试检查吗?恐怕在某些系统中它会工作而有些它会损坏(winodos/mac/linux)这是工作函数:funcZipper(srcstring,artifactstring,targetstring)error{zf,err:=os.Create(artifact)iferr!=nil{returnerr}deferzf.Close()ziper:=zip.NewWriter(zf

unit-testing - 监视 Golang 中的方法

有什么办法可以窥探Golang中的方法吗?例如,假设我有typeObjectstruct{AintBstringC*interface{}}func(o*Object)Something(valinterface{}){o.A=102//someotherbusinesslogicundertesto.SomethingElse(o.C,val)}//...func(o*Object)Process(valinterface{})interface{}{//somebusinesslogicreturn43//orsomethingelse.nomeimportaya}//...fun

unit-testing - 监视 Golang 中的方法

有什么办法可以窥探Golang中的方法吗?例如,假设我有typeObjectstruct{AintBstringC*interface{}}func(o*Object)Something(valinterface{}){o.A=102//someotherbusinesslogicundertesto.SomethingElse(o.C,val)}//...func(o*Object)Process(valinterface{})interface{}{//somebusinesslogicreturn43//orsomethingelse.nomeimportaya}//...fun

unit-testing - 当我删除 fmt.Println() 时,golang 中的猴子修补失败

在编写测试时,我必须修补一个方法以检查它是否被调用,这是我的代码:import"fmt"typemyStructstruct{}func(myObject*myStruct)firstMethod(){myObject.SecondMethod()}func(myObject*myStruct)SecondMethod(){fmt.Println("InsidetheoriginalSecondMethod")//testfailsifIremovethis}这是测试:import("reflect""testing""github.com/bouk/monkey""github.co

unit-testing - 当我删除 fmt.Println() 时,golang 中的猴子修补失败

在编写测试时,我必须修补一个方法以检查它是否被调用,这是我的代码:import"fmt"typemyStructstruct{}func(myObject*myStruct)firstMethod(){myObject.SecondMethod()}func(myObject*myStruct)SecondMethod(){fmt.Println("InsidetheoriginalSecondMethod")//testfailsifIremovethis}这是测试:import("reflect""testing""github.com/bouk/monkey""github.co