自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(1195)
  • 收藏
  • 关注

原创 自学软件测试怎么学?【史上最详细学习路线】(附全套资料)

对于想入行学软件测试的新手来说,首先需要一个高效的学习线路图,还要有全套的学习资料,两者结合才能有最好的学习效果。授人以鱼不如授人以渔,所以今天我也想把我的经验和经历分享给大家,史上最详细的软件测试学习路径和最全的学习资料包全部奉上,按照这个路线学习,大神指日可待!软件测试工程师的工作要求:文档评审,用例评审,需求评审;测试用例设计,自动化测试脚本开发,测试架构设计、写作测试文档(测试计划、测试方案、测试用例等);执行测试,发现软件缺陷,提交缺陷报告,并确认缺陷最终得到了修正;通过测

2022-03-08 22:25:14 14439 3

原创 Python实现获取网页内容及自动填表单与登录功能

这篇文章主要为大家详细介绍了如何利用Python实现模拟浏览器启动,获取网页内容、自动填表单、自动登录、自动过验证码等功能,需要的可以参考一下库源码知识点补充食用前准备python 3.10.10 #二维码的库需要。

2024-09-30 14:36:11 657

原创 用例设计规范示例

规范中应当明确“用例编号”、“用例标题”、“操作步骤描述”、“预期输出”等为必填项,其中,“用例编号”按照”用例编号命名规范“生成(使用管理工具的可以自动生成);尽可能将非功能模块的测试,比如易用性测试、健壮性测试、界面测试等,包含在功能测试中,这样做不但可以减少测试次数,更能提高测试效率。必须清楚,无歧义,不能出现“或”、“如果”、“多个”、“等等”等不确定的词,以避免不同的执行人员对用例有不同的理解。用例具有规范的、统一的、唯一的标识,有助于实现对用例的规范化管理。下面是一组用例设计规范的示例。

2024-09-30 14:34:59 307

原创 Java线上CPU内存冲高问题排查步骤

如果是Full GC次数过多,那么通过 jstack得到的线程信息会是类似于VM Thread之类的线程,而如果是代码中有比较耗时的计算,那么我们得到的就是一个线程的具体堆栈信息。首先找到该接口,通过压测工具不断加大访问力度,如果说该接口中有某个位置是比较耗时的,由于我们的访问的频率非常高,那么大多数的线程最终都将阻塞于该阻塞点。这是比较麻烦的一种情况,因为一般来说,其消耗的CPU不多,而且占用的内存也不高,也就是说,我们通过上述两种方式进行排查是无法解决这种问题的。如果有死锁,会直接提示。

2024-09-30 14:29:26 947

原创 顶级Web应用程序测试工具列表

通过web应用程序测试,在web应用程序公开发布之前,会发现网站功能、安全性、可访问性、可用性、兼容性和性能等问题。今天主要列举Web应用程序的工具。今天的列表仅仅提供索引功能,具体要使用的同学,可以自行搜索哦。Web功能,GUI和回归测试工具。Link Manager测试工具。Web功能/回归测试工具。负载,压力和性能测试工具。负载、压力和性能测试工具。W3C CSS验证器。

2024-09-29 14:18:56 373

原创 使用Python实现对word的批量操作

Python在平时写写小工具真是方便快捷,大法好。以下所有代码都是找了好多网上的大佬分享的代码按照自己的需求改的。调用的库为Python-docx、、PyPDF2、xlwings(操作excel)。因为公司的任务要对上千个word文件进行批量操作,手工操作太累了,于是加班加点赶出来了一个自动化脚本,虽然还有很多要优化的地方,但已经可以稳定运行了,下面记录一下脚本功能。

2024-09-29 14:16:35 772

原创 常见的性能测试缺陷

所有的程序都是运行在内存中的,其作用是用于暂时存放CPU中的运算数据,以及与外部存储器交换的数据,内存不足会限制程序的数据处理速度,因此这也是很重要的一项性能关注指标;:对同一张表来说,1W条数据和1000W条数据,对其进行操作时的性能表现也是不同的,因此在性能测试时对于数据的正确性可用性,以及数据量也是需要重点关注的;:现在很多的系统都进行了服务集群,随之而来的就是负载均衡策略的实现,如果负载均衡不够“均衡”,在大数量的冲击下,容易导致某些服务的异常或者挂起;

