![](https://img-blog.csdnimg.cn/20201014180756780.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
软件测试
文章平均质量分 85
测试界潇潇
这个作者很懒,什么都没留下…
展开
-
利用Selenium轻松实现网页截图功能
通过这篇教程,即使是对Python或Selenium不太熟悉的小伙伴也能快速上手网页截图功能。当然,Selenium的功能远不止于此,它还可以用来模拟登录、点击按钮等复杂的交互场景。行动吧,在路上总比一直观望的要好,未来的你肯定会感 谢现在拼搏的自己!如果想学习提升找不到资料,没人答疑解惑时,原创 2024-07-22 20:25:38 · 419 阅读 · 0 评论 -
使用Selenium库模拟浏览器操作
是一个用于自动化浏览器的库。它提供了一组强大的工具和API,使开发者能够以编程方式控制浏览器的行为,模拟用户与网页的交互。Selenium可以用于各种Web自动化任务,包括网页、数据采集、UI自动化等。它支持主流的Web浏览器,如Chrome、Firefox、Safari等,并提供了丰富的功能,例如:页面导航:Selenium可以模拟用户在浏览器中输入URL或点击链接来导航到不同的网页。原创 2024-07-22 19:43:45 · 288 阅读 · 0 评论 -
Jmeter、postman、python 三大主流技术如何操作数据库?
只要是做测试工作的,必然会接触到数据库,数据库在工作中的主要应用场景包括但不限于以下:功能测试中,涉及数据展示功能,需查库校验数据正确及完整性;例如商品搜索功能自动化测试或性能测试中,某些接口要跑通,需要关联到数据库操作;例如注册接口中短信验证码获取自动化测试中断言处理,除了响应结果的断言,还包括到数据库断言自动化测试或性能测试中,某些场景需批量造数据,可能需要用到数据库造数据测试中,发现bug,需定位bug,可能需要查询到数据库进行定位。原创 2024-07-22 15:13:51 · 621 阅读 · 0 评论 -
Hypothesis, 一个很少人会用的Python测试库
除了使用内置的策略之外,我们还可以自定义策略来生成特定类型的测试数据。自定义策略可以根据需求生成符合特定条件的数据。原创 2024-07-22 13:57:42 · 619 阅读 · 0 评论 -
RDMA性能测试工具集preftest_README
preftest(Performance Test)是一组基于uverbs编写的。原创 2024-07-20 20:26:10 · 743 阅读 · 0 评论 -
如何使用 Xunit 框架进行单元测试和集成测试
测试驱动开发是一种高效的开发方法论,可以帮助开发者编写高质量的代码。Xunit 框架提供了一套强大的工具和功能,可以帮助开发者更好地实践测试驱动开发。通过使用 Xunit 框架进行单元测试和集成测试,我们可以更好地保证代码的质量和稳定性。行动吧,在路上总比一直观望的要好,未来的你肯定会感 谢现在拼搏的自己!如果想学习提升找不到资料,没人答疑解惑时,原创 2024-07-20 19:23:02 · 494 阅读 · 0 评论 -
Puppeteer vs Selenium的主要区别
Puppeteer是一个库和框架。该技术旨在提供高级应用程序编程接口,以通过 DevTools 协议控制无头 Chrome。支持多种浏览器和语言,而 Puppeteer 只专注于 Chrome、Chromium 和 Javascript。Puppeteer 是 Chrome 的远程控制库,而 Selenium 是完整的浏览器应用测试解决方案。Puppeteer 是由 Google 的一个团队编写的,他们对 Chrome 浏览器的内部拥有无与伦比的访问权限。原创 2024-07-21 20:00:00 · 939 阅读 · 0 评论 -
Python进行单元测试是怎么做的?
在我的日常工作中,我是一名专业程序员。我使用c++、c#和Javascript。我是一个开发团队的一员,他们使用单元测试来验证我们的代码是否按照它应该的方式工作。在本文中,我将通过讨论以下主题来研究如何使用Python创建单元测试。原创 2024-07-20 14:04:24 · 1006 阅读 · 0 评论 -
掌握5个关键点,搞定语音识别测试!
现在市面上的智能电子产品千千万,为了达到人们使用更加方便的目的,很多智能产品都开发了语音识别功能,用来语音唤醒进行交互;另外,各大公司也开发出来了各种智能语音机器人,比如小米公司的“小爱”,百度公司的“小度”,三星公司的“bixby”,苹果的“siri”等等。这些语音识别的功能,提高人们使用电子的产品的体验,但是作为一名测试员,给你一款语音识别产品,要怎么进行测试呢?前言接下来,我就以小米手机为例,给大家介绍小米手机语音识别如何测试。 小米语音识别功能如何进行测试? 要知道语音识别功能如何测试,我们先了原创 2024-07-19 20:42:56 · 713 阅读 · 0 评论 -
API接口的基础知识
API是应用程序编程接口(Application Programming Interface)的缩写,能够起到两个软件组件之间的连接器或中介的作用。此类接口往往通过一组明确的协议,来表示各种原始的请求和响应。API文档可以向开发人员展示请求和响应是如何形成的。简单而言,API能够允许两个应用程序彼此之间实现通信。无论我们在手机上查看天气,还是使用微信,或者在Facebook等应用上收发消息,都会频繁地使用到API。有关API的数据自2007年以来,API的使用量已增加了13倍。原创 2024-07-19 19:16:02 · 591 阅读 · 0 评论 -
登录功能应该重点测试哪些方面,你都了解全面了么?
登录功能的测试是最常见也是最重要的,同时也是最容易被忽略的,关于登录功能的测试用例总结如下:功能测试性能行动吧,在路上总比一直观望的要好,未来的你肯定会感 谢现在拼搏的自己!如果想学习提升找不到资料,没人答疑解惑时,,里面有各种软件测试+开发资料和技术可以一起交流学习哦。原创 2024-07-19 15:15:34 · 836 阅读 · 0 评论 -
软件测试人员在工作中如何运用Linux?
软件测试的小伙们就会明白会使用Linux是多么重要的一件事,工作时需要用到,面试时会被问到,简历中需要写到。对于软件测试人员来说,不需要你多么熟练使用Linux所有命令,也不需要你对Linux系统完全了解,你只需要学会一些常用的基本命令,这些命令足够支撑你去查看日志,定位bug,修改文件,搭建环境就完全OK了。对于Linux系统底层的实现不需要了解,甚至对于绝大多数的命令都不需要知道。我们是如何在我们的工作中使用Linux呢?原创 2024-07-19 14:09:08 · 888 阅读 · 0 评论 -
自动化测试工具Cucumber的简单介绍
随着测试的发展,测试自动化越来越成为人们的关注点。现在我们公司也在进行接口自动化的推广,在我看来接口自动化的价值就在于整体项目的回归,完成一些没法通过人力进行的测试,比如压力测试。为了解决测试开发人员和功能测试人员的同步问题,选择了Cucumber框架。Cucumber是一个能够理解用普通语言描述测试用例的行为驱动开发(BDD)的自动化测试工具。换句话说就是学习成本比较低,并且可以方便测试开发人员和功能测试人员协同合作、开发人员进行公共方法的封装、功能测试人员进行测试用例的编写。原创 2024-07-18 20:40:27 · 621 阅读 · 0 评论 -
为什么还有很多人坚持用JMeter做接口测试?
这个问题其实困扰了我很久,不是很理解很多团队选择JMeter进行接口测试。在最近的面试过程中,发现不论是中级岗,还是高级测试,90%的团队用的都是JMeter。它明明是个性能测试工具呀。不是说JMeter不能用来做接口测试,但是它的局限性明显了。这就好比汤匙明明是用来喝汤的,但是你就是要用来吃面,还美其名曰:可以同时搞定面和汤,不好吗?反正笔者是没想明白。JMeter上手简单,大部分操作都有对应的元件帮你完成,并且是开源的,社区接受度高。有多少用JMeter的人逛过JMeter社区?原创 2024-07-18 19:48:19 · 819 阅读 · 0 评论 -
Selenium如何隐藏浏览器页面?
掌握一门技术的最佳途径就是实践,好记性不如烂笔头,让咱们一起去实践学习吧!行动吧,在路上总比一直观望的要好,未来的你肯定会感 谢现在拼搏的自己!如果想学习提升找不到资料,没人答疑解惑时,原创 2024-07-18 15:18:00 · 319 阅读 · 0 评论 -
【软件测试】稳定性测试怎么做,这篇文章彻底讲透了~
目前稳定性测试采用的性能测试场景设计使用混合场景模式,基于产品业务模型或用户行为来定义场景,包括产品的典型业务、典型业务之间的组合关系、典型业务之间的比例等,这里不详细介绍,有兴趣欢迎联系。另外,关于稳定性测试场景的设计还有比较大的优化和提升空间,这个后面会畅谈下。原创 2024-07-18 14:04:51 · 799 阅读 · 0 评论 -
Jmeter+ant+jenkins接口自动化测试
一个完整的接口自动化测试平台需要支持接口的自动执行,自动生成测试报告,以及持续集成。Jmeter 支持接口的测试,Ant 支持自动构建,而 Jenkins 支持持续集成,所以三者组合在一起可以构成一个功能完善的接口自动化测试平台。原创 2024-07-17 20:36:02 · 901 阅读 · 0 评论 -
app自动化测试(Android)
Capability 是一组键值对的集合(比如:"platformName": "Android")。Capability 主要用于通知 Appium 服务端建立 Session 需要的信息。客户端使用特定语言生成 Capabilities,最终会以 JSON 对象的形式发送给 Appium 服务端。原创 2024-07-17 19:46:30 · 397 阅读 · 0 评论 -
自动化测试po模式是什么
全称:page object model 简称:POM/POPO模式最核心的思想是分层,实现松耦合!实现脚本重复使用,实现脚本易维护性!主要分三层:1.基础层BasePage:封装一些最基础的selenium的原生的api方法,元素定位,框架跳转等。2.PO层:元素定位、获得元素对象,页面动作3.测试用例层:业务逻辑,数据驱动!三者的关系:PO层继承继承层,测试用例层调用PO层!说到自动化框架,我相信很多人应该都听过这个词,但是不知其到底是个什么东西,为什么要用自动化框架。原创 2024-07-17 15:12:02 · 555 阅读 · 0 评论 -
【Postman】接口测试&压力测试
Postman是一款功能强大的网页调试与发送网页HTTP请求的Chrome插件。它提供功能强大的 Web API & HTTP 请求调试。1、环境变量和全局变量设置先设置好变量名及数值后,接下来就可以调用环境变量名,例如:key对应的values,填写{{address}},注意需要用双花括号引用。全局变量设置方法跟环境变量一样,点击后就会出现添加环境变量类似的页面,进行变量和值的设置。全局变量设置应用于整个(Collection)中的请求。原创 2024-07-17 14:11:05 · 1033 阅读 · 0 评论 -
RobotFramework+Eclispe环境安装篇
环境安装是学习任何一个新东西的第一步,这一步没走舒坦,那后面就没有心情走下去了。引用名句:工欲善其事必先利其器!!Robotframework:一款 自动化测试框架。Eclipse:一款编辑工具。可以编辑python代码、java代码等。环境安装一共分为四个步骤:1、python环境2、安装RobotFramework;3、JDK1.8 + Eclipse安装 + RED插件;4、配置eclipse是python2还是python3?原创 2024-07-16 20:38:11 · 563 阅读 · 0 评论 -
API自动化测试你以为很难?看完这篇文章直接打开你的任督二脉
应用程序编程接口(API)是充当软件组件接口的规范。大多数功能测试都涉及测试网页或表单等用户界面,而API测试涉及绕过用户界面并通过调用其API直接与服务程序通信。API测试允许测试绕过GUI并将请求直接发送到应用程序的后端或服务,并在验证响应内容以确保按预期运行的同时收到响应。上面的示例通常称为客户/服务器关系。客户端通过请求资源来发出请求,然后请求出去寻找将满足请求的服务器。服务器找到所需的资源,然后将响应发送回客户端。原创 2024-07-16 19:43:30 · 960 阅读 · 0 评论 -
Jmeter添加变量的四种方法
1、创建:添加->配置元件->用户定义的变量2、作用:当前的线程组内所有Sampler都可以引用变量,方便脚本更新;当参数发生变化时,只要在【用户定义的变量】中更新对应变量的参数即可,不需要逐个修改每个http中的参数3、变量定义:可以是具体的值,也可以是函数(函数可自动生成:选项->函数助手对话框)4、变量引用:Sample中引用变量的格式为${变量名}原创 2024-07-16 15:28:38 · 634 阅读 · 0 评论 -
软件测试开发环境、测试环境、准生产环境、生成环境
在一个项目开发到发布的整个过程中,会使用到很多个环境进行测试和运行项目。最基本的开发环境、测试环境、准生产环境、生成环境。原创 2024-07-16 13:59:47 · 558 阅读 · 0 评论 -
自动化测试中,该如何高效管理测试数据?
今晚在某个测试群,看到有人问了一个问题:把测试数据放配置文件读取和放文件通过函数调用读取有什么区别?当时我下意识的这么回答:数据量越大,配置文件越臃肿,放在专门的数据文件(比如excel,csv),方便针对性的维护。乍看没毛病,但回头和人讨论这个问题的时候,就认真思考了一下这个问题,下面是我的一些思考和讨论的一些结果,仅供参考。。。自动化测试过程中,现在大多都默认测试脚本与测试数据分离的设计,这样做的好处是:降低维护成本,迁移成本以及提高效率。因此测试数据放在哪里,如何管理,不能一概而论。原创 2024-07-15 20:27:13 · 498 阅读 · 0 评论 -
API自动化测试【postman生成报告】
PostMan生成测试报告有两种:1、控制台的模式2、HTML的测试报告 使用到一个工具newmanNode.js是前端的一个组件,主要可以使用它来开发异步的程序。1、安装node.js双击node.js进行安装,安装成功后在控制台输入node -v,检查是否安装成功。2、安装newman1)在控制台输入npm install -g newman --register=命令进行安装newman。2)安装成功后输入newman -v命令,查看newman版本号。原创 2024-07-15 19:56:24 · 814 阅读 · 0 评论 -
探究Cache缓存功能---【pytest】
pytest运行完用例之后会生成一个的缓存文件夹,用于记录用例的ids和上一次失败的用例。1、跑自动化时经常会出现这样一个情况,一轮自动化跑完后零星出现了几个失败测试用例,无法断定失败的原因,所以可能需要重新跑一下失败的测试用例去调试,那我们要做的是就去修改脚本把那几个失败的测试用例筛选出来然后重新跑一遍;2、但是在pytest测试框架因为有缓存功能,就不需要手动去查找上次失败的测试用例并筛选执行;3.、pytest测试框架中执行完所有的测试用例后会在当前目录下生成。原创 2024-07-15 15:21:18 · 293 阅读 · 0 评论 -
HttpRunner接口自动化测试框架
2018年python开发者大会上,了解到HttpRuuner开源自动化测试框架,采用YAML/JSON格式管理用例,能录制和转换生成用例功能,充分做到用例与测试代码分离,相比excel维护测试场景数据更加简洁。在此,利用业余时间研究这个框架去实现接口自动化测试。HttpRunner 是一款面向 HTTP(S) 协议的通用开源测试框架,只需编写维护一份YAML/JSON脚本,即可实现自动化测试、性能测试、线上监控、持续集成等多种测试需求。原创 2024-07-15 14:24:57 · 881 阅读 · 0 评论 -
Jenkins安装配置及插件安装使用
HTML Publisher Plugin 插件在新的Jenkins版本中会导致打开的网页中无法加载CSS以及无法点击按钮的情况,由于CSP导致,可在Jenkins控制台中执行:System.setProperty("hudson.model.DirectoryBrowserSupport.CSP", "")以解决此问题。其他由于CSP原因导致的html插件也可用此方法解决。原创 2024-07-13 20:25:12 · 694 阅读 · 0 评论 -
什么是鉴权?这些postman鉴权方式你又知道多少?
也就是,就是验证您是否有权限从服务器访问或操作相关数据。发送请求时,通常必须包含相应的检验参数以确保请求具有访问权限并返回所需数据。通俗的讲就是一个门禁,您想要进入室内,必须通过门禁验证身份,这就是鉴权,如打开一个网站必须要输入用户名和密码才可以登录进入,这种就是鉴权,还有一些业务需要登录以后才可以进行,因为需要token值,则就可以把token添加到鉴权中,这种也是鉴权。支持多种方式,如图从父级继承身份验证,是每个请求的默认选择。原创 2024-07-13 19:47:34 · 711 阅读 · 0 评论 -
【Python自动化测试】mock模块基本使用介绍
py3已将mock集成到unittest库中为的就是更好的进行单元测试简单理解,模拟接口返回参数通俗易懂,直接修改接口返回参数的值unittest.mock --- 模拟对象库 — Python 3.11.4 文档mock作用解决依赖问题,达到解耦作用当我们测试某个目标接口(模块)时,该接口依赖其他接口,当被依赖的接口未开发完成时,可以用mock模拟被依赖接口,完成目标接口的测试模拟复杂业务的接口。原创 2024-07-14 20:00:00 · 1748 阅读 · 0 评论 -
Unittest自动化测试框架vs Pytest自动化测试框架
以上就是unittest与pytest测试框架的区别,七大主要区别,这里已讲了两个区别的实例,其他五个有时间再补充,原创 2024-07-13 15:08:47 · 985 阅读 · 0 评论 -
jmeter获取mysql数据
这些资料,对于【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴上万个测试工程师们走过最艰难的路程,希望也能帮助到你!目标接口放入到循环控制器下,另外添加一个计数器,因为我们取的值是根据${mac_N}来取的,那么这个N可以通过计数器递增的方式获。Configuration中Variable Name与JDBC request的Variable Name相同。函数__V可以用于执行变量名表达式,并返回执行结果。URL: jdbc:mysql:// 数据库地址 /库名。原创 2024-07-13 14:03:28 · 350 阅读 · 0 评论 -
pytest固件fixture不同层级作用域如何调用
之前的一篇文章中讲解了fixture结合conftest.py文件如何简单实现自动化。实际fixture结合conftest.py文件的使用就是一种fixture的会话层级session的实战用法。下面开始fixture其他层级的详细讲解:1、首先在使用fixture之前我们得先了解他是干什么的,有什么作用?fixture的主要用途就是——通过装饰器的方式把所有测试方法进行有效组织的过程。2、scope:作用域(1)function:在函数之前和之后执行——每个函数或方法都会调用。原创 2024-07-12 19:59:44 · 229 阅读 · 0 评论 -
新一代最强开源UI自动化测试神器Playwright(Java版)四-跟踪查看器
在执行自动化测试用例时,偶尔会出现一些不稳定的bug,需要进行复现和还原,因此需要跟踪用例执行过程。Playwright Trace Viewer 是一个 GUI工具,可以看到整个脚本运行记录情况,报错代码执行情况,log,以及屏幕截图,以整个时间条的样式展示。如何记录跟踪可以使用BrowserContext.tracing()记录跟踪,我们来详细看下这个API,我们只需要在创建完上下文后调用以下代码即可。我们在要结束跟踪的地方,调用以下代码,默认会生成一个trace.zip的文件,我们将其保存在。原创 2024-07-12 18:00:00 · 160 阅读 · 0 评论 -
JavaScript+Selenium自动化测试
Selenium是一个浏览器自动化测试库,大多时候我们用它来测试web应用,Selenium 可以胜任任何在浏览器上自动化测试的任务。众所周知,Selenium可以支持多种编程语言(Java/ruby/python/C#/Go/JavaScipt),这篇博客就来介绍如何通过JavaScipt语言编写Selenium自动化测试脚本。在此之前,需要把环境搭建起来。之前有个问题一直弄不明白,JavaScipt脚本不是只打开浏览器才能执行么?如何运行Selenium呢?原创 2024-07-11 20:35:53 · 547 阅读 · 0 评论 -
【编写UI自动化测试集】Appium+Python+Unittest+HTMLRunner
下载需要自动化测试的App并安装到手机获取AppPackage和AppActivity方法一有源码的情况直接打开AndroidManifest.xml文件,文件会有package信息android.intent.action.MAIN决定应用程序最先启动的Activityandroid.intent.category.LAUNCHER决定应用程序是否显示在程序列表里方法二反编译apk,反编译后打开AndroidManifest.xml文件,文件会有package信息方法三。原创 2024-07-12 15:15:00 · 987 阅读 · 0 评论 -
测试用例之支付功能测试点整理【建议收藏】
一、梳理支付的业务流程如下 :点击支付---> 选择支付方式 ---> 确认金额---> 输入密码 ---> 成功支付完成这个流程测试,也就是完成了项目的冒烟测试!然后需要测试针对流程中的每个阶段和步骤,具体分析可能导致异常的测试点,所以我们按阶段和输入项来进行划分。原创 2024-07-11 19:37:04 · 601 阅读 · 0 评论 -
基于Python+Selenium+Unittest+PO设计模式
一、什么是PO设计模式(Page Object Model)1、Page Object是一种设计模式,它主要体现在对界面交互细节的封装上,使测试用例更专注于业务的操作,从而提高测试用例的可维护性。2、一般PO设计模式有三层第一层:对Selenium 进行二次封装,定义一个所有页面都继承的 BasePage ,封装 Selenium 基本方法 例如:元素定位,元素等待,导航页面 ,不需要全部封装,用到多少方法就封装多少方法。原创 2024-07-11 16:18:01 · 622 阅读 · 0 评论 -
一文详解 requests 库中 json 参数和 data 参数的用法
在当中,requests请求方法,当发送post/put/delete等带有请求体的请求时,有json和data2个参数可选。众所周知,http请求的格式主要有以下4种:那么针对以上的请求格式,都分别使用什么参数呢?接下来一一示例说明。第一种:application/json第一步:找到一个application/json请求的接口第二步:发起json格式的http请求 - 使用json参数且字典类型。原创 2024-07-10 20:27:37 · 691 阅读 · 0 评论