【GO】一文带你入门go的压力测试

简介: 【GO】一文带你入门go的压力测试

1. 压力测试json文件的读写

1-1项目目录

image.png

1-2准备素材JsonUtil.go代码

package main
import (
  "encoding/json"
  "os"
)
func SaveHuman(human *Human, filename string) (bool, error) {
  // 打开文件
  file, _ := os.OpenFile(filename, os.O_CREATE|os.O_TRUNC|os.O_WRONLY, 0666)
  // 挂起文件最后执行关闭
  defer file.Close()
  // 创建解码器
  encoder := json.NewEncoder(file)
  err := encoder.Encode(human)
  return err == nil, err
}
func LoadHuman(filename string, human *Human) error {
  file, _ := os.OpenFile(filename, os.O_RDONLY, 0666)
  defer file.Close()
  decoder := json.NewDecoder(file)
  err := decoder.Decode(human)
  return err
}

1-3准备JsonUtil_test.go代码

package main
import "testing"
func BenchmarkSaveHuman(b *testing.B) {
  b.Log("测试开始")
  // 测试开销
  b.ReportAllocs()
  human := &Human{
    Name: "咔咔",
    Age:  24,
  }
  for i := 0; i < b.N; i++ {
    SaveHuman(human, "C:/Users/Administrator/Desktop/go/11压力测试/kaka.json")
  }
}
func BenchmarkLoadHuman(b *testing.B) {
  b.Log("测试开始")
  // 测试开销
  b.ReportAllocs()
  hPrt := new(Human)
  for i := 0; i < b.N; i++ {
    LoadHuman("C:/Users/Administrator/Desktop/go/11压力测试/kaka.json", hPrt)
  }
}

屏幕快照 2022-05-19 上午12.26.36.png

屏幕快照 2022-05-19 上午12.27.02.png屏幕快照 2022-05-19 上午12.27.15.png屏幕快照 2022-05-19 上午12.27.28.png屏幕快照 2022-05-19 上午12.27.37.png

目录
打赏
0
0
0
0
14
分享
相关文章
|
26天前
|
Go 语言入门指南:切片
Golang中的切片(Slice)是基于数组的动态序列,支持变长操作。它由指针、长度和容量三部分组成,底层引用一个连续的数组片段。切片提供灵活的增减元素功能,语法形式为`[]T`,其中T为元素类型。相比固定长度的数组,切片更常用,允许动态调整大小,并且多个切片可以共享同一底层数组。通过内置的`make`函数可创建指定长度和容量的切片。需要注意的是,切片不能直接比较,只能与`nil`比较,且空切片的长度为0。
Go 语言入门指南:切片
探索自动化测试的无限可能:从入门到精通
在软件开发领域,确保产品质量是至关重要的。自动化测试作为一种高效、可靠的测试方法,正逐渐成为行业标准。本文将带你深入了解自动化测试的世界,从基础概念到实践技巧,帮助你掌握这一强大的工具。无论你是初学者还是有经验的开发者,都能从中获得宝贵的知识和启发。
初学者入门:掌握单元测试的基础与实践
【10月更文挑战第14天】单元测试是一种软件测试方法,它验证软件中的最小可测试单元——通常是单独的函数或类——是否按预期工作。单元测试的目标是确保每个模块在其自身范围内正确无误地运行。这些测试应该独立于其他模块,并且应该能够反复执行而不受外部环境的影响。
132 2
|
1月前
|
Go语言入门:分支结构
本文介绍了Go语言中的条件语句,包括`if...else`、`if...else if`和`switch`结构,并通过多个练习详细解释了它们的用法。`if...else`用于简单的条件判断;`if...else if`处理多条件分支;`switch`则适用于基于不同值的选择逻辑。特别地,文章还介绍了`fallthrough`关键字,用于优化重复代码。通过实例如判断年龄、奇偶数、公交乘车及成绩等级等,帮助读者更好地理解和应用这些结构。
39 15
【入门思路】基于Python+Unittest+Appium+Excel+BeautifulReport的App/移动端UI自动化测试框架搭建思路
本文重点讲解如何搭建App自动化测试框架的思路,而非完整源码。主要内容包括实现目的、框架设计、环境依赖和框架的主要组成部分。适用于初学者,旨在帮助其快速掌握App自动化测试的基本技能。文中详细介绍了从需求分析到技术栈选择,再到具体模块的封装与实现,包括登录、截图、日志、测试报告和邮件服务等。同时提供了运行效果的展示,便于理解和实践。
234 4
【入门思路】基于Python+Unittest+Appium+Excel+BeautifulReport的App/移动端UI自动化测试框架搭建思路
Go语言中的错误注入与防御编程。错误注入通过模拟网络故障、数据库错误等,测试系统稳定性
本文探讨了Go语言中的错误注入与防御编程。错误注入通过模拟网络故障、数据库错误等,测试系统稳定性;防御编程则强调在编码时考虑各种错误情况,确保程序健壮性。文章详细介绍了这两种技术在Go语言中的实现方法及其重要性,旨在提升软件质量和可靠性。
77 1
探索自动化测试的奥秘:从入门到精通
【10月更文挑战第37天】本文将带你进入自动化测试的世界,从基础知识到实战案例,逐步揭示自动化测试的神秘面纱。我们将一起探讨如何利用代码来简化测试过程,提高效率,并确保软件质量。无论你是初学者还是有经验的开发者,这篇文章都能为你提供有价值的见解和技巧。让我们一起踏上这段探索之旅吧!
Go语言中的并发编程:从入门到精通###
本文深入探讨了Go语言中并发编程的核心概念与实践技巧,旨在帮助读者从理论到实战全面掌握Go的并发机制。不同于传统的技术文章摘要,本部分将通过一系列生动的案例和代码示例,直观展示Go语言如何优雅地处理并发任务,提升程序性能与响应速度。无论你是Go语言初学者还是有一定经验的开发者,都能在本文中找到实用的知识与灵感。 ###
go语言中测试工具
【10月更文挑战第22天】
60 4
前端神经网络入门:Brain.js - 详细介绍和对比不同的实现 - CNN、RNN、DNN、FFNN -无需准备环境打开浏览器即可测试运行-支持WebGPU加速
本文介绍了如何使用 JavaScript 神经网络库 **Brain.js** 实现不同类型的神经网络,包括前馈神经网络(FFNN)、深度神经网络(DNN)和循环神经网络(RNN)。通过简单的示例和代码,帮助前端开发者快速入门并理解神经网络的基本概念。文章还对比了各类神经网络的特点和适用场景,并简要介绍了卷积神经网络(CNN)的替代方案。
767 1
AI助理

你好,我是AI助理

可以解答问题、推荐解决方案等