2024-09-29 14:11:41 674

原创 最详细的接口测试用例设计教程

一般接口对于非必需参数都不会做非正常性传值的判断,所以要测试合法的参数值,接口返回的内容是否正确。带默认值的参数都不填写、不传参,必填参数都填写正确且存在的“常规”值,其它不填写,设计正向用例。覆盖所有的必选参数,组合可选参数,参数有、无或为null,参数的顺序、个数、类型。针对每个参数(假设n个),设计n条每个参数的参数值都超出数据范围最大值的逆向用例。传非法的字符,特殊的字符,空值,超过边界的参数是否报错?如常见的需要登陆Token。对于接口的参数,接口文档一般都会说明哪些是必需的,哪些是非必需的。

2024-09-28 14:58:36 966

原创 一支签字笔应该如何测试

然而,我们也不能陷入一个为了找错误而去找错误的尴尬境地,要分优先等级的去测试,不要太为了用户几乎不会用到的可有可无的地方,而忽略了用户真正在意的东西,软件测试的最终目的应该是使得产品达到预期的目的。大白如我,后来才知道,这是一个软件测试的面试老题目了,当时稀里糊涂答了一通,后来才回味过来,其实HR是想看我的测试思想之类的的,虽然过了,但是还是想重新回想并补充。面试的姐姐提示了边界测试,我又补充了高温对笔壳的影响和压力的测试,包括握笔的压力对笔壳的影响和笔尖的压力对出墨的影响。(1)先搞清楚我们的对象!

2024-09-28 14:43:37 753

原创 非功能测试类型

上面的列表并不完整,因为有超过100种类型的测试和计数。不用担心,随着你在测试行业的年龄增长,你会学会的。非功能测试被定义为一种检查软件应用程序的非功能方面(性能、可用性、可靠性等)的软件测试。它的设计目的是根据功能测试从未处理过的非功能参数测试系统的就绪性。非功能测试应该是可测量的,所以不存在主观的描述,比如好、更好、最好等等。它指的是软件系统的一部分,可以转换为在另一个应用程序中使用。

2024-09-27 14:26:18 880

原创 pytest学习和使用 - Pytest用例执行结果有哪几种状态?

【阅读目录】1 用例执行状态2 xfail示例3 failed示例4 error示例。

2024-09-27 14:20:53 665

原创 浅谈Django之单元测试

是用来对一个模块、一个函数或者一个类来进行正确性检验的测试工作。如果测试通过则说明我们这个函数或功能能够正常工作,如果失败要么不正确,要么函数有bug需要修复。# 测试开始前的工作# 测试结束的收尾工作# 自己定义的测试方法,必须以"test_"开头输出:Django的单元测试实际是基于的模块,“setUp”方法是测试开始前的工作,“tearDown”方法是测试结束的收尾动作,这些方法名都是固定的,不允许随意修改,里面内容你也可以不写直接“pass”。

2024-09-27 14:18:02 914

原创 基于Python自动化测试框架之接口测试

没错,因为前面我们写了config.ini文件,所有的数据库配置信息都在这个文件内哦,是不是感觉很方便呢,以后就算变更数据库了,也只要修改config.ini文件的内容就可以了,结合前面测试用例的管理(excel文件),sql语句的存放(xml文件),还有接下来我们要说的,businessCommon.py和存放具体case的文件夹,那么我们就已经将数据和业务分开啦,哈哈哈,想想以后修改测试用例内容,sql语句神马的工作,再也不用每个case都修改,只要改几个固定的文件,是不是顿时开心了呢?

2024-09-27 14:15:39 1307

原创 【测试开发】python系列教程:抽象类

抽象类与普通类的不同之处在于:抽象类中只能有抽象方法(没有实现功能),该类不能被实例化,只能被继承,且子类必须实现抽象方法。可以看到,这个抽象类是不能被实例化的,那么我们去继承下,看下继承后实现的类是否可以被使用。可以看到,抽象类的是不可以被直接调用的,继承抽象类实现的方法,可以被调用。抽象类是一个特殊的类,它的特殊之处在于只能被继承,不能被实例化。我们调用写这个抽象类,看是否可以初始化。

