03 2024 档案

摘要:一、连接数据库有什么用 用作参数据化数据 (例如我们做的登录,要从数据库里面进行查询数据) 清理垃圾数据 (把没用的数据库里的数据进行清除) 用作结果的断言 (例如我们添加购物车下订单,检查接口返回的订单号,是否与数据库中生 成 的订单号一致) 准备测试数据 (通过数据库插入更多的数据) 二、如何配 阅读全文
posted @ 2024-03-26 14:52 yongheng999 阅读(10) 评论(0) 推荐(0) 编辑
摘要:一、元件的基本介绍 元件:多个类似功能组件的容器 (类似于类) 取样器 逻辑控制器 前置处理器 后置处理器 断言 定时器 测试片段 配置元件 监听器 组件:实现独立的某个功能(类似于方法) 2、元件作用域在JMeter中,元件的作用域是靠测试计划的树形结构中元件的父子关系来确定的。提示: 核心是取样 阅读全文
posted @ 2024-03-21 13:29 yongheng999 阅读(37) 评论(0) 推荐(0) 编辑
摘要:一、什么是参数化? 使用参数的方式去替代脚本中固定的测试数据 二、Jmeter参数化的几种方式 1 用户定义的变量 (一般是用做全局) 这里我们指的是测试计划中的自定义变量 2 或者配置原件中的用户定义的变量 3 和前置处理器中的用户参数 (针对同一组参数,当不同的用户来访问时,可以获取不同的值) 阅读全文
posted @ 2024-03-21 11:42 yongheng999 阅读(23) 评论(0) 推荐(0) 编辑
摘要:一、不少小伙伴对聚合报告中的title 很迷惑把,不知道如何区分,一张图让你明白 觉得有用的话就关注我吧! 阅读全文
posted @ 2024-03-21 10:25 yongheng999 阅读(54) 评论(0) 推荐(0) 编辑
摘要:一、背景 我们在测试或者注册的时候,想要的得到不同的结果,这时我们就要用的参数化,比如csv实现数据驱动,等等,那么在locust中我们如何实现参数化呢? 案例: 模拟三个用户注册账户,要求注册的账户不重复,使用参数化 二、实现逻辑 这里我们可以用读取本地csv的方式读取数据,并返回一个列表对象,然 阅读全文
posted @ 2024-03-20 16:47 yongheng999 阅读(262) 评论(0) 推荐(0) 编辑
摘要:一、背景要求 其实很多时候,根据业务场景的不同,我们要实时不均匀的负载,比如不同的时间段我们的负载量也不一样, 因为很多时候很多软件的用户访问时间都集中在晚上,白天访问量很低,那么针对这种情况我们如何来自定义压测场景呢? 其实我们Locust 支持自定义压测场景,比如(基于时间策略的阶梯式加压): 阅读全文
posted @ 2024-03-20 15:36 yongheng999 阅读(185) 评论(0) 推荐(0) 编辑
摘要:一、场景要求 我们在使用locust时,有时候默认的场景无法满足我们的要求时,这时后我们需要自定义场景 比如我们要设置每一段时间启动10个用户运行,执行60s后再一次启动10个用户,总共运行10分钟,默认的场景是无法满足这样的要求的,我们可以使用LoadTestshape类,LoadTestshap 阅读全文
posted @ 2024-03-20 11:44 yongheng999 阅读(192) 评论(0) 推荐(1) 编辑
摘要:一、 在性能测试中必须使用集合点来测试吗? A:并发用户数,顾名思义,就是同时操作的用户,这里的“操作”可以指对系统真正的操作,也可以只是连接(此时通常叫作“并发连接数”),而集合点是一种特殊情况下的并发,多用于测试系统在瞬间加压的表现。因此,并发用户数和集合点有联系,但并非必然的联系,在测试并发用 阅读全文
posted @ 2024-03-20 10:50 yongheng999 阅读(50) 评论(0) 推荐(0) 编辑
摘要:一、什么是集合点? 集合点用以同步虚拟用户,以便恰好在同一时刻执行任务。在[测试计划]中,可能会要求系统能够承受1000 人同时提交数据,可以通过在提交数据操作前面加入集合点,这样当虚拟用户运行到提交数据的集合点时,就检查同时有多少用户运行到集合点,如果不到1000 人,已经到集合点的用户在此等待, 阅读全文
posted @ 2024-03-19 17:17 yongheng999 阅读(191) 评论(0) 推荐(0) 编辑
摘要:一、检查点的方式有哪些: 主要是python 内置的assert 断言(自动断言)还有locust 中的catch_response 断言(手动断言);那么这两者之间有什么区别呢? 其实主要区别在与生成locust 报告上面,手动断言失败,我们在locust上面可以清楚的看到报错信息,如果通过内置断 阅读全文
posted @ 2024-03-19 15:48 yongheng999 阅读(256) 评论(0) 推荐(1) 编辑
摘要:一、首先我们理解下什么是关联? 跟接口测试一样,我们经常需要将上一个接口返回的参数用于第二次请求 二、业务场景1: 用户需要先登录获取token,之后去加入购物车、下订单、充值等等行为都是需要用到这个身份验证 三、解决方案: 客户不是每次行为都需要登录,每个客户只需要登录一次就可以得到这个token 阅读全文
posted @ 2024-03-19 15:38 yongheng999 阅读(132) 评论(0) 推荐(0) 编辑
摘要:一、**Mimesis的介绍** Mimesis是一个用于Python的high-performance伪数据生成器,它用各种语言为各种目的提供数据。这些假数据可以用来填充测试数据库,创建假API端点,创建任意结构的JSON和XML文件,匿名化从生产中获取的数据等等。 二、**主要特点是:** * 阅读全文
posted @ 2024-03-19 08:58 yongheng999 阅读(175) 评论(0) 推荐(0) 编辑
摘要:1 pip freeze >requirement.txt 将当下环境所有的第三方库生成一个对应的txt 文件到当前目录 效果如下: 阅读全文
posted @ 2024-03-16 21:38 yongheng999 阅读(26) 评论(0) 推荐(0) 编辑
摘要:运行 `Locust`时,通常会使用到两种运行模式:**单进程运行**和 **多进程分布式运行** 。 **单进程运行模式** `Locust`所有的虚拟并发用户均运行在单个 `Python`进程中,具体从使用形式上,又分为 `no_web`**和** `web`**两种形式。该种模式由于**单进程 阅读全文
posted @ 2024-03-16 21:26 yongheng999 阅读(147) 评论(0) 推荐(0) 编辑
摘要:从脚本中可以看出,脚本主要包含两个类,一个是 `UserLocust`(继承自 `HttpLocust`,而 `HttpLocust`继承自 `Locust`),另一个是 `UserCollects`(继承自 `TaskSet`)。事实上,在 `Locust`的测试脚本中,所有业务测试场景都是在 ` 阅读全文
posted @ 2024-03-16 21:23 yongheng999 阅读(46) 评论(0) 推荐(0) 编辑
摘要:需求:用旧版本的locsut去压测我们的验证码和登录的接口。’ 定义任务 :发送http接口请求 》类似于Jmeter中的http取样器 定义任务集:定义一个用户行为,包含多个http请求 》类似于Jmeter中的事务控制器 定义Locust类:Locus类代表用户,用户会对应具体的用户行为 --》 阅读全文
posted @ 2024-03-16 21:22 yongheng999 阅读(84) 评论(0) 推荐(0) 编辑
摘要:Locust的安装(注意) 新版本以2开头,现在最新稳定版为2.10.1; (2.x版本) 旧版本以0开头,比如我现在安装的是开发版本为0.12.2. 那么他们有什么区别呢?目前有如下发现: 安装方式的变化: 旧版本安装命令为:pip install locustio 新版本安装命令为:pip in 阅读全文
posted @ 2024-03-12 22:09 yongheng999 阅读(201) 评论(0) 推荐(0) 编辑
摘要:不同细节表现如下: * 脚本 locust使用写脚本的方式,方便对于python有一定基础的人,可以随着自己的想法进行脚本的编写 jmeter通过可视化工具,填写后保存。上手难度低,适合所有人员。 * 运行 locust有两种启动,一种通过web模式控制,还有一种通过命令行控制 jmeter有两种启 阅读全文
posted @ 2024-03-12 21:39 yongheng999 阅读(50) 评论(0) 推荐(0) 编辑
摘要:一 Locust的介绍 现在不管是互联网行业还是传统行业,对性能的要求,都日渐增多,为了能更快更准确的定位问题,发现问题,以及解决问题,市面上出现了越来越多的性能测试工具,例如Jmeter,LoadRunner,Locus,而今天,我们主要介绍就是Locust,locust官网如下:https:// 阅读全文
posted @ 2024-03-12 21:35 yongheng999 阅读(89) 评论(0) 推荐(0) 编辑
摘要:一 状态码定义 二 遵守的规范 200 一定是正确。所有异常都不使用 200 返回码 业务逻辑上的错误,有特别的错误码尽量使用 4xx,否则使用 400。 服务器端内部错误,无特别错误码使用 500。 业务异常时,返回内容使用 JSON 格式定义 error 信息。 阅读全文
posted @ 2024-03-12 09:22 yongheng999 阅读(33) 评论(0) 推荐(0) 编辑
摘要:一 测试背景 首先阐述本次性能测试背景,即被测系统类型,面向哪些用户,具备什么特点,为什么进行性能测试,预期的一些指标等等 比如:为了保证“双十一”大促期间,系统能稳定运行且保障业务的高可用,进行性能测试 核心:评估系统性能、分析性能变化趋势,定位系统瓶颈风险,协助规划系统容量 二 测试的目的 测试 阅读全文
posted @ 2024-03-09 21:54 yongheng999 阅读(96) 评论(0) 推荐(0) 编辑
摘要:一 首先我们要搞清楚接口签名步骤: **第一步:初步实现接口****第二步:找开发拿到算法和key** * key:sAHDRNJg0ZevmEn7HwBfbw== * 算法:HmacMD5 咱们就找一个https://www.wenjiangs.com/doc/85uwistv * 在JMeter 阅读全文
posted @ 2024-03-06 16:15 yongheng999 阅读(52) 评论(0) 推荐(0) 编辑
摘要:一 引入: 作用类似于JMeter监听器,ctx、vars、props、prev、log都和BeanShell Sampler一样 二 特定参数有: * sampleEvent:对应org.apache.jmeter.samplers的SampleEvent类 * sampleResult: **s 阅读全文
posted @ 2024-03-06 14:12 yongheng999 阅读(100) 评论(0) 推荐(0) 编辑
摘要:一 引入: 二 BeanShell 断言参数: 作用类似于JMeter断言,ctx、vars、props、prev、log、SampleResult都和BeanShell Sampler一样 BeanShell Assertion特定的参数有: * Failure * FailureMessage 阅读全文
posted @ 2024-03-06 13:50 yongheng999 阅读(91) 评论(0) 推荐(0) 编辑
摘要:一 主要作用: BeanShell PostProcessor 主要用来提取响应数据,对数据做处理分析的。 二 概念: 作用类似于后置处理器,其中的ctx、vars、props、prev、log都和BeanShell Sampler一样一样 ![image.png](https://fynotefi 阅读全文
posted @ 2024-03-05 14:38 yongheng999 阅读(142) 评论(0) 推荐(0) 编辑
摘要:在自动化测试中,我遇到的一些挑战包括: 应用覆盖率不足:自动化测试覆盖不到所有的功能和场景,特别是对于复杂的系统和多样的用户交互。 解决方法:持续评估和优化自动化测试的覆盖范围,优先覆盖核心功能和关键路径,结合手动测试进行补充。 测试环境配置复杂:搭建和维护测试环境需要耗费大量时间和资源,尤其是涉及 阅读全文
posted @ 2024-03-05 13:43 yongheng999 阅读(283) 评论(0) 推荐(0) 编辑
摘要:需求分析: 确定测试的范围和目标。 分析需求文档或用户故事,了解功能和业务逻辑。 确定测试用例,包括正向和反向场景。 选择测试工具和框架: 根据项目需求和技术栈选择合适的自动化测试工具和框架。 了解选定工具和框架的特性和功能,确定是否符合项目需求。 测试环境准备: 搭建测试环境,包括软件和硬件环境的 阅读全文
posted @ 2024-03-05 13:38 yongheng999 阅读(141) 评论(0) 推荐(0) 编辑
摘要:常见的自动化测试工具有很多种,其中一些主要的工具包括: Selenium WebDriver: 优点:支持多种浏览器和操作系统,可用于Web应用的自动化测试,灵活性高,可扩展性好。 缺点:不支持测试移动应用,需要编写详细的测试脚本。 Appium: 优点:支持多种移动应用平台(如iOS、Androi 阅读全文
posted @ 2024-03-05 13:35 yongheng999 阅读(217) 评论(0) 推荐(0) 编辑
摘要:adb monkey 是 Android Debug Bridge (ADB) 工具中的一个命令,用于执行随机事件来对 Android 应用进行压力测试。以下是 adb monkey 命令的一些常用参数: -p 或 --package:指定要测试的应用程序包名。 -s 或 --seed:指定随机数生 阅读全文
posted @ 2024-03-05 11:31 yongheng999 阅读(107) 评论(0) 推荐(0) 编辑
摘要:使用资源文件: 将所有文字内容(如标签、按钮文本、错误消息等)存储在单独的资源文件中,而不是直接硬编码在代码中。对于每种语言,都应有对应的资源文件,然后根据用户的语言偏好加载相应的资源文件。 字符编码: 确保你的网站或应用程序使用统一的字符编码(如UTF-8),以支持各种语言的文字显示。 文本翻译质 阅读全文
posted @ 2024-03-05 09:14 yongheng999 阅读(22) 评论(0) 推荐(0) 编辑
摘要:一概念: 前置处理器主要作用: 用于修改即将发送的http的请求数据 BeanShell预处理器可以在取样器发送请求之前被执行,可以通过它完成发送请求所需的数据 其中的ctx、vars、props、prev、log都和BeanShell Sampler一样 ![image.png](https:// 阅读全文
posted @ 2024-03-04 17:08 yongheng999 阅读(68) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示