草庐IT

test_cases

全部标签

unit-testing - Go 中的测试是并行执行还是一个一个执行?

我有一个包含单元测试的Go文件,其中一些单元测试使用一个公共(public)变量。我正在测试的代码中使用了另一个全局变量。所有这些都可能导致问题。在Go中,当我们执行位于同一文件中的测试时,它们如何运行?并行或下一个不会在前一个完成之前开始? 最佳答案 默认情况下,包内的所有测试按顺序运行。同样默认情况下,所有测试集都是并行运行的。如果您使用默认值并且有针对公共(public)持久层(如rdbms)进行测试的不同包,这可能会导致问题。如果您对这种情况有疑问,那么运行gotest./...-p1将阻止不同的测试套件同时运行。

unit-testing - Go 中的测试是并行执行还是一个一个执行?

我有一个包含单元测试的Go文件,其中一些单元测试使用一个公共(public)变量。我正在测试的代码中使用了另一个全局变量。所有这些都可能导致问题。在Go中,当我们执行位于同一文件中的测试时,它们如何运行?并行或下一个不会在前一个完成之前开始? 最佳答案 默认情况下,包内的所有测试按顺序运行。同样默认情况下,所有测试集都是并行运行的。如果您使用默认值并且有针对公共(public)持久层(如rdbms)进行测试的不同包,这可能会导致问题。如果您对这种情况有疑问,那么运行gotest./...-p1将阻止不同的测试套件同时运行。

testing - 处理模糊错误时如何保持良好的 Go 包测试覆盖率?

我试图在我的一些Go包上保持100%的代码覆盖率。这并非在任何地方都可行,即使我在构建系统上使用-integration构建标记选择了一些测试,但它应该适用于我相对独立的库包。不过,我在处理模糊错误路径的覆盖率时遇到了麻烦。这是我的一个方法示例,它是集成测试的一部分,其中有一个真实的文件系统:func(idxIndex)LoadPost(titlestring)(*PostSpec,string,error){postFolder:=strings.Replace(strings.ToLower(title),"","_",-1)spec,err:=idx.getSpec(postFo

testing - 处理模糊错误时如何保持良好的 Go 包测试覆盖率?

我试图在我的一些Go包上保持100%的代码覆盖率。这并非在任何地方都可行,即使我在构建系统上使用-integration构建标记选择了一些测试,但它应该适用于我相对独立的库包。不过,我在处理模糊错误路径的覆盖率时遇到了麻烦。这是我的一个方法示例,它是集成测试的一部分,其中有一个真实的文件系统:func(idxIndex)LoadPost(titlestring)(*PostSpec,string,error){postFolder:=strings.Replace(strings.ToLower(title),"","_",-1)spec,err:=idx.getSpec(postFo

unit-testing - 用于测试的内存文件

如何在Go中创建用于单元测试的内存文件?在Python中,我测试使用io.BytesIO读取文件或写入文件或io.StringIO.例如,要测试文件解析器,我会deftest_parse_function():infile=io.StringIO('''\line1line2line3''')parsed_contents=parse_function(infile)expected_contents=['line1','line2','line3']#orwhateverisappropriateassertparsed_contents==expected_contents与文件输

unit-testing - 用于测试的内存文件

如何在Go中创建用于单元测试的内存文件?在Python中,我测试使用io.BytesIO读取文件或写入文件或io.StringIO.例如,要测试文件解析器,我会deftest_parse_function():infile=io.StringIO('''\line1line2line3''')parsed_contents=parse_function(infile)expected_contents=['line1','line2','line3']#orwhateverisappropriateassertparsed_contents==expected_contents与文件输

Windows 上的 Git : Can't switch branch after renaming a file (only changed case)

我在Windows上使用git,我的存储库中有一个文件,可以说是“foo.txt”。今天我想把这个文件重命名为“Foo.txt”(大写)。正如thisSOquestion中的建议,我使用了gitmv-ffoo.txtFoo.txt,它产生了预期的结果。我开始提交对我的存储库的更改。编辑:我希望这是一个永久性的更改,并且仍然能够checkout此更改之前的提交。然而,之后我在尝试切换分支时遇到了错误:#I'monbranch1gitcheckoutbranch2Abortingerror:Thefollowinguntrackedworkingtreefileswouldbeoverwr

Windows 上的 Git : Can't switch branch after renaming a file (only changed case)

我在Windows上使用git,我的存储库中有一个文件,可以说是“foo.txt”。今天我想把这个文件重命名为“Foo.txt”(大写)。正如thisSOquestion中的建议,我使用了gitmv-ffoo.txtFoo.txt,它产生了预期的结果。我开始提交对我的存储库的更改。编辑:我希望这是一个永久性的更改,并且仍然能够checkout此更改之前的提交。然而,之后我在尝试切换分支时遇到了错误:#I'monbranch1gitcheckoutbranch2Abortingerror:Thefollowinguntrackedworkingtreefileswouldbeoverwr

锁(case篇)

case1(表锁的读-写-读阻塞)上篇文档中提到过WRITElocksnormallyhavehigherprioritythanREADlockstoensurethatupdatesareprocessedassoonaspossible.ThismeansthatifonesessionobtainsaREADlockandthenanothersessionrequestsaWRITElock,subsequentREADlockrequestswaituntilthesessionthatrequestedtheWRITElockhasobtainedthelockandreleas

假设检验(hypothesis testing)

什么是假设检验首先,什么是假设?在数理推断中,总体分布通常是未知的,包含了两类,一类是分布类型未知,一类是分布类型已知,但参数未知,假设就是对总体分布的一种推断,比如假设总体服从正态分布,假设正态分布的均值是500。根据未知类型,分为非参数假设和参数假设。假设检验就是利用样本来检验假设成立与否。接下来通过几个例子来介绍假设检验可以解决什么问题。例子1:某洗衣粉加工机器要求每袋洗衣粉500g,现在随机抽9袋进行检查,发现其重量是:505、499、502、506、498、498、497、510、503,假设σ=2\displaystyle\sigma=2σ=2固定不变,问这个加工机器是否合格?例子