2024-09-27 14:10:31 894

原创 使用Jmeter进行性能测试的这套步骤,涨薪2次,升职一次

我们的平台为全国某行业监控平台,经过3轮功能测试、接口测试后,98%的问题已经关闭,决定对省平台向全国平台上传数据的接口进行性能测试。由于我是刚进入此项目组不久,只参与了其中3个模块的功能测试,一遍接口回归测试,所以在写性能测试方案时,首先将梳理了一遍,重点对将要性能测试的接口的文档再次仔细看一遍,在导师的引导下,对各个接口响应的功能更加了解,收获最大是,性能测试应该对应各接口的实际功能,设计合适的用例,如:针对某一对象,有两种数据上传,一种是实时数据,一种是历史数据。

2024-09-26 14:44:20 389

原创 理解这八大优势,才算精通单元测试

单元测试是针对代码单元的独立测试,核心是“独立”,优势来源也是这种独立性,而所面临的不足也正是因为其独立性:既然是“独立”,就难以测试与其他代码和依赖环境的相互关系。单元测试的优势,正是系统测试的不足,单元测试的不足,又恰是系统测试的优势。不能将单元测试当做解决所有问题的万金油,而需理解其优势与不足,扬长避短,与系统测试相辅相成,实现测试的最大效益。由于单元测试是由在集成之前测试单个代码的开发人员执行的,这样可以很早地发现问题,并在不影响其他代码片段的情况下解决问题。单元测试可以提高代码的质量。

2024-09-26 14:40:42 1007

原创 一文总结单元测试什么时候写&怎么写

单元测试编写的目的,是面向计算机特性的,基于函数的in-out,所以单元测试的好帮手就是断言,通过不断的构造输出并对结果进行断言,我们就可以针对一个对象以及它的函数,构建出充足的用例去包裹它,以期望它的任意行为满足我们的需要。经过以上3种情况的单元测试编写,我们的单元测试会覆盖的场景就会越来越多,我们的代码也会越来越健壮,久而久之,我们对于代码的修改可以纯粹依赖单元测试,而减少更多逻辑上复杂的思考。当对应的功能修改了,并且不可能满足原有的测试,此时才应当去修改原有的测试,并应当加注释以说明。

2024-09-26 14:37:23 448

原创 selenium UI使用小技巧集合

在WebDriver中处理JavaScript所生成的alert、confirm以及prompt十分简单,具体做法是使用 switch_to.alert 方法定位到 alert/confirm/prompt,然后使用text/accept/dismiss/ send_keys等方法进行操作。Keys()类提供了键盘上几乎所有按键的方法。前面了解到, send_keys()方法可以用来模拟键盘输入, 除此 之外, 我们还可以用它来输入键盘上的按键, 甚至是组合键, 如 Ctrl+A、 Ctrl+C 等。

2024-09-26 14:34:47 637

原创 系统测试与集成测试有哪些类型和优势?

它检查多个模块之间的兼容性,因为它们在逻辑上是集成的,并作为一个整体进行测试。一旦所有的子系统或模块整合成一个应用程序,测试人员就会进行系统测试,以检查潜在的功能和非功能的异常情况。它是一种黑盒测试技术。在自下而上的方法中,与自上而下的方法中的顶级模块相比,基础模块得到了优先考虑。主要的是,FRS不需要很深的技术信息,对所有级别的利益相关者都是有用的。一个好的系统测试的例子是检查不同的用户输入是否可以在整个应用程序中创建所需的输出。黑盒测试的一种类型,状态转换分析了被测试的应用程序在输入不同时输出的变化。

2024-09-26 14:32:53 795

原创 两年外包生涯做完,感觉自己废了一半....

