GoLand No Tests Were Run : 不能使用 fmt.Printf()

网友投稿 1840 2022-11-21

GoLand No Tests Were Run : 不能使用 fmt.Printf()

GoLand No Tests Were Run : 不能使用 fmt.Printf()

问题描述:

I have a method that I am testing, and everything seems fine. However, when I run the tests in GoLand, I can see in the output that the tests "PASS" but the test runner says "no tests were run".

Here's the sample method in calculator.go

package calculatorimport ( "fmt")type Calculator struct {}func New() Calculator { return Calculator{}}func (s *Calculator) AddTwoNumbers(num_one, num_two int) int { fmt.Printf("adding") return num_one + num_two}

Here's the test in calculator_test.go:

package calculatorimport ( "fmt" "testing")func Test_Calculator_AddTwoNumbers(t *testing.T) { // Arrange calculator := New() // Act total := calculator.AddTwoNumbers(1,2) // Assert if total != 3 { msg := fmt.Sprintf("total should have been %d but instead was %d", 3, total) t.Error(msg) }}

问题解决:

Instead of ​​fmt.Printf()​​​ in AddTwoNumbers try either ​​fmt.Println()​​​ or ​​fmt.Printf("foo\n')​​

The absence of the newline in the output of your AddTwoNumbers method is is causing the format of the test execution outputs to not have each test in a new line. The test runner is not being able to interpret that a test was run. Adding that newline, keeps a clean output.

​​https://stackoverflow.com/questions/68607771/goland-no-tests-were-run​​

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:JPA如何设置表名和实体名,表字段与实体字段的对应
下一篇:十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
相关文章

 发表评论

暂时没有评论,来抢沙发吧~