![](https://img-blog.csdnimg.cn/20201014180756757.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
软件测试工具
文章平均质量分 88
自由家
一个软件测试的老手!
展开
-
基于 Jmeter 的轻量级云压测平台的原理与实现 :压测引擎
JMeter 是一个广泛使用的性能测试工具,它支持许多不同的测试技术和方法。其中,云压测是一种常用的测试方法,它可以使用云计算资源来实现大规模的测试和压力测试。至此就会简单的执行 Jmeter 的 jmx 文件,当然我的代码中会包含各种其他的监听器,static 代码块,抛弃了 Jmeter 的 classloader,甚至还改了 Jmeter 的 Runner 代码。这些主要是为了监听数据,加载 Jmeter 自带函数,可以同时进行多个 jmx 脚本,动态修改 Jmeter 配置文件等功能服务的。原创 2023-07-26 13:51:06 · 733 阅读 · 0 评论 -
基于 Jmeter 的轻量级云压测平台的原理与实现
在进行性能测试时,我们需要确保应用程序在不同负载和压力下的表现。原创 2023-07-26 13:46:32 · 697 阅读 · 0 评论 -
性能测试工具 Locust 分布式进行性能测试
在进行性能测试时,我们需要确保应用程序在分布式环境下仍能正常运行。使用 Locust 进行性能测试时,当一台单机不足以模拟所需的用户数量的时候,可以在多台机器上分布式的执行性能测试。首先,需要在主机下启动一个 Locust 实例后跟上--master 参数。因为主节点无法操作别的节点,所以必须在其它机器上启动从属 Locust 节点,后面跟上--slave 参数,以及 --master-host(指定主节点的 IP /主机名)。当然了主机和每台从属机器上必须具有 Locust 测试脚本--master。原创 2023-07-26 13:39:49 · 490 阅读 · 0 评论 -
服务器性能测试工具介绍
Python 的 unittest 模块提供了一个标准的单元测试框架,但它有一些限制,例如无法处理多线程测试和模拟网络请求等。在这篇文章中,我们将介绍如何扩展 Python 的 unittest 框架,以便能够进行多线程测试和模拟网络请求等操作。最近在研究服务器性能测试,发现一个好用的工具:wetest 的压测大师。它的最大优势是:不用自己部署压测服务器,配置过程简单易上手。第一步:创建测试,选择测试类型。原创 2023-07-26 13:36:07 · 419 阅读 · 0 评论 -
扩展 Python 的 unittest 框架
Python 的 unittest 模块提供了一个标准的单元测试框架,但它有一些限制,例如无法处理多线程测试和模拟网络请求等。在这篇文章中,我们将介绍如何扩展 Python 的 unittest 框架,以便能够进行多线程测试和模拟网络请求等操作。unittest 是 Python 标准库自带的单元测试框架,是 Python 版本的 JUnit,关于 unittest 框架的使用,官方文档非常详细,网上也有不少好的教程,这里就不多说了。本文主要分享在使用 unittest 的过程中,做的一些扩展尝试。原创 2023-07-26 13:32:13 · 209 阅读 · 0 评论 -
Jmeter 测试 JMS (Java Message Service)/ActiveMQ 性能
在进行性能测试时,我们需要测试应用程序在不同负载和压力下的表现。JMS 介绍:JMS 即 Java 消息服务(Java Message Service)应用程序接口,是一个 Java 平台中关于面向消息中间件(MOM)的 API,用于在两个应用程序之间,或分布式系统中发送消息,进行异步通信。(百度本文只测试 ActiveMQ,其他消息中间件应该同理.点对点 (Queues 队列)原创 2023-07-26 13:27:59 · 420 阅读 · 0 评论 -
Junit4+MultiThreadedTestRunner 并发测试
在进行软件测试时,我们需要确保应用程序在不同的并发情况下仍能正常运行。最近要对一个类里的方法,进行压力测试。下面讲一下写出的 Junit4 的并发测试代码吧。如果要复用的话,只需要改下运行时间,要并发的代码就可以了。原创 2023-07-26 13:25:45 · 402 阅读 · 0 评论 -
性能测试工具 python+monkey+ 监控 crash,性能统计
在进行性能测试时,我们需要监控应用程序的运行情况,以便在出现问题时能够及时发现并解决问题。在这篇文章中,我们将介绍如何使用 Python、Monkey 和性能统计工具来监控应用程序的 crash。原创 2023-07-26 13:23:51 · 389 阅读 · 0 评论 -
Jmeter GET 请求 参数为 Json 串且参数中存在变量的转化
在 Apache JMeter 中,我们可以使用 Regular Expression Extractor 元件来从 JSON 串中提取参数。但是,如果参数中存在变量该怎么办呢?在这篇文章中,我们将介绍如何使用 Regular Expression Extractor 元件从 JSON 串中提取包含变量的参数,并将其转换为可供 JMeter 使用的格式。今天遇到一个需要 GET 请求传入一个 JSON 串,压测中 JSON 串的 ID 需要进行参数化的问题;原创 2023-07-26 13:20:23 · 754 阅读 · 0 评论 -
Jmeter 兵器谱之 Regular Expression Extractor
在 Apache JMeter 中,除了传统的 Timer、BeanShell PreProcessor 和 PostProcessor 等元件外,还有一个非常强大且常被忽视的元件:Regular Expression Extractor。正则表达式提取器是一个可以从响应中提取特定格式的文本的元件。它可以用于从复杂的响应数据中获取有用的信息,例如 API 返回的 JSON 或 XML 数据。原创 2023-07-26 13:17:47 · 278 阅读 · 0 评论 -
性能测试工具 Jmeter 引入 jar 包踩过的坑
JMeter 是一种开源的性能测试工具,可以帮助我们快速地进行网站、应用程序等的性能测试和压力测试。在使用 JMeter 进行测试时,我们需要引入相应的 jar 包来支持 JMeter 的功能。然而,在引入 jar 包的过程中,我们可能会遇到一些问题和坑。原创 2023-07-25 13:59:41 · 1083 阅读 · 0 评论 -
python+monkey+ 监控 crash,性能统计
在软件开发中,测试和监控是非常重要的一个环节,它可以帮助我们更加全面地检测软件中的安全漏洞和风险。Python 是一种常用的脚本语言,可以帮助我们更加方便地进行测试和监控工作。Monkey 是 Python 中的一个模块,可以帮助我们进行自动化测试和压力测试。原创 2023-07-25 13:57:48 · 523 阅读 · 0 评论 -
基于 Python 的性能测试工具 locust (与 LR 的简单对比)
Locust 是一种开源的性能测试工具,可以帮助我们快速地进行网站、应用程序等的性能测试和压力测试。性能测试,重点是考察并发用户数、响应时间、tps 这类指标。一直用的是 LR,LR 在一起概念上更易于理解,在有 lr 的基础上,在看其他的工具,就比较容易了。locust 也可以支持分布式执行(多执行机),用来简单测试这类 http 的接口,也算比较方便。而且,locust 全部基于 Python 脚本,扩展性不错,号称可以测试任何协议和系统。原创 2023-07-25 13:48:43 · 295 阅读 · 0 评论 -
python 压测 +paramiko 远程监下载日志 +js 测试报告
在软件开发中,压测和测试是非常重要的一个环节,它可以帮助我们更加全面地检测软件中的安全漏洞和风险。paramiko 是 Python 中的一个模块,可以帮助我们通过 SSH 协议进行远程登录和操作。JavaScript 是一种常用的脚本语言,可以帮助我们更加方便地进行网页测试和监控。原创 2023-07-25 13:46:03 · 356 阅读 · 0 评论 -
shell 脚本通过 dumpsys SurfaceFlinger --latency 数据计算 FPS 和评价流畅度。
在 Android App 的持续集成测试中,流畅度是一个非常重要的指标,它表示应用程序的运行流畅程度。流畅度的评价通常可以通过监控应用程序的 CPU、内存、GPU 等资源的使用情况来进行评价。原创 2023-07-25 13:42:15 · 1106 阅读 · 0 评论 -
Android App 持续集成性能测试:启动流量
Jenkins 是一种开源的持续集成工具,可以帮助我们更加方便地进行软件开发和测试工作。通过 API 远程管理 Jenkins 可以帮助我们更加方便地进行 Jenkins 的配置和管理工作,并且可以更加灵活地进行 Jenkins 环境的搭建和部署。本文对 Android App 的启动流量测试进行介绍。这里的启动流量指的是网络流量,即 App 在启动时发起网络请求和接收网络响应时传输的网络数据量。说起流量,也许大家的第一反应就是 tcpdump/wireshark 这类网络抓包工具。原创 2023-07-25 13:39:40 · 572 阅读 · 0 评论 -
通过 API 远程管理 Jenkins
Jenkins 是一种开源的持续集成工具,可以帮助我们更加方便地进行软件开发和测试工作。通过 API 远程管理 Jenkins 可以帮助我们更加方便地进行 Jenkins 的配置和管理工作,并且可以更加灵活地进行 Jenkins 环境的搭建和部署。最近接到一个需求,需要对公司内部的 Android 性能测试平台的分支管理模块进行改造。在该系统中,Jenkins 负责定时检测代码库()的代码更新情况,当检测到有新的代码提交时,自动采用最新的代码进行构建,并采用构建得到的包(apk)触发自动化测试平台(原创 2023-07-25 13:37:45 · 430 阅读 · 0 评论 -
性能测试工具 Locust + Boomer In Docker
Locust 是一种开源的性能测试工具,可以帮助我们快速地进行网站、应用程序等的性能测试和压力测试。Boomer 是一种开源的自动化测试工具,可以帮助我们更加方便地进行测试和调试工作。在 Docker 中使用 Locust 和 Boomer 可以帮助我们更加方便地进行测试和调试工作,并且可以更加灵活地进行测试环境的搭建和部署。原创 2023-07-25 13:22:57 · 609 阅读 · 0 评论 -
渗透测试流程
在软件开发中,渗透测试是一种非常重要的安全测试方法,它可以帮助我们更加全面地检测软件中的安全漏洞和风险。原创 2023-07-25 13:19:58 · 849 阅读 · 0 评论 -
测试覆盖率 JVM 字节码测试运用 - 远程调试、测试覆盖、影子数据库
在软件开发中,测试覆盖率是一个非常重要的指标,它表示代码中所有的测试用例是否都已经被覆盖到。JVM 字节码测试是一种比较新的测试方法,它可以对 JVM 字节码进行测试,从而更加全面地覆盖代码中的所有逻辑。一个专为 JVM 系语言 web 应用设计的,专注于集成测试阶段的后端测试工具。本质功能是监控代码执行,做远程调试使用。比如可以让你实时的了解到在前端点击某个按钮后,后端执行的代码细节,包括每一个方法的名称、参数返回值、执行的代码行号,调用的 sql 语句等信息。原创 2023-07-25 13:15:48 · 411 阅读 · 0 评论 -
前端性能测试
前端性能测试是一个广泛的领域,它旨在评估前端应用程序的性能和可靠性。前端性能测试需要使用各种测试工具和技术,包括浏览器测试、页面性能分析、代码优化和自动化测试等。原创 2023-07-24 14:22:23 · 526 阅读 · 0 评论 -
Jmeter 中 Beanshell 的使用
JMeter 是一个广泛使用的性能测试工具,它支持许多不同的测试技术和方法。其中,Beanshell 是一种常用的脚本语言,它可以用来自动化测试脚本的执行和参数化测试。Beanshell 是一种轻量级的 Java 脚本,纯 Java 编写的,能够动态的执行标准 java 语法及一些扩展脚本语法,类似于 javaScript,在工作中可能用的多的就是:Beanshell 取样器:跟 Http 取样器并列Beanshell 前置处理器:一般放在 Http 请求下,在请求后处理一些数据。原创 2023-07-24 14:20:17 · 411 阅读 · 0 评论 -
软件测试的方法
软件测试是一个广泛的领域,它涉及到许多不同的方法和技术。一、软件测试的目的发现缺陷尽早和尽量多的发现被测对象中的缺陷,应该是测试人员测试过程中最常提起的一个测试目标,也是所谓测试价值的一个的重要体现。发现缺陷的目的是推动开发人员定位和修复问题,测试人员通过再测试和回归测试,确保开发人员已修复缺陷,并没有影响原来正常的区域,从而提高产品质量。开发生命周期的每个阶段,都应该有测试的参与,并尽量多的发现本阶段的缺陷,从而大大提高本阶段的缺陷阶段遏制能力,从而提高测试效率、降低成本和提高质量。原创 2023-07-24 14:09:36 · 154 阅读 · 0 评论 -
测试基础 接口和抽象类 (abstract)
接口和抽象类是 Python 中两种重要的抽象概念。它们都是用来定义和约束代码行为的规范和模板。原创 2023-07-24 14:06:36 · 203 阅读 · 0 评论 -
用例设计 :如何测试一个应用的登录场景
用例设计是测试开发的一个重要方面,它旨在根据需求和规范制定合理的测试用例,以评估软件的功能和性能。首先,对于高质量的软件测试,用例设计不仅需要考虑明确的的显式功能性需求,还要涉及兼容性、安全性和性能等一系列的非功能性需求对软件系统的质量有着举足轻重的作用。其次,优秀的测试工程师必须具有宽广的知识面,才能设计出有针对性、更易于发现问题的测试用例。最后,软件测试的用例设计是不可穷尽的,工程实践中难免受制于时间成本和经济成本,所以优秀的测试工程师需要兼顾缺陷风险和研发成本之间的平衡。原创 2023-07-24 13:57:45 · 311 阅读 · 0 评论 -
我是如何做性能测试 - 文档收集并深入学习
性能测试是软件开发过程中的一个重要方面,它旨在评估软件在不同负载和压力条件下的性能表现。性能测试需要收集和分析大量的文档和数据,以便制定合理的测试计划和策略。在每次接到压测任务之后,我首先第一步要做的事情就是找相关人员要文档资料,这是很重要的一个步骤,基本上做压测百分之七八十的信息都可以在文档中找到。那需要收集什么文档呢,各式各样的文档有什么作用呢?这里我列举几个个人认为比较重要的设计文档,以供参考。原创 2023-07-24 13:54:22 · 161 阅读 · 0 评论 -
UI 自动化稳定性用例实战经验分享!
稳定性测试是软件测试的一个重要方面,它旨在评估软件在不同负载和压力条件下的稳定性和可靠性。稳定性测试可以通过自动化测试来实现,其中 UI 自动化测试是一种常用的方法。大家常说 UI 自动化不稳定,那又如何提高稳定性呢?UI 自动化测试稳定性,最常见的就是同一套测试用例在同样的环境上,时而测试通过,时而测试不通过。这样的测试结果产生了很多无效的缺陷,特别是自动化测试已经与公司内部平台接入了相应缺陷系统,使用对于开发、产品以及 QA 常常说自动化测试做了很多无用功。原创 2023-07-24 13:49:34 · 546 阅读 · 0 评论 -
测试开发之系统篇 - 常用系统命令
在测试开发过程中,我们常常需要使用一些系统命令来完成各种任务。这些命令可以帮助我们更好地管理代码、测试环境和测试数据,从而提高测试开发的效率和质量。以下介绍测试工作中常用的一些命令。未专门标注的,为 Linux 和 Mac 系统下的。原创 2023-07-24 13:47:11 · 116 阅读 · 0 评论 -
性能测试常用概念
性能测试是软件开发过程中的一个重要方面,它旨在评估软件在不同负载和压力条件下的性能表现。性能测试涉及到许多概念和技术,包括负载测试、压力测试、稳定性测试、安全性测试和性能优化等。原创 2023-07-24 13:45:11 · 130 阅读 · 0 评论 -
pytest 第三方插件
pytest 是一个广泛使用的 Python 测试框架。它具有强大的测试运行器、测试驱动开发和测试结果可视化等功能。除此之外,pytest 还支持许多第三方插件,这些插件可以为测试带来更多的便利和功能。本文只介绍三种插件,报告方面的插件会另起篇幅进行介绍。原创 2023-07-24 13:41:50 · 399 阅读 · 0 评论 -
性能测试之 cpu 篇
性能测试是软件测试中的一种技术,它的目的是检查软件的性能和稳定性。CPU 是计算机中的一个重要组件,它负责处理计算机的指令,并执行计算机的任务。在性能测试中,CPU 的性能是一个重要的指标,因为它可以帮助我们更好地理解和分析性能测试的结果。Interrupts(译注:中断) - 设备通知内核,他们完成一次数据处理的过程.例子,当一块网卡设备递送网络数据包或者一块硬件提供了一次 IO 请求.Kernel(System) Processes(译注:内核处理过程) - 所有内核处理过程就是控制优先级别.原创 2023-07-23 14:06:50 · 1242 阅读 · 0 评论 -
软件测试基础 - 自动化测试技术
软件测试是一个重要的软件开发过程,它的目的是检查软件是否符合预期。自动化测试是软件测试中的一种技术,它可以帮助我们更轻松地执行测试,并使测试结果更加可靠。自动化测试是,把人对软件的测试行为转化为由机器执行测试行为的一种实践。自动化测试的本质是先写一段代码,然后去测试另一段代码,所以实现自动化测试用例本身属于开发工作,需要投入大量的时间和精力,并且已经开发完成的用例还必须随着被测对象的改变而不断更新,你还需要为此付出维护测试用例的成本。原创 2023-07-23 14:03:25 · 484 阅读 · 0 评论 -
Python 做自动化测试之 Python 反射机制的应用
Python 是一种广泛使用的编程语言,它可以用于开发各种软件和应用程序。Python 反射机制是 Python 中的一个重要概念,它可以帮助我们更轻松地访问和修改类、方法和属性。原创 2023-07-23 14:01:28 · 266 阅读 · 0 评论 -
Jmeter 如何并发执行 Python 脚本
JMeter 是一个开源性能测试工具,它可以帮助我们更轻松地执行性能测试,并使测试结果更加可靠。Python 是一种广泛使用的编程语言,它可以用于开发各种软件和应用程序。本篇文章以文件上传为例,聊聊 Jmeter 并发执行 Python 脚本的完整流程运行上面创建的 Jmeter 并发流程,在结果数中可以查看并发上传文件的结果当然,我们可以增加并发数量去模拟真实的使用场景,只需要修改 CSV 数据源及 Jmeter 参数即可。原创 2023-07-23 13:58:58 · 659 阅读 · 0 评论 -
Python+pytest+requests 自动化测试框架
Python 是一种广泛使用的编程语言,它可以用于开发各种软件和应用程序。pytest 是一个广泛使用的自动化测试框架,它可以帮助我们更轻松地执行测试,并使测试结果更加可靠。requests 是一个广泛使用的 Python 库,它可以帮助我们模拟用户的 HTTP 请求。原创 2023-07-23 13:54:48 · 1225 阅读 · 0 评论 -
【工具-jmeter】jmeter 入门级 demo 练习
JMeter 是一个开源性能测试工具,它可以帮助我们更轻松地执行性能测试,并使测试结果更加可靠。我们还可以在 Jmeter 中定义变量。比如我定义一个变量叫 city. 使用它的时候用 ${city}添加一个 User Defined Variables. 选中 Thread Group: 右键 Add -> Config Element -> User Defined Variables.我们添加一个变量: city然后在 Http Request 中使用这个变量。原创 2023-07-23 13:48:53 · 440 阅读 · 0 评论 -
UI 自动化的 PageObject 设计模式
UI 自动化是一种软件测试方法,它主要用于检查应用程序的用户界面是否符合预期。PageObject 是 UI 自动化中的一个重要概念,它是一种将页面元素映射到 Python 对象的设计模式。PageObject 模式就是对 HTML 页面以及元素细节的封装,并对外提供应用级别的 API,使你摆脱与 HTML 的纠缠。PageObject 模型是一种设计模式,其核心是减少代码重复(最小化代码更新/维护用例)以降低用例开发的工作量。原创 2023-07-23 13:44:26 · 453 阅读 · 0 评论 -
pytest 核心库 pluggy 详解
pytest 是一个广泛使用的自动化测试框架,它可以帮助我们更轻松地执行测试,并使测试结果更加可靠。Pluggy 是 pytest 的一个核心库,它提供了一些有用的工具,可以帮助我们更轻松地执行测试。将定义的类已参数的方式传递进去 (module_or_class)遍历类中全部的方法判断: getattr(method, self.project_name + "_spec", None),判断类方法中是否有当前定义 myproject+spec 的属性,原创 2023-07-23 13:34:31 · 359 阅读 · 0 评论 -
接口测试之配置文件
接口测试是一种软件测试方法,它主要用于检查应用程序接口的功能和性能。在接口测试中,我们需要使用测试工具来模拟用户的请求,以验证应用程序的正确性和稳定性。配置文件是接口测试中的一个重要概念,它可以帮助我们更轻松地执行测试,并使测试结果更加可靠。ini 文件是 Initialization File 的缩写,即初始化文件,通常存放的是一个程序的初始化信息,是 Windows 的系统配置文件所采用的存储格式,统管 windows 的各项配置。原创 2023-07-23 13:27:42 · 263 阅读 · 0 评论 -
高复用性自动化脚本设计实践
高复用性自动化脚本设计实践是一种以提高代码复用性和可维护性为目标的自动化脚本设计方法。在这种方法中,我们将使用一些通用的设计原则和最佳实践,以确保我们的脚本能够在不同的场景中被多次使用,同时还能够保持良好的可读性和可维护性。原创 2023-07-23 13:16:32 · 87 阅读 · 0 评论