自动化测试
文章平均质量分 86
鱼鱼说测试
希望我的文章能帮助到更多在学习的朋友
展开
-
jmeter安装指南
最后,双击Jmeter中bin目录下面的jmeter.bat,即可打开Jmeter。下载完成后解压文件(不需要安装),需要配置jmeter环境变量。Binaries是可执行版,直接下载解压就可以使用。Source是源代码版,需要自己编译成可执行文件。编辑CLASSPATH变量(没有就新增),加上。也可以通过命令提示符,输入jmeter打开。需要安装Java8以上的版本。编辑path变量,加上。下载安装jmeter。原创 2024-07-22 13:39:18 · 518 阅读 · 0 评论 -
软件测试技术
软件危机:软件危机是指落后的软件生产方式无法满足迅速增长的计算机软件需求,从而导致软件开发与维护过程中出现一系列严重问题的现象。软件测试(IEEE1983):软件测试是使用人工和自动手段来运行或测试某个系统的过程,目的在于检验被测软件系统是否满足规定的需要,或是弄清楚预期结果与实际结果之间的差别。软件缺陷(Ron Patton在《软件测试》一书中提出):只有至少满足下列五个规则之一,才称发生了一个软件缺陷。软件未实现产品说明书要求的功能;软件出现了产品说明书指明不应该出现的错误;原创 2024-07-22 13:38:15 · 983 阅读 · 0 评论 -
自动化测试的神器:Selenium
在众多工具中,Selenium 可谓是备受欢迎的,作为 Web 应用程序自动化测试工具,它可以直接驱动浏览器,模拟真正的用户操作,帮助测试人员解决回归测试和多浏览器兼容性测试的问题,提升测试效率。通过这些开源项目的集成,可以轻松实现单元测试、集成测试、项目管理,项目的持续集成和交付;具备这些优势,Selenium 已经逐步成为 Web 自动化测试人员的首选,而且如果你打开招聘网站上对测试工程师的要求,就会发现,掌握 Selenium,已经慢慢成为各互联网公司测试招聘中的一项必备技能了。原创 2024-07-21 14:37:22 · 435 阅读 · 0 评论 -
认识接口测试
还是以麦当劳的汉堡为例,接口测试,其实就是要验证制作汉堡的过程是否正确。这里所说的“正确”其实有两方面的意思:一方面,是要验证输入了汉堡的原材料,经过制作汉堡的处理流程,最后交付给你的是一个汉堡;另外一方面,是要验证在输入的汉堡原材料不对或者不全的情况下,经过制作汉堡的处理流程后,不能给你交付一个汉堡。你一定要注意,这两方面的验证是都要进行的,对于一个测试来说,这两种流程都是正向流程。只有理解了这个思维,你才能把自己从客户思维里拉出来,形成测试思维。原创 2024-07-21 14:36:21 · 774 阅读 · 0 评论 -
分布式压测【locust】和【Jmeter】的使用
受限于单台机器的配置问题,我们在单台机器上达不到一个很高的压测并发数,那这个时候就需要一般通过局域网把不同测试计算机链接到一起,达到测试共享、分散操作、集中管理的目的。原创 2024-07-19 15:04:21 · 724 阅读 · 0 评论 -
做软件测试一定要求会写代码吗?
随着大数据、机器学习时代的到来,不少人有了“测试不需要懂代码,那我就试试”的想法。这就引发了一系列疑问:不懂代码可以做测试吗?测试人员到底需不需要懂代码?测试人员需要写代码吗?其实,在软件测试初级阶段,测试人员确实不需要懂代码。但如果想要追求月薪20k、30k,接口、自动化等是避免不了的,这就必然涉及到了代码层面。正如《mob编程指南》的作者Llewellyn Falco回应“QA工程师应该学习编码吗”这个问题时,曾说:“每个人都应该知道如何编写代码,这就像阅读和写作。原创 2024-07-18 13:49:11 · 990 阅读 · 0 评论 -
接口自动化测试面试题目详解
1、get和post区别是什么?答:POST和GET都是向服务器提交数据,并且都会从服务器获取数据。区别:(1)传送方式:get通过地址栏传输,post通过报文传输(2)传送长度:get参数有长度限制(受限于url长度),而post无限制。原创 2024-07-18 13:47:19 · 1874 阅读 · 0 评论 -
【conftest】和【fixtures】
这种场景setup、teardown无法实现,可以使用pytest fixture功能,在方法前加个@pytest.fixture装饰器,加了这个装饰器的方法可以以参数的形式传入到方法里面执行。如果每条测试用例都需要添加 fixture 功能,则需要在每一要用例方法里面传入这个fixture的名字,这里就可以在装饰器里面添加一个参数 autouse='true',它会自动应用到所有的测试方法中,只是这里没有办法把返回值给测试用例。俗话说的好百闻不如一见,下面展示一下,我们经常使用的场景;原创 2024-07-16 14:15:29 · 1010 阅读 · 0 评论 -
软件测试基础
软件危机:软件危机是指落后的软件生产方式无法满足迅速增长的计算机软件需求,从而导致软件开发与维护过程中出现一系列严重问题的现象。软件测试(IEEE1983):软件测试是使用人工和自动手段来运行或测试某个系统的过程,目的在于检验被测软件系统是否满足规定的需要,或是弄清楚预期结果与实际结果之间的差别。软件缺陷(Ron Patton在《软件测试》一书中提出):只有至少满足下列五个规则之一,才称发生了一个软件缺陷。软件未实现产品说明书要求的功能;软件出现了产品说明书指明不应该出现的错误;原创 2024-02-26 15:18:01 · 1049 阅读 · 0 评论 -
接口自动化测试用例如何设计
说到自动化测试,或者说接口自动化测试,多数人的第一反应是该用什么工具,比如:Python Requests、Java HttpClient、Apifox、MeterSphere、自研的自动化平台等。大家似乎更关注的是哪个工具更优秀,甚至出现“ 做平台的 > 写脚本的 > 用工具的 ”诸如此类的鄙视链,但却很少有人去关注接口测试用例的设计问题。在我看来,工具并没有高低贵贱之分,只能说哪个更适合,适合当前的业务以及适合当前的团队协作。原创 2024-02-25 19:16:32 · 2181 阅读 · 0 评论 -
使用Postman和JMeter进行signature签名
有些接口的请求会带上sign(签名)进行请求,各接口对sign的签名内容、方式可能不一样,但一般都是从接口的入参中选择部分内容组成一个字符串,然后再进行签名操作, 将结果赋值给sign;完整规范的接口文档都会有sign的算法描述。这里通过Postman的Pre-request Script以及JMeter的BeanShell前置处理器进行接口签名的处理。原创 2024-02-23 19:11:13 · 2277 阅读 · 0 评论 -
接口测试总结及其用例设计方法
第一部分:主要从问题出发,引入接口测试的相关内容并与前端测试进行简单对比,总结两者之前的区别与联系。但该部分只交代了怎么做和如何做?并没有解释为什么要做?第二部分:主要介绍为什么要做接口测试,并简单总结接口持续集成和接口质量评估相关内容。第一部分:后端接口都测试什么?怎么测的?后端接口测试一遍 ,前端也测试一遍,是不是重复测试了?原创 2024-02-20 19:52:22 · 799 阅读 · 0 评论 -
如果你正在学自动化测试,那么请你仔细看完这篇文章
我准备了一些自动化测试学习的资。原创 2024-01-16 16:04:28 · 1136 阅读 · 0 评论 -
压力测试+接口测试(工具jmeter)
jmeter是apache公司基于java开发的一款开源压力测试工具,体积小,功能全,使用方便,是一个比较轻量级的测试工具,使用起来非常简单。因 为jmeter是java开发的,所以运行的时候必须先要安装jdk才可以。jmeter是免安装的,拿到安装包之后直接解压就可以使用,同时它在 linux/windows/macos上都可以使用。jmeter可以做接口测试和压力测试。原创 2024-01-14 15:10:14 · 1718 阅读 · 0 评论 -
Appium 自动化测试
driver.find_element_by_id("com.wuba.zhuanzhuan:id/mg").send_keys(u"电动车")android.widget.TextView(这里使用的是className,也可以使用id,系统会依次。通过TouchAction对象,添加tap、move_to等操作,然后perform()执行,可以。5、Inspector:查找元素用的,windows无法使用,MAC可以使用,windows可。原创 2024-01-11 16:07:07 · 1539 阅读 · 0 评论 -
练习接口测试第一步骤
下面给的是接口测试的统一大步骤,其实就是让我们对接口测试有一个整体的概念,我们要做或学习接口测试,应该从那些地方着手,也就是告诉你,百度搜索了半天接口测试之后,我还是没有概念,那怎么办呢,那么下面这些步骤就是,你需要把接口测试拆开来了解的步骤;第十一步:自己写一个接口(可以先按照之前开发开发好的接口,照葫芦画瓢一个,那也要画,必须画,谁叫你是做测试的,知己知彼呀~),先简单,后复杂,主要倒腾清楚原理就行,反正你也不做开发(当然如果你想做开发,那去做开发吧,别在这浪费时间);本质就是增,删,改,查。原创 2024-01-08 13:25:01 · 998 阅读 · 0 评论 -
怎样正确做 Web 应用的压力测试?
提到压力测试,我们想到的是服务端压力测试,其实这是片面的,。原创 2024-01-05 19:32:31 · 985 阅读 · 0 评论 -
在软件测试过程中如何有效的开展接口自动化测试
接口自动化测试是指使用自动化测试工具和脚本对软件系统中的接口进行测试的过程。其目的是在软件开发过程中,通过对接口的自动化测试来提高测试效率和测试质量,减少人工测试的工作量和测试成本,并且能够快速发现和修复接口错误,确保软件系统的稳定性和可靠性。接口自动化测试可以有效地支持持续集成和持续交付,帮助团队快速交付高质量的软件产品。原创 2024-01-03 19:47:44 · 980 阅读 · 0 评论 -
自动化测试框架搭建全过程
前段时间写了一系列自动化测试相关的文章,当然更多的是方法和解决问题的思路角度去阐述我的一些观点。这篇文章来聊聊新手如何从零到一落地实践接口自动化测试。原创 2023-12-29 14:48:32 · 1017 阅读 · 0 评论 -
使用 GPT4V+AI Agent 做自动 UI 测试的探索
新的方案主要结合 Playwright,SoM视觉标记,GPT4Vison,GPT4,AutoGen来实现。主要的原理通过 Playwright进行浏览器操作,包括页面图像的获取、浏览器的各种操作,相当于‘‘手’’;进行SoM 视觉数据标记,因为 GPT4Vison 在进行页面原始识别时并不是很准确,参考微软的论文可以通过视觉标记的手段来辅助 GPT4V 识别,相当于“眼睛”。通过GPT4+AutoGen 将这些步骤串起来实现协调控制,相当于“大脑”。原创 2023-12-26 13:51:16 · 868 阅读 · 0 评论 -
回归测试?
回归测试是一个系统的质量控制过程,用于验证最近对软件的更改或更新是否无意中引入了新错误或对以前的功能方面产生了负面影响(比如你在家中安装了新的空调系统,发现虽然新的空调系统可以按预期工作,但是本来亮的等却不亮了)。其主要目标是确保旨在改进的修改不会破坏软件的既定性能和可靠性。回归测试是软件开发过程质量控制措施的一个重要方面。每次进行更改时,都会将其付诸实践,以确保它不会无意中导致任何功能或性能问题。那我们为什么需要回归测试呢?原创 2023-11-20 16:17:18 · 223 阅读 · 0 评论 -
Pytest自动化测试框架介绍
单元测试是指在软件开发当中,针对软件的最小单位(函数,方法)进行正确性的检查测试。原创 2023-11-17 19:05:53 · 336 阅读 · 0 评论 -
接口自动化测试面试题
前面总结了一篇关于接口测试的常规面试题,现在接口自动化测试用的比较多,也是被很多公司看好。那么想做接口自动化测试需要具备哪些能力呢?也就是面试的过程中,面试官会考哪些问题,知道你是不是真的做过接口自动化测试?总的来说问的比较多的就是以下几个问题:1.json和字典的区别?-对基础数据类型的考察2.测试的数据你放在哪?-数据与脚本分离3.参数化 - 数据驱动模式4.下个接口请求参数依赖上个接口的返回数据 - 参数关联5.依赖于登录的接口如何处理 -token和session的管理。原创 2023-11-16 17:12:21 · 462 阅读 · 0 评论 -
自动化测试框架搭建
③金字塔精髓之处在于,(上部依赖底部,底部不依赖于上部),举一个列子,(testcases中的用例,需要调用apis目录中的接口请求方法,而apis不会去主动调用testcases),所以。apis:接口请求层(这里封装的方法一般都是和项目有关系,列如:发送post请求,发送get请求,登录接口,注册接口,支付接口,加入购物车接口)或者配置日志输出渠道;该文件的具体配置,可百度学习。③如果涉及到自己的业务模块,就要自己去封装了,例如上面所说的,api文件,conftest文件,都是和业务相关的。原创 2023-11-14 20:36:53 · 203 阅读 · 0 评论 -
接口自动化测试
接口测试实施在多系统的平台架构下,有着极为高效的成本收益比(当然,单元测试收益更高,但实施单元测试的成本投入更大,技术要求更高,所以应该选择更适合自身的才是最好的方案)。目前国内的互联网行业,大环境来说,还处在一个快速发展,需要流程化标准化的时期,如何跟上不断变幻发展的节奏,除了不断了解接触新的东西,还需要不断学习,提升自身,以内在。未来,功能测试等非核心的测试工作,都将被外包。关于接口自动化测试,基本就是上述的内容,当然,选择适合自身实际情况的框架,落地实施,才是重点,行动起来,才能咸鱼翻身。原创 2023-11-13 20:43:56 · 205 阅读 · 0 评论 -
接口测试及常用接口测试工具
前端是什么呢,对于web端来说,咱们使用的网页,打开的网站,这都是前端,这些都是html、css写的;对于app端来说呢,它就是咱们用的app,android或者object-C(开发ios上的app)开发的,它的作用就是显示页面,让我们看到漂亮的页面,以及做一些简单的校验,比如说非空校验,咱们在页面上操作的时候,这些业务逻辑、功能,比如说你购物,发微博这些功能是由后端来实现的,后端去控制你购物的时候扣你的余额,发微博发到哪个账号下面,那前端和后端是怎么交互的呢,就是通过接口。原创 2023-11-10 19:59:06 · 482 阅读 · 0 评论 -
互联网金融P2P主业务场景自动化测试
还款通常要做成作业服务,当然测试环境还是得实现,不可能某个项目的期限是30天,要等到30天后才还款,所以还款的参数需要可控到还款日期(业务发生日期)和操作时间。我们通过多种方式发布这25个项目,如果是在ui上,建议使用selenium,将这25个项目信息录入到csv。“互联网+”企业,几乎每天都会碰到一些奇奇怪怪的bug,作为在互联网企业工作的测试人员,风险和压力都巨大。工具,该工具很牛叉是NIST研究的产物,使用的是IPOG算法(当然也有其他替代的工具,如。当然我们是理性的人,不是人傻时间多。原创 2023-11-09 19:27:14 · 296 阅读 · 0 评论 -
软件测试入门之接口测试
前端是什么呢,对于web端来说,咱们使用的网页,打开的网站,这都是前端,这些都是html、css写的;对于app端来说呢,它就是咱们用的app,android或者object-C(开发ios上的app)开发的,它的作用就是显示页面,让我们看到漂亮的页面,以及做一些简单的校验,比如说非空校验,咱们在页面上操作的时候,这些业务逻辑、功能,比如说你购物,发微博这些功能是由后端来实现的,后端去控制你购物的时候扣你的余额,发微博发到哪个账号下面,那前端和后端是怎么交互的呢,就是通过接口。原创 2023-11-07 20:27:58 · 586 阅读 · 1 评论 -
Newman+Jenkins实现接口自动化测试
如下,我添加了一个autotesting文件夹,分别放了接口文件postman_collection.json和环境变量文件postman_environment.json。说明:-e指定了环境变量文件,-r指定输出格式,这里我指定了命令行直接输出,和生成html,最后跟的就是我们collection文件啦。因为依赖我的接口依赖环境变量{{kehuo}},还需要导出环境变量,我本地生成文件名为。可以看到,我们的脚本已经启动了,再往后看,有3个接口测试失败了,还给出了原因。html打开是这样的。原创 2023-11-06 19:26:47 · 719 阅读 · 0 评论 -
软件测试的目的---防范项目风险
另外,测试的目的,是修改问题,在软件开发过程中,如果要修改问题,首先要定位,其次判断问题发生的条件,如果你的测试用例(一般来说是几个或者几十个),可以让开发人员发现问题发生的规律,那么他们可以方便的发现问题发生的规律,对开发人的定位工作会起到很大的帮助做用,这样的测试用例对提高产品质量的作用是很大的。再说降低风险造成的危害,从纯技术角度来说,软件测试发现的问题,其危害程度是不一样的,比如死机问题,应该是最严重的问题了,其次是功能无法实现,发现这些问题的价值往往是很大的。首先来说风险(技术风险)。原创 2023-11-05 15:12:41 · 207 阅读 · 0 评论 -
一些很实用的技巧提高自动化测试覆盖率
自动化测试一直是测试人员的核心技能,也是测试的重要手段之一。尤其是在今年所谓的互联网寒冬的行情下,各大企业对测试人员的技术水平要求的很高,而测试人员的技术水平主要集中在三大自动化测试领域,再加测试辅助脚本的编写,测试工具的开发,测试平台的开发等。而普通的测试人员想快速提升技术,自动化测试必是无可挑剔的选择。但是由于业界一直存在着对自动化测试的误解,严重影响了自动化测试的发展,也影响了不少同学学习自动化测试的信心。原创 2023-11-03 16:28:03 · 209 阅读 · 0 评论 -
性能测试中TPS上不去的几种原因浅析
从常见的应用服务器来说,比如Tomcat,因为java的的堆栈内存是动态分配,具体的回收机制是基于算法,如果新生代的Eden和Survivor区频繁的进行Minor GC,老年代的full GC也回收较频繁,那么对TPS。在压力测试中,有时候要模拟大量的用户请求,如果单位时间内传递的数据包过大,超过了带宽的传输能力,那么就会造成网络资源竞争,间接导致服务端接收到的请求数达不到服务端的处理能力上限。串行、并行、长连接、管道连接等,不同的连接情况,也间接的会对TPS造成影响。原创 2023-11-02 16:47:05 · 238 阅读 · 0 评论 -
unittest与pytest的区别
pytest更加方便快捷,用例格式简单,可以执行unittest风格的测试用例,无须修改unittest用例的任何代码,有较好的兼容性。pytest插件丰富,比如flask插件,可用于用例出错重跑,还有xdist插件,可用于设备并行执行,效率更高。参数化应用场景,一个场景的用例会用到多条数据来进行验证,比如登录功能会用到正确的用户名、密码登录,错误的用户名、正确的密码,正确的用户名、错误的密码等等来进行测试,这时就可以用到框架中的参数化,来便捷的完成测试。参数名:用来接收每一项数据,并作为测试用例的参数。原创 2023-10-31 19:25:43 · 442 阅读 · 0 评论 -
实现接口自动化测试
整个项目完成之后,对pytest测试框架有了更深的理解。同时,pytest也可以使用Jenkins将自动化测试加入到持续集成中,设置定时任务构建或者条件触发构建等,这样可以有效的提高测试效率,也节省了人力成本。当然,不仅仅只有这一种实现方式,目前的实现方式还是有很多不足的地方,后面会继续进行完善和改进。如果你有什么好的建议和方法,欢迎一起进行沟通和交流。Python接口自动化测试零基础入门到精通(2023最新版)原创 2023-10-30 19:10:33 · 291 阅读 · 0 评论 -
进行商城的测试用例设计思路是什么?
1. 功能测试:测试商城的基本功能是否正常工作,包括用户注册、登录、浏览商品、搜索商品、添加商品到购物车、下单、支付等。3. 用户体验测试:测试商城的用户界面是否友好、易用,包括页面布局、导航、搜索功能、商品展示、购物车操作等。2. 数据验证测试:验证商城中的数据是否正确、完整和一致,包括商品信息、价格、库存、用户信息等。4. 安全性测试:测试商城的安全性,包括用户信息的保护、支付安全性、防止潜在的漏洞和攻击等。5. 性能测试:测试商城在高并发情况下的性能表现,包括页面加载速度、响应时间、并发用户数等。原创 2023-10-29 15:50:29 · 468 阅读 · 0 评论 -
接口自动化测试操作流程
服务端接口和客户端之间通常是通过HTTP请求来传递数据,在发送请求的时候,客户端会携带各种不同的参数,此时服务端会根据不同的参数进行不同的处理,所以异常处理主要是针对请求中的参数情况:比如参数增加和缺省、参数的数据类型错误,参数携带错误的值、参数为空等等,这需要我们根据接口文档中各种不同的参数去构造不同的参数异常,检查服务端的响应情况。当接口返回的数据时动态的,比如一个网站文章的最新评论----还是测试环境问题,搭建一个专属的测试环境,不产生新的数据,一样的可以测试接口—相当于动态数据静态化。原创 2023-10-27 20:22:14 · 139 阅读 · 0 评论 -
对自动化测试的一些展望与理解
在我开展自动化测试之前,其实该项目以前的测试人员也已经写了很多的接口测试用例,但是大多数用例处于“半瘫痪”状态,在CI上无人维护(听说起初是有人维护的,但是后来用例多了,维护的人每次花很长时间去定位问题,结果却发现大部分的问题都是环境问题导致,花了半天时间定位却没什么收益,久而久之便不想去维护)。这里再提一下UI自动化。这里必须要指出的是,我跟的项目其实是一个对系统稳定性的要求要高于新功能的引入的一个后台项目,所以它的核心功能是比较固定的,其实大多数后台项目也是类似的,核心功能聚合、对系统的稳定性要求高。原创 2023-10-26 15:45:40 · 198 阅读 · 0 评论 -
JMeter + Ant + Jenkins持续集成-接口自动化测试
Java -version检查,如下就代表安装成功了,环境变量设置就去搜索了,网上很多。查看版本、环境变量是否正确。原创 2023-10-25 15:27:10 · 422 阅读 · 0 评论 -
python自动化测试工具selenium
selenium是网页应用中最流行的自动化测试工具,可以用来做自动化测试或者浏览器爬虫等。官网地址为:Selenium。免费开源轻量级,不同语言只需要一个体积很小的依赖包支持多种系统,包括Windows,Mac,Linux支持多种浏览器,包括Chrome,FireFox,IE,safari,opera等支持多语言,包括Java,C,python,c#等主流语言支持分布式测试用例执行。原创 2023-10-23 21:19:39 · 612 阅读 · 0 评论 -
Jmeter测试关联接口
Jmeter用于接口测试时,后一个接口经常需要用到前一次接口返回的结果,本文主要介绍jmeter通过正则表达式提取器来实现接口关联的方式,可供参考。4)添加获取城市天气请求,添加察看结果树,使用${citycode}替换101190101-->使用${xx}引用上述正则提取的参数。2)运行后,察看结果树中,在响应数据中复制目标参数及前后的字符,尽量保证复制的字符串具有唯一性。有如下两个接口,通过正则表达式提取器,将第一个接口的城市代码,作为第二个请求的参数传入。提取的参数名称,自定义,后续请求引用时使用。原创 2023-10-20 17:07:15 · 185 阅读 · 0 评论