先说一下自己的情况。大专生,19年通过校招进入湖南某软件公司,干了接近2年的点点点,今年年上旬,感觉自己不能够在这样下去了,长时间呆在一个舒适的环境会让一个人堕落!而我已经在一个企业干了五年的功能测试,已经让我变得不思进取,谈了1年的女朋友也因为我的心态和工资和我分手了。于是,我决定要改变现状,冲击大厂。刚开始准备时,自己都蒙了,五年的功能测试让我的技术没有一丝的进步,提升的只有我的年龄…

2024-09-25 14:45:34 650

原创 软件测试之Android测试基础

用户在不同的级别上与你的应用产生交互。从按下按钮到将信息下载到他们的设备上,因此,你应该在迭代开发应用程序时测试各种用例和交互。

2024-09-25 14:42:27 1067

原创 经验分享:软件测试之定制unittest测试报告

基于HTMLTestRunner的定制版本非常多,我这几天手动定制了一款,除了有不错的颜值,还提供了一些非常实用的功能。如果你运行的是selenium/appium,那么当用例运行失败将会自动截图。报告中不需要实现任何截图的操作,会自动帮你生成截图并嵌入到HTML报告中。rerun :重跑次数,设置为2,会在用例失败/错误后进行两次重试。如果你想用例运行完成之后发邮件,只需要填写邮箱信息即可。

2024-09-25 14:38:09 609

原创 一个测试老兵眼里的测试用例

你认为测试用例的作用是什么?你怎么看待测试用例评审的必要性?编写测试用例的方法有哪些?你们用什么工具编写测试用例?······身为一名,尤其是作为初中级工程师的你,想必在你过去求职的过程中,如上关于测试用例的问题,或多或少都被问到过。还记得当初你是怎么回答的么?你觉得面试官对你的回答满意么?作为一名有着几年的测试老兵,其中我最喜欢问的是第一项“你认为测试用例的作用是什么?”就是想考察你对基础的理解和认知。我们一起来看看下面这些回答:对于有点测试基础的同学都能看出来,以上回答都没错。

2024-09-25 14:27:57 926

原创 Jmeter 压测-内存溢出案例

①给项目的Tomcat的catalina.sh添加配置参数。②通过Jvisualvm图形化。②Jvisualvm图像监控。杀死项目,重启Tomcat。①Jstat命令监控JVM。②重启Tomcat项目。①查看JVM配置信息。

2024-09-25 14:26:29 264

原创 大厂测试面试题含答案

TCP 是面向连接的、可靠的流协议,UDP 是面向报文的不可靠数据报协议。TCP 适用于对数据传输质量有较高要求的应用,如 HTTP、HTTPS、FTP 等传输文件的协议以及 POP、SMTP 等邮件传输的协议。在计算机编程中,可变类和不可变类是两种不同的类别。例如,Python 中的列表是可变的,而元组是不可变的。模拟404:在测试环境中,可以修改请求的URL地址,将其修改为不存在的地址,从而模拟404错误。四次挥手过程中,双方都需要确认彼此的关闭请求和确认请求,以确保数据的完整传输和连接的正常关闭。

2024-09-24 14:12:57 808

原创 探索Selenium中的Page Factory及其使用方法,优化测试代码

是Selenium中用于实现页面对象模型的工厂类。它是针对的POM的优化版本,它遵循处理对象存储库和测试用例的分离技术。它是一个从Web驱动程序类扩展的类。它允许注解构建一组Web元素。这使得创建初始页面对象的速度更快。让我们看一个使用中的POM用Java编写的示例代码块。它显示了为Web页面创建的类。注解FindBy存在于类中,它用于定位网页上的元素。为了进一步理解页面工厂,我们来看下它与页面对象模型有什么不同。当执行自动化测试时,考虑在Selenium中实现。请记住在中使用。

2024-09-24 14:11:54 665

原创 让测试人头疼的这几件“小事”

之前很多文章都介绍到了,我们公司的产品技术实现架构是微服务,所以不同的业务模块分别有不同的测试团队负责,这也导致上下游质量同学只对负责的业务比较熟悉,对于下游的业务不熟悉的问题。对于测试而言,测试之旅充满了有趣的挑战和宝贵的经验教训,良好的测试人懂得通过项目不断总结经验与汲取教训。我最终比较了用例报错前后的报文差异,发现报错的用例中,上游调用下游的接口时候,少传了一个字段,导致调用报错。测试有时候是无聊的。我工作中遇到的一个情况是,上游的同学说他们的用例在x日突然都挂了,然后拿来让我定位问题。

