软件测试
文章平均质量分 85
程序员可可
这个作者很懒,什么都没留下…
展开
-
自动化测试分层
自动化测试分层主要基于测试的不同关注点,从底层到上层依次进行。这种分层策略有助于确保测试的全面性和有效性,同时减少重复工作,提高测试效率。原创 2024-10-13 20:00:00 · 459 阅读 · 0 评论 -
Seldom支持Excel管理接口用例
前些天留意到 pytest-xlsx 这个插件,支持 Excel 编写测试用例,包括 HTTP接口和 web UI 用例。本质上是利用 pytest的hook功能读取解析Excel文件并执行。用 Excel管理 Web UI 用例相当鸡肋,但是,用数据文件管理HTTP接口用例的的使用场景要广泛得多。否则,HttpRunner、pytest-auto-api2(七月)也不会得到广泛得关注了。虽然,... 但是 ...原创 2024-10-12 20:43:12 · 261 阅读 · 0 评论 -
推荐几款(2024)最新开源API测试工具!
如今 API 已在软件、Web和移动应用程序开发领域无处不在,API 管理的重要性不言而喻,今天给大家分享几款开源的 API 管理工具,希望能对你有用。原创 2024-10-12 14:27:46 · 477 阅读 · 0 评论 -
移动端APP 如何进行自动化和探索性测试?
在测试设计时最主要依据的就是。如果在项目临近发布才开始测试并发现缺陷,这样修复缺陷的成本就会很高,项目的进度也会很不确定。所以,就开发阶段来说,如果把测试分层,在开发阶段都进行测试,能很大程度上缓解这些问题。的开发成本要远低于用户界面测试,如果在用户界面的测试中发现缺陷,修复缺陷的成本也是远高于通过单元测试和组件测试的成本。这里的成本不单纯是开发人员修复缺陷所需要的资源和时间,还包括缺陷修复后测试人员进行回归测试所需要的资源和时间,以及项目延期等其他项目成本。原创 2024-10-11 19:39:12 · 603 阅读 · 0 评论 -
精美可视化:Python自动化生成漂亮的测试报告
以上就是今天为各位小伙伴准备的内容,如果你想了解更多关于Python自动化测试的知识和技巧,欢迎关注我。原创 2024-10-11 14:28:12 · 468 阅读 · 0 评论 -
测试开发-脚本开发工具
整个的脚本开发工具就设计好了,这样不仅能提高测试人员的工作效率,而且可以通过脚本的编写提高测试团队的技术氛围,大家可以尝试下,原创 2024-10-10 20:29:39 · 630 阅读 · 0 评论 -
Selenium 自动化测试最佳实践
本文将探讨「构建一个项目的最佳实践是什么样的?」,该部分更多的是从上层设计与架构的角度自顶向下来思考一个大型测试项目的构建。包括:编码前有什么准备工作?有没有一个基本的指导思想。如何编排测试代码?如何根据情况使用适当的定位器?下面会一一讨论。本文涉及的所有示例程序均使用语言描述。下面列出本文所使用的 Python 版本、Selenium 版本和 Chrome 浏览器版本信息。Python 版本:3.11.3Selenium 版本:4.9.1Chrome 浏览器版本:113。原创 2024-10-10 14:41:33 · 857 阅读 · 0 评论 -
每秒50万行——MySQL写入压测并发实践
再实际的工作中,场景会更加复杂,影响写入性能的因素比较多。像前两个Case,虽然理论上性能会提升很多,但实际结果就是相差无几,很可能就是因为触达了单个Connection的性能瓶颈。而MySQL写入性能影响因素比较多,除了硬件以外,我简单列举几个。MySQL写入性能受多个因素影响,了解并优化这些因素可以显著提升数据库的写入效率。数据库配置:适当增加InnoDB缓冲池大小,使更多数据和索引可以被缓存在内存中,减少磁盘I/O。:较大的日志文件可以减少日志切换的频率,从而提高写入性能。原创 2024-10-09 20:02:36 · 860 阅读 · 0 评论 -
持续测试【经验分享】
持续测试是一种在软件开发周期中不断集成和执行测试的方法。它的核心在于实现测试活动的自动化和实时性,确保代码更改能够快速地经过测试,以便于及时发现和修复问题。这种方法的重要性在于:- 快速反馈:开发者可以立即获得代码更改的影响,从而快速做出调整。- 早期发现缺陷:通过早期介入,可以在问题变得复杂和成本高昂之前解决它们。- 提高软件质量:持续的测试活动有助于维护代码的稳定性和可靠性。- 支持敏捷和DevOps:持续测试与敏捷开发和DevOps实践相契合,支持快速迭代和持续改进。原创 2024-10-09 14:26:56 · 803 阅读 · 0 评论 -
性能测试体系建设之路
前面两篇文章介绍了性能测试基础知识,以及从零开始落地实践性能测试的过程,并通过几个案例剖析了落地过程中每个阶段的重点工作和注意事项。在上述基础上,本篇内容会从个人实践视角转换到知识体系视角,即如何构建自己的性能测试知识体系。看完本篇,各位同学可以参照本篇文章中的内容以及案例,在日常工作中通过不断实践来构建自己的性能测试知识体系。所谓。性能测试在执行层面,基本都是采用工具模拟并发请求,但请求发起方式和过程,则需要根据不同的场景灵活调整使用。在正式介绍几种常见的测试策略之前,我会先介绍性能测试的应用领域。原创 2024-10-08 20:29:43 · 437 阅读 · 0 评论 -
TestNG执行测试用例的方法
TestNG是一个非常好用d自动化测试框架,对于经常使用selenium做web端UI测试的童鞋来说是个不错的工具。具备基本常识的测试童鞋们,可能需要知道存在即合理,存在即有用的道理。任何一个工具,或者一件事的存在如果令人得不到益处,那么是不会有人继续使用的。这个常识基本上人人都懂。在自动化测试,TestNG是个非常好用的框架。在实际项目中,会有成千上百个测试用例进行执行,这时候需要用到并发执行测试。在TestNG中,提供了很好的并发执行的方法。下面从4个方面来理一下:TestNG对并发执行的处理。原创 2024-10-08 15:59:51 · 527 阅读 · 0 评论 -
Selenium自动化测试 —— 模拟鼠标键盘的操作事件
在实际的web产品测试中,对于鼠标的操作,不单单只有click(),有时候还要用到右击、双击、拖动等操作,这些操作包含在ActionChains类中。首先导入ActionChains类: from selenium.webdriver.common.action_chains import ActionChainscontext_click():右击double_click():双击drag_and_drop():拖动move_to_element():鼠标移动到一个元素上。原创 2024-10-03 20:00:00 · 1533 阅读 · 0 评论 -
接口自动化代码不会写?试试RunnerGo
RunnerGo支持自动化测试功能,RunnerGo的工作流程是:接口管理-场景管理-性能测试-自动化测试,所以自动化测试的运行内容为场景下的用例,我们可以在“场景管理”中预先配置好该场景下的用例,也可以在自动化测试中创建用例。在左侧导航栏选择:自动化测试-计划管理-新建计划,创建自动化测试计划。自动化测试计划创建好之后可以直接导入场景或者新建场景场景导入后可以在场景下创建测试用例,可以根据需求创建不同的用例,执行测试计划时会按顺序执行每个场景下的测试用例。原创 2024-10-02 20:00:00 · 267 阅读 · 0 评论 -
Web 自动化测试Selenium 之PO 模型
在自动化中,Selenium。原创 2024-10-07 09:15:00 · 1395 阅读 · 0 评论 -
Jacoco 手动测试覆盖率检查
团队中目前还没有自动化测试的覆盖,所以测试 team 想了解下手动测试的覆盖率。于是才有了本片文章的产生。网上有很多文章是利用 Android 的 instrument 测试框架,然后通过命令来启动app来进行测试。而且报告生产的时间点是在启动的 activity 结束以后,在复杂场景下,是没有办法来捕捉到所有页面的函数调用的。本文中的方案是对一个新的build type来重载 Application 代码,只在手动测试时候使用,对原来的代码不会产生任何影响。希望可以帮到你。原创 2024-10-06 20:00:00 · 525 阅读 · 0 评论 -
HTTP 状态码 && 网络协议详细介绍
在HTTP协议中,状态码(Status Code)是对每一次客户端请求的响应的标准化返回代码,用于告知客户端本次请求的处理结果。这类状态码表示接收的请求正在处理,主要用于在最终响应前的中间响应。这类状态码很少在实践中使用。100 Continue: 客户端应继续其请求。服务器已经收到了请求的头信息,并且客户端应继续发送剩余的请求(如果有的话)。表示请求已成功被服务器接收、理解,并接受。200 OK: 请求已成功处理。201 Created: 请求成功并且服务器创建了新的资源。原创 2024-10-05 20:00:00 · 1438 阅读 · 0 评论 -
缺陷管理与软件测试的作用
在软件开发过程中,缺陷管理和软件测试是确保软件质量的两个关键方面。缺陷管理涉及识别、跟踪和解决软件中的缺陷,而软件测试则是发现这些缺陷的主要手段。本文将探讨缺陷管理和软件测试的作用,并阐述它们在软件开发生命周期中的重要性。缺陷管理系统允许团队成员报告软件中的缺陷,并为其分配唯一标识符以便跟踪。通过识别和记录缺陷,团队可以及时了解软件中存在的问题,并采取适当的措施加以解决。缺陷管理帮助团队评估缺陷的优先级和严重性,以确定哪些缺陷需要首先解决。这有助于团队有效地分配资源和解决问题,确保关键问题得到及时解决。原创 2024-10-04 20:00:00 · 256 阅读 · 0 评论 -
使用BS4和Selenium实现高级网页数据采集的实战指南(爬取知乎数据)
最近因为一些原因,需要收集一些知乎的数据进行分析。但当实际操作时却发现遇到了种种问题.首当其冲的就是知乎的反爬机制.最初我的思路是先手动登录,然后提取并存放cookie信息到本地以方便以后使用.然后重新打开后再读取cookie然后刷新页面,结果遇到了和这篇博文一样的情况.虽然能成功登录和访问问答,但当我获取搜索结果和点击展开评论时会报错. 经过一段时间的查阅和尝试后写下了这篇博客.原创 2024-09-28 14:06:40 · 863 阅读 · 0 评论 -
接口测试框架开发实践:断言模块封装
看一下我们之前用过的例子。登陆数据 TEST_LOGIN.yaml将登陆接口作为setup()定义在conftest.py文件而我们知道deepdiff库提供grep功能,可以查询预期值是否存在于实际响应值中,即expect⊆actual。我们可以遍历预期JSON串中的每个Key的值是否包含于实际响应中。原创 2024-09-27 19:46:54 · 167 阅读 · 0 评论 -
线上系统遭遇性能Bug时的应急处理与长期优化策略
线上系统出现性能Bug是一种常见且严重的问题,它可能引发用户体验下降、服务不可用甚至造成业务损失。当这类问题出现时,如何迅速响应并高效解决,以及如何从长远角度预防性能问题的发生,是每个运维团队和技术团队都应熟知并熟练掌握的应对策略。以下是针对线上性能Bug的具体处理方案与长期优化建议。原创 2024-09-27 14:13:56 · 345 阅读 · 0 评论 -
Appium控件互动攻略:提升自动化测试效率的必备方法大揭秘!
与 Web 元素操作一样(参考 Selenium Web 元素操作),定位到 APP 控件元素后,可以对控件进行一系列的操作,实现与 APP 交互,比如点击、文本输入、元素属性获取等。常见控件的基本交互方式,可以模拟用户与应用程序的交互。在编写测试脚本时,通常需要结合元素的定位方式(如 ID、XPath 等)来找到相应的控件元素。确保测试脚本中的等待和定位策略,以及对元素状态的验证,可以提高测试的稳定性和可靠性。原创 2024-09-26 19:36:11 · 322 阅读 · 0 评论 -
Fuxi:一款功能强大的跨平台渗透测试工具
Fuxi是一款功能强大的跨平台,该工具基于3开发,支持在、macOS和上使用,具备良好的跨平台特性。在该工具的帮助下,广大研究人员可以轻松快速地执行渗透测试和安全研究任务。由于该工具基于Python 3开发,因此广大研究人员首先需要在本地设备上安装并配置好Python 3环境。除此之外,该工具的运行还需要使用到下列组件:RedismongoDB服务启动大约需要15秒左右的时间,然后打开浏览器访问http://127.0.0.1:5000。默认用户名:fuxi默认密码:whoami。原创 2024-09-26 14:31:00 · 445 阅读 · 0 评论 -
软件测试质量保证进阶之路
我们在谈论测试时间不够时,有个隐含约束条件:对应需求的上线时间无法更改。若是上线时间可以随意调整的话,就不存在测试时间不够的问题了。那么我们可以先思考下:当我们已经使用科学的方法评估出来预留给测试的时间不够时,我们是否在第一时间同项目组以及测试组织内部反馈了这个问题。也许有同学会碎碎念,反馈有啥用呀,我都已经说了很多次了。这里所说反馈是指——有效反馈,而不是无效的抱怨。比如说,客观地陈述现在遇到了什么问题,尝试了哪些方法,都不起作用,期望能得到什么帮助或者资源。原创 2024-09-25 19:46:39 · 873 阅读 · 0 评论 -
如何保持测试环境的稳定性?
日常自动化测试中最担心的就是环境不稳定问题。不稳定的测试环境,经常可能导致测试失败。解决方法:尽量保持测试环境的稳定性,包括硬件、软件和网络等方面。如何保持测试环境的稳定性?要保持测试环境的稳定性,可以采取以下措施:1. 隔离测试环境:将测试环境与生产环境分开,避免相互干扰。2. 版本控制:对软件版本进行严格控制,确保测试环境中的软件版本与预期一致。3. 配置管理:记录和管理测试环境的配置信息,以便快速还原和部署。4. 定期维护:包括硬件检查、软件更新和系统优化等。原创 2024-09-25 14:27:38 · 184 阅读 · 0 评论 -
Python常见Json对比库deepdiff、json_tools、jsonpatch
对比两个json对象差异,常见的第三方对比库deepdiff、json_tools、jsonpatch都能够满足我们的需求。原创 2024-09-24 19:47:09 · 291 阅读 · 0 评论 -
安全测试|如何使用burpsuite+xray实现联动测试
目的:安全测试过程中手动分析测试与xray自动化扫描测试结合,这样可以从多层保障安全测试的分析,针对平台业务接口量大的安全测试是十分有用的,可以实现双向测试同时开始。1.1 下载地址:xray community2.1 运行 .\xray_windows_amd64.exe genca 生成证书2.2 双击安装证书。原创 2024-09-24 14:36:45 · 223 阅读 · 0 评论 -
Selenium Grid - 多台计算机上并行运行
当你希望在多台计算机上并行运行测试?Selenium Grid可以帮你实现。官方文档原文:Selenium Grid允许通过将客户端发送的命令路由到远程浏览器实例,在远程机器上执行WebDriver脚本。Grid 可以做那些事?1.提供一种在多台机器上并行运行测试的简单方法2.允许在不同的浏览器版本上进行测试3.启用跨平台测试感兴趣吗?通过以下部分了解 Grid 是如何工作的,以及如何设置自己的 Grid。原创 2024-09-23 20:31:40 · 767 阅读 · 0 评论 -
测试人员需求分析都做什么
测试人员避免不了要参与分析。今天小编给大家列一下需求分析的基本原则。原创 2024-09-23 14:40:08 · 277 阅读 · 0 评论 -
全链路实践的必要性(干货)
随着业务的快速发展,系统性能压力问题日益显现,并在特定营销活动期间尤为突出,可能导致突发性的系统性能激增,甚至引发系统崩溃。近年来,“全链路压测”这一概念因电商行业大规模促销活动而逐渐成为焦点。它被视为互联网公司确保系统稳定运行的关键武器,与传统以事务为核心的性能测试不同,全链路压测更侧重于模拟真实场景下的请求流量,在涵盖全部关联系统的环境下进行,尤其适用于复杂交易链路的检测。原创 2024-09-21 20:34:15 · 914 阅读 · 0 评论 -
Selenium WebDriver基本知识点
在Web自动化测试领域,Selenium WebDriver无疑是一颗耀眼的明星。它不仅支持多种浏览器,还提供了丰富的API来模拟用户操作,使得自动化测试变得既简单又高效。无论你是自动化测试新手还是老手,了解Selenium WebDriver的基本知识点都是非常必要的。本文将介绍Selenium WebDriver中的一些常用知识点,帮助你快速入门或巩固已有知识。原创 2024-09-22 20:00:00 · 527 阅读 · 0 评论 -
Jenkins自动化部署后端项目看这篇就够了
本文主要讲解,使用Jenkins自动化部署后端工程。讲解怎么自动化部署前后的分离项目中的后端工程。前提条件:本地需要Jenkins,如果你不知道怎么安装,可以看我的另外一篇文章。废话不多说,开干!原创 2024-09-20 19:46:02 · 1008 阅读 · 0 评论 -
Python 操作 json 数据
在Python中,操作JSON数据主要包括序列化(将Python对象转换为JSON格式)和反序列化(将JSON字符串转换回Python对象)。以下是使用Python内置的json模块进行这些操作的基本示例:JSON 序列化 (Serialization)JSON 反序列化 (Deserialization)JSON仅支持特定的数据类型,如数字、字符串、布尔值、null、数组(对应Python中的列表)和对象(对应Python中的字典)。原创 2024-09-20 14:01:30 · 794 阅读 · 0 评论 -
有了这个Python库,免费实现验证码识别!
在做UI自动化时,无论是APP还是Web在登录页面经常会遇到需要输入验证码的时候,网上也有很多方法进行帮助我们,比如通过百度OCR的接口或者其他平台的开源接口,但是大多数都是收费的,对于我们个人学习非常不友好。以前小编也分享过,今天小编再介绍一个python的开源库——带带弟弟ocr(ddddocr)。ddddocrGithub:https://kgithub.com/sml2h3/ddddocr安装:pip install ddddocrpython要求:原创 2024-09-19 20:13:03 · 327 阅读 · 0 评论 -
五步轻松安装 Docker
Docker 是一个开源的应用容器引擎,它是基于 Go 语言并遵从 Apache2.0 协议开源。Docker 可以让开发者打包他们的应用以及依赖包到一个轻量级、可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。容器是完全使用沙箱机制,相互之间不会有任何接口,更重要的是容器性能开销极低。原创 2024-09-19 15:05:51 · 671 阅读 · 0 评论 -
我们是如何测试人工智能的数据构造与性能测试篇
人工智能场景中的性能测试与我们在互联网中创建到的有很大的不同,因为它需要模拟更复杂的情况。当然它也有相似的地方,只不过今天我们主要介绍它们不同的地方。:AI就是为了某个特定的业务服务的。它的形态可能就是一个模型。可以是用来做广告或者内容推荐的模型,也可以是用来做人脸识别,对话问答的模型。测试人员通常的测试对象就是这个模型,或者是搭载这个模型的上层业务,比较少会涉及到其他的东西,行业中做这种测试的人数占了大多数。原创 2024-09-18 20:28:50 · 1428 阅读 · 0 评论 -
Appium环境搭建及元素定位
是一个开源测试自动化框架,可用于原生,混合和移动Web应用程序测试。它使用驱动iOS,Android和Windows应用程序。原创 2024-09-18 15:31:51 · 721 阅读 · 1 评论 -
selenium web控件的交互进阶
调用 ActionChains 方法的时候,不会立刻执行,而是将所有的操作放到一个队列里面,当调用 perform() 方法的时候,队列的事件就会依次执行。这些资料,对于【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴上万个测试工程师们走过最艰难的路程,希望也能帮助到你!ActionChains和TouchAction都是将动作存储在队列中,然后执行perform()方法,按队列顺序执行动作。TouchActions: 模拟PC和移动端的点击,滑动,拖曳,多点触控等多种手势操作。原创 2024-09-18 14:31:33 · 1059 阅读 · 0 评论 -
浏览器兼容——如何测试
从表格中可以看出国内浏览器的双模式其实就是对应 IE 和 Chrome 两种内核,且 Microsoft Edge 也转向了 Chrome 的内核,因此通常只需测试 Chrome、IE、Safari、Firefox 这四种浏览器。由于浏览器更新日志不全,无法找到所有版本号对应的内核,目前看到内核普遍落后 Chrome 两年左右,所以不严格推算以需要兼容的时间点往前推两年即可。用提交号搜索(结果为空时,可以尝试删掉末尾数字,搜索邻近的提交号也可以,差异可以忽略),进入文件夹中。了解到的方法有:浏览器。原创 2024-09-17 20:15:00 · 1786 阅读 · 0 评论 -
进行系统设计时,这4点一定要注意!
服务的健壮性跟系统设计有很大关系,前期设计时考虑多一些处理逻辑,可以避免后期出现问题带来的损失以及修复问题的成本。在前期讨论设计方案时测试同学也需要参与,而不只是埋头设计用例和测试,开发同学可能因为思维局限或者思考疲劳,不一定能想到异常处理,测试同学可以利用自身优势多给一些建议。如果等测试评审时再跟开发同学强调这些设计,或者是到测试中才发现这类问题,可能就有点迟了,因为越到后期改动代码的影响范围越大,改动的风险也越高。原创 2024-09-17 20:00:00 · 835 阅读 · 0 评论 -
Stream:测试服务器内存memory性能
简介:Stream是业界主流的内存带宽测试程序,测试行为相对简单可控。该程序对CPU的计算能力要求很小,对CPU内存带宽压力很大。stream测试得到的是可持续运行的内存带宽最大值,而并不是一般的硬件厂商提供的理论最大值,具有如下特点:2、数组的值采用了双精度(8个字节)则更换模型参数./stream。原创 2024-09-16 20:00:00 · 308 阅读 · 0 评论