【GO】压力测试

【GO】压力测试,第1张

概述压力测试步骤准备测试代码package mainimport "fmt"func main() { fmt.Println(GetFibonacci(6)) sum := GetNum(10) fmt.Println(sum) getRecursion := GetRecursion(10) fmt.Println(getRecursion) fbNum := GetFbN... 压力测试步骤 准备测试代码
package mainimport "fmt"func main() {	fmt.Println(GetFibonacci(6))	sum := GetNum(10)	fmt.Println(sum)	getRecursion := GetRecursion(10)	fmt.Println(getRecursion)	fbNum := GetFbNum(10)	fmt.Println(fbNum)}/**递归就是自己调自己递归一定要有终止条件,否则就会无限循环*/func GetFibonacci(n int) int {	// 如果是第0项或者第2项直接返回1	if n == 0 || n == 1 {		return 1	} else {		return GetFibonacci(n-1) + GetFibonacci(n-2)	}}/**使用非递归实现斐波那契数列*/func GetFbNum(n int) int {	a := 1	b := 1	c := a + b	for i := 1; i <= n; i++ {		a = b		b = c		c = a + b	}	return a}/**使用循环来实现自然数之和*/func GetNum(n int) (sum int) {	for i := 1; i <= n; i++ {		sum += i	}	return}/**使用递归来实现自然数求和*/func GetRecursion(n int) (sum int) {	if n == 1 {		return 1	} else {		return n + GetRecursion(n-1)	}}
创建测试文件
package mainimport "testing"/**测试递归求斐波那契数列*/func BenchmarkGetFibonacci(b *testing.B) {	b.ReportAllocs()	for i := 0; i < b.N; i++ {		GetFibonacci(10)	}}func BenchmarkGetFbNum(b *testing.B) {	b.ReportAllocs()	for i := 0; i < b.N; i++ {		GetFbNum(10)	}}
目录存放

执行测试

测试结果显示

数据解释

BenchmarkGetFibonacci (测试的方法名)
3835340(执行的次数)
312 ns/op(每次执行时间)
后两列代表分配的内存大小和次数(48 B/op 1 allocs/op)

博主微信欢迎交流

总结

以上是内存溢出为你收集整理的【GO】压力测试全部内容,希望文章能够帮你解决【GO】压力测试所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/1252293.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-07
下一篇 2022-06-07

发表评论

登录后才能评论

评论列表(0条)

保存