2024-09-24 14:02:22 655

原创 pytest利用request fixture实现个性化测试需求详解

这篇文章主要为大家详细介绍了pytest如何利用request fixture实现个性化测试需求,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起了解一下在深入理解 pytest-repeat 插件的工作原理这篇文章中,我们看到源码中有这样一段运行运行看到参数为request,我们知道,所以这里request一定也是fixture。那它到底怎么用呢?这篇文章将详细介绍,并通过实战项目加深理解。

2024-09-24 13:59:39 881

原创 一文搞定--web 自动化之文件上传

在做web自动化时,我们经常会碰到一些场景需要进行文件上传,而文件上传打开的窗口属于windows控件,通过Selenium是操作不了的,此篇文章给大家介绍几种实现方法。

2024-09-24 13:54:36 510

原创 如何分析测试任务及需求(附分析流程)

根据业务流程中的判断条件,列出所有的备选流程,明确业务流程的起点和终点,可通过路径覆盖的方式进行分析。备选流程包括非主要流程的正常流程,及异常处理流程。根据测试项目的不同需求,有大致几类测试项目类型:商户/平台功能测试、支付方式接入测试、架构调整类测试、后台优化测试、性能测试、基本功能自动化测试。在架构师完成架构设计后,测试负责人和架构师、技术经理确认功能修改的涉及范围,从实际代码修改的层面上出发帮助减少遗漏的检查项。没有产品接入的项目,需要要求架构师、技术经理给出功能要求,结合测试分析给出测试需求。

2024-09-23 14:16:52 359

原创 断点测试怎么做,一文教你用Charles 工具做好接口测试!

在测试工作过程中,我们经常会在程序的某一行或者某一环节设置断点,在程序请求的过程中,修改断点处的参数、请求或者响应,借此定位问题,这就是所谓的断点测试。每个接口添加断点之后,默认是 requests 消息和 response 消息都会触发这个断点的。这样,在 proxy 的断点设置里就会添加这个接口的配置;编辑完请求消息之后,点击“Execute”之后,就会将编辑修改过的请求消息发送到后端;

2024-09-23 14:11:11 269

原创 allure结合python生成测试报告教程

Allure是一款轻量级并且非常灵活的开源测试报告框架。它支持绝大多数测试框架, 例如TestNG、Pytest、JUint等。它简单易用,易于集成。allure如何生成测试报告运行的时候加上 pytest.main ( ‘–alluredir', ‘report/result', ‘TestDemo01.py']) 会在当前文件夹创建一个report文件夹,在report文件夹下创建result生成html测试报告因为生成的测试报告是json的,不好看,所有用这个命令生成一个好看的HTML测试报告。

2024-09-23 14:09:22 658

原创 这些用例设计题,你在面试时遇到过吗?

18.是否可以点击刚加好友的朋友圈;19.陌生人可见10条动态的朋友圈是否可以评论;1.点击评论按钮,是否可以成功评论,并显示评论内容和微信昵称;2.评论成功后是否可以删除评论;3.没有网络情况下是否可以评论;4.是否按照评论的进行排序;5.评论时,是否支持表情,文字,颜文字形式等;6.评论时,是否支持粘贴内容进行评论;7.是否有评论人数限制;8.是否可以多次评论/删除评论;9.评论内容是否有长度限制;10.朋友圈是否可以看到共同好友的评论;

2024-09-23 14:03:55 1055

原创 LoadRunner压力测试方法

要求系统能够承受1000 人同时提交数据,在LoadRunner 中可以通过在提交数据操作前面加入集合点, 这样当虚拟用户运行到提交数据的集合点时,LoadRunner 就会检查同时有多少用户运行到集合点,如果不到1000 人,LoadRunner 就会命令已经到集合点的用户在此等待, 当在集合点等待的用户达到1000 人时,LoadRunner 命令1000 人同时去提交数据, 从而达到测试计划中的需求。当多个虚拟用户运行脚本时, 都会提交相同的记录, 这样不符合实际的运行情况, 而且有可能引起冲突。

2024-09-23 14:01:00 1091

原创 入门Web自动化测试之元素定位进阶技巧

上几期中介绍到的常用元素定位方式这里就不在展开篇幅进行赘述了,其实在我们日常的web自动化测试的脚本设计过程中,常常会碰到因为代码规范或开发同学个人的习惯,导致web页面中的元素某些属性值重复或缺失的现象出现,此时再用ID、CLASSNAME等常用的元素定位方法往往就会定位不到你想要的元素。首先 // 是从根节点开始查找,div则是查找下面的所有div元素,然后在所有的div元素中搜索id属性值为ui_automation_t的元素,最后在匹配到的结果中定位下面的所有p元素。

2024-09-21 15:12:42 727

原创 超细致的性能测试流程,你get了吗?

参照用户使用习惯设计负载场景,比如哪些业务的测试脚本一起运行,哪些业务有先后顺序,运行多少并发用户等。对于决策层(报告相关干系人)来说关心的是结果,决策层迫切的想知道Yes or No,系统能不能上线,如果不能上线,有什么问题,怎么能够尽快解决?(3)明确下“需求分析-指标分析”中相关业务功能所需基础数据及数据量问题,因为那块需求分析时可能只是大致估算下,评估指标是否合理,需要认真再分析下。:业务流程,系统在某个时间段内运行的业务种类及其业务占比,即哪个业务在什么时段在运行,业务量是多少?

2024-09-21 15:08:56 954

原创 浅谈Jmeter性能测试流程

是用户对应用性能满意度的量化数值,他提供了一个统一的测量和用户体验的方法, 吧最终用户的体验和应用性能统一度量,下图中0表示没有满意度,1表示所有用户均满意,是开发团队追求的目标。以登录业务为例子,本次测试的目的在于验证平台是否能支持100个用户的并发登录,无需考虑持续时间,根据对应的场景测试用例,设置线程组数据,脚本可以通用(如果有必要可以去掉思考时间、添加集合点等)。结合聚合报告,分析登录业务的每个请求的平均响应时间为:15s,是小于5s的,故该项指标测试不通过;

2024-09-21 15:02:16 1163

原创 百度测开初面面试题分享

集合类是可以往里面保存多个对象的类,存放的是对象,不同的集合类有不同的功能和特点,适合不同的场合,用以解决一些实际问题。其中,TRACE级别的日志记录最详细的信息,DEBUG级别的日志记录是最详细的调试信息,INFO级别的日志记录是一般的运行信息,WARN级别的日志记录是警告信息,ERROR级别的日志记录是错误信息。它们可以是物理的,也可以是虚拟的,根据不同的需求和规模选择适当的服务器架构和配置。数据库服务器:数据库服务器是用于存储和管理数据库的服务器,允许客户端应用程序访问和操作数据库中的数据。

2024-09-21 14:51:55 1223

原创 实例说明接口测试的关键是什么

检查API是否受到安全威胁的风险,例如SQL注入、跨站脚本(XSS)攻击等,并确保API有适当的安全措施来防止这些威胁。发送一个不存在的`product_id`,然后验证API是否返回适当的错误响应,例如404 Not Found。测试工程师应该测试接口的边界条件,例如发送无效数据、超出范围的参数、空值等,以确保API能够正确处理这些情况。发送一个有效的`product_id`,然后验证响应是否包含预期的产品信息,包括名称、价格、描述等。测试不同版本的API,以确保向后兼容性,并防止对旧版本的破坏性更改。

2024-09-20 15:48:02 729

原创 研发提测前测试到底能做些什么

其实研发提测前我们测试还能做了很多其他的事情,比如:风险评估、测试排期、自动化等,这里不在做过多描述,这里只列举最重要的三个方面:需求分析、研发设计分析、测试用例编写,可能最终的结果依然不尽人意,但是尽力就好,不是么?欢迎提问留言~这

2024-09-20 14:49:37 901

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除