软件测试
文章平均质量分 90
软件测试雪儿
这个作者很懒,什么都没留下…
展开
-
让单元测试更有效的4种方法
在工作过程中,我注意到一些常见的错误步骤,它们使变得无效、冗长、难以维护,而且写起来很麻烦。这篇文章提供了一些建议,以避免一些可能被忽视的错误,特别是对于经验不足的开发者。请注意,本文中提到的一些例子是在Java中,另一些是在Javascript中,但其原则大多是可以互换的。原创 2024-11-09 20:40:06 · 588 阅读 · 0 评论 -
【独家工具】JMeterPerfReporter3.0正式版本,让你的JMeter更好用
Lemon-JMeterPerfReporter工具,是我们性能测试课程教研组根据JMeter性能测试报告的不足,定制开发的一个性能报告生成工具。有需要的同学,可以通过小编官方gitee账户下载,或咨询我免费获取哦!做过性能测试的人员都知道,性能测试中,有一个非常重要的工作,就是分析测试结果。而做分析,必须要有数据支撑。JMeter工具自身具备把性能测试过程中,事务相关的数据保存下来,生成HTML报告的能力。但是,这个能力很基础。相比一些其他性能工具而言,这是一个明显的短板。原创 2024-11-09 20:38:13 · 676 阅读 · 0 评论 -
掌握软件组件/单元测试中的这些术语,你就算正式入门了
上篇干货,和大家分享了的几个级别,在【组件/单元测试】当中,涉及不少名词术语。从之前的学员学习过程来看,这里比较容易出现概念混乱,进而导致面试过程中频频翻车,所以有必要在这里单独拎出来和大家再做认知强化,原创 2024-11-09 20:37:30 · 707 阅读 · 0 评论 -
领导给你一个项目,如何开展性能测试工作
不管是普通的网站也好还是比较专业的系统也好,它都是有业务功能需求的,所有的性能测试都要基于这些功能才能进行,脱离了业务功能的性能测试没有意义。性能测试所以首要的任务就是分析系统的业务功能,分析系统业务上的性能限制,也就是业务需求。无论是你是随机测试想看看系统的当前性能情况,还是奔着对系统进行优化而去的,还是检验一下系统的性能是否满足需求,等等,这些都是你做事情之前的一个目标。如果不分析,你就不会知道系统的功能数据流向,请求的数据构成,系统的网元结构,以及系统可能出现的瓶颈在哪一个节点,你又怎么进行优化呢?原创 2024-11-07 20:25:12 · 989 阅读 · 0 评论 -
试图一文彻底讲清 “精准测试”
精准测试就是通过数据回答了两个基本问题:测得这样、要测什么,即精准测试是借助特定的算法、技术手段和工具,分析代码、程序运行过程、测试用例等及其之间关系,从而获取相关信息和知识,精准定位和优化测试范围(如精简测试用例),以精准的数据评估测试结果和产品质量,使整个测试过程更加高效、准确和可信,同时能有效地减少漏测风险,将测试成本降到最低。精准测试是质量工程智能化建设的重要趋势,也是软件测试数字化的体现,让我们能够清楚地了解测试过程,达到我们所需要的、量化的测试目标(如测试覆盖率)。原创 2024-11-07 20:24:31 · 1054 阅读 · 0 评论 -
软件测试经典面试题,助你面试加分
进入金三银四,很多小伙伴有被动跳槽的打算,所以更新一些经典的题,希望能帮到大家!原创 2024-11-06 20:17:13 · 949 阅读 · 0 评论 -
解决性能测试问题之事务为什么这么慢?
在做系统的整体时发现经常会卡在一个较低的QPS(单机低于100)数值,而且应用服务器的负载不高,检查MQ消费速率只有40左右。经过一番排查,发现消息发送端发现消息速率很低,大约40条/s。于是让开发帮忙搭建一个最小化工程单测Rabbitmq发送性能,发现在启用发送端事务后性能下降非常明显。测试机SSD硬盘测试结果1,0w条消息未开启事务,大约10s发送完毕;但开启了事务后,需要将近320s,差了30多倍。接着翻阅Rabbitmq官网,发现开启事务性能最大损失超过250倍。原创 2024-11-06 20:16:28 · 887 阅读 · 0 评论 -
什么是API接口测试
API 是“应用程序编程接口”的缩写,是一种允许不同应用程序之间相互通信和交换数据的接口。就好像在餐厅点餐一样,你只需要告诉服务员你想要的食物,而不需要了解厨房中的具体操作,服务员会把你的订单传递给厨房,然后将厨师烹饪好的食物提供给你。在这个过程中,服务员扮演的就是一个 API 的角色。同样地,当你使用 API 时,你只需要调用所需的功能和服务,而不需要了解底层的代码实现。因此,API 就像是应用程序和其他软件之间的“中间人”,使它们能够相互通信和交互。原创 2024-11-05 21:56:27 · 651 阅读 · 0 评论 -
零散逻辑验证不再烦恼:基于Python和Redis的实践
在开发过程中,为了快速验证某些逻辑,可以考虑创建一个Python项目。并要多使用面向对象的方式编码,可以提高代码的可读性和可维护性。另外,在进行接口自动测试时,可以使用Python中的缓存工具,例如Redis,来提高接口的性能和效率。通过使用Redis的缓存,可以减少请求的响应时间,提高系统的性能和可用性。这不,有了这个基础,尽情玩吧!!!原创 2024-11-05 21:55:35 · 553 阅读 · 0 评论 -
测试环境治理之MYSQL索引优化篇
综上,我们每个人不仅仅是测试环境的使用者,更是测试环境的建设者,每个人都需要有意识的把负责的服务测试环境稳定性提升上来,这样整体业务的测试环境稳定性才能有保障。而且,对于测试环境管理和维护这条路,其实是随着解决的问题深入,需要有很深入的思考和解决问题能力,随之,对技术的要求也越来越高,当然,这也正是我们的价值所在。以上,与君共勉~原创 2024-11-05 21:53:46 · 801 阅读 · 0 评论 -
字节内部整理的软件测试面试题(含文档)
完成的闭包必须包含以下三个特性:函数中必须嵌套一个函数;外层函数返回值是内层函数的函数名;内存嵌套函数对外层作用率,有非全局变量的引用;简单来说闭包函数,第二个返回的不仅仅是一个简单的函数,这个函数它还呆了一个封闭的作用域;原创 2024-11-04 21:13:07 · 979 阅读 · 0 评论 -
浅谈我作为一个普通人对于人工智能的认识
然后大量的它就会发现一个很窘迫的事实,地板不够擦··········于是它开始推平高楼大厦,消灭任何生物与植物,除了保留哪些生产元件的矿产··········人类追求的快乐应该是一种满足感,这种满足感也许是来自于对于苦难的征服感,也许是·········完全混乱的人工智能会不断的进行概念性的追问与自我解答,最后把人类所问的问题搞到面目全非,然后再给出一个无法预知的答案。比如说,人类让它去思考如何让人类更加快乐的命题,它可能给你的答案是把所有的人类的控制起来,用电极不断刺激人类多巴胺不断的分泌。原创 2024-11-04 21:12:28 · 785 阅读 · 0 评论 -
Python基准测试和性能分析内存管理和垃圾回收
Python是一种解释型语言,其执行速度通常比编译型语言慢。为了提高。原创 2024-11-04 21:11:44 · 926 阅读 · 0 评论 -
解锁AB测试的力量
在数字革命的背景下,用户偏好不断变化,市场动态日新月异,A/B 测试成为那些希望蓬勃发展的组织的重要策略。通过探索其优势并揭示最佳实践,我们掌握了实验和数据驱动决策的艺术。A/B 测试提供了丰富的工具和必要技能,帮助组织做出明智的决策。这不仅涉及优化用户体验,还包括提高关键绩效指标,推动整体成功。通过此次探索,我们认识到 A/B 测试不仅是一种方法,更是一种以实证洞察和持续改进为核心的心态。真正的变革力量不仅在于掌握工具,还在于熟练运用这些工具。原创 2024-11-01 20:22:00 · 723 阅读 · 0 评论 -
优秀的测试开发需要具备的六大能力
因此除了coding能力,还需要负责对业内广泛使用或者成熟度较高的工具框架进行引入落地,来解决日常测试过程中的种种问题,提高测试过程效率,保障线上的交付质量。我个人认为,具备如下六点能力,会是一个优秀的测试开发同学。借助已有的成熟工具或者框架,搭建内部的各种测试过程平台或者框架,如提测平台、用例管理、自动化测试平台、单元测试覆盖率、线上冒烟验证平台、测试的造数工具等;,快速解决测试过程遇到的各种block效率的问题,以及为技术团队内部提供一些更高效的研发测试工具,提高交付过程的效率,并保障测试过程的质量。原创 2024-11-01 20:21:23 · 803 阅读 · 0 评论 -
系统架构性能优化思路
这篇文章重点还是谈已经上线的业务系统后续出现性能问题后的问题诊断和优化重点。原创 2024-10-30 22:08:21 · 720 阅读 · 0 评论 -
测试人员必备测试技能!猛戳学习~
其实只要是为了发现问题或讲特殊情况,都需要有测试思维,抽象的测试思维的具体应用就形成了我们测试人员掌握的七种武器,套用古龙的七种武器,也写一句顺口溜,“分等价,定边界、判因果、转判定、测组合、首穷举、次正交、明场景、辨状态”。,其技术应用是可以跨领域的,比如说黑盒测试技术中的等价、边界和因果,不止可以应用在IT领域的测试层面,也可以应用在证券分析的股票层面,股票中的金融股、地产股,不就是等价划分吗?基于Flask实现Mock server:开发get,post,delete,form-data的mock。原创 2024-10-30 22:07:33 · 606 阅读 · 0 评论 -
性能测试进阶:提前设定TPS如何做测试?
同理,vu为20时,action的响应时间仍小于2秒,在pacing范围内,“包含住”了,达到10个TPS。选项三实际上是设置每次迭代的期望完成时间,例如设置pacing为60秒,表示action这个事务要求在60秒内执行完成,如果action执行了4秒,那么后面的56秒会等待,直到60秒后再开始下一次迭代。vu为1时,action的响应时间只要小于等于2秒pacing,理论TPS应该都是0.5,换句话说只要action响应时间在pacing内,响应时间再快,TPS不会增加。原创 2024-10-30 22:06:56 · 924 阅读 · 0 评论 -
2024年最新最全面的Jmeter性能测试指标
1、:单位时间内,能处理多少请求。(单位:秒、每秒处理的请求量)(1)事务请求用户操作伴随数据变化,例如:淘宝下单,40万订单/秒。(2)QTP查询请求用户查询数据,例如:打开淘宝查看某个商品页面。2、响应时间(Response Time)用户体验视角:网站打开快不快?一个请求从用户发起,到收到服务器响应,所需要的时间:1、页面打开响应时间;2、具体单个资源响应时间。3、并发处理能力海量用户使用系统时候,在系统不崩溃情况下,能够支撑多少人同时使用。原创 2024-10-30 22:05:14 · 910 阅读 · 0 评论 -
Web安全测试之XSS实例讲解
Monica点击了这个URL, 嵌入在URL中的恶意Javascript代码就会在Monica的浏览器中执行. 那么Monica在victim.com网站的cookie, 就会被发送到badguy网站中。指攻击者在网页中嵌入客户端脚本(例如JavaScript), 当用户浏览此网页时,脚本就会在用户的浏览器上执行,从而达到攻击者的目的. 比如获取用户的Cookie,导航到恶意网站,携带木马等。在URL中查看有那些变量通过URL把值传给Web服务器, 把这些变量的值退换成我们的测试的脚本。原创 2024-10-29 17:29:05 · 697 阅读 · 0 评论 -
Python+request+unittest实现接口测试框架集成实例
当我们在享受工具所带来的便利的同时,往往也会受制于工具所带来的局限。最后,将数据插入到 Event 表,在插入的过程中如果日期格式错误,将抛出 ValidationError 异常,接收 该异常并返回相应的状态和提示,否则,插入成功,返回状态码200和“add event success”的提示。如果发布会id不为空,优先通过id查询,因为id的唯一性,所以,查询结果只会有一条,将查询结果 以 key:value 对的方式存放到定义的event字典中,并将数据字典作为整个返回字典中data对应的值返回。原创 2024-10-29 17:28:24 · 793 阅读 · 0 评论 -
外包干了2个月,技术明显退步
回望过去,我是一名普通的本科生,于2019年通过校招有幸加入了南京某知名软件公司。那时的我,满怀着对未来的憧憬和热情,投入到了功能测试的岗位中。日复一日,年复一年,转眼间,我已经在这个岗位上度过了接近两年的时光。原创 2024-10-28 20:45:23 · 1909 阅读 · 0 评论 -
Fiddler接口测试
通过简单的例子是不是感觉Fiddler更加强大了,其实Fiddler还有更加强大的功能,具体是什么强大的功能?在Fiddler中有个选择卡Composer,Fiddler就是通过这个工具完成。我们可以把抓包的数据直接拽到Composer中,获取接口的所有的请求信息。2、点击执行后会发现左侧会话列表出现一个请求内容。直接拽到Composer中然后修改正确的账号密码。1、直接通过Composer请求安静的博客。通过查看返回的内容,发现我们已经登录成功。1、抓取豆瓣网的登录接口。3、点击查看请求内容。原创 2024-10-28 20:44:25 · 395 阅读 · 0 评论 -
Python接口自动化测试之pytest与unittest区别
我们知道软件测试按开发阶段划分:单元测试,集成测试,系统测试,验收测试,用户测试等。这里说的单元测试,就是第一阶段,一般都是开发去做,在国内绝大部分公司都是开发去做单元测试。单元测试就是测试的对象是程序中的最小单元。程序的最小单元可以是一个函数,一个类,也可以是函数的组合,类的组合。框架——软件框架(software framework),通常指的是为了实现某个业界标准或完成特定基本任务的软件组件规范,也指为了实现某个软件组件规范时,提供规范所要求之基础功能的软件产品。——百度百科。原创 2024-10-28 20:43:39 · 728 阅读 · 0 评论 -
测试人员前期参与设计方案时需要注意什么?
服务的跟系统设计有很大关系,前期设计时考虑多一些处理逻辑,可以避免后期出现问题带来的损失以及修复问题的成本。在前期讨论设计方案时测试同学也需要参与,而不只是埋头设计用例和测试,开发同学可能因为思维局限或者思考疲劳,不一定能想到,测试同学可以利用自身优势多给一些建议。如果等测试评审时再跟开发同学强调这些设计,或者是到测试中才发现这类问题,可能就有点迟了,因为越到后期改动代码的影响范围越大,改动的风险也越高。原创 2024-10-26 17:01:13 · 640 阅读 · 0 评论 -
一篇文章带你搞定企业级完整性能测试流程!
要做性能测试,我们需要先弄清楚什么是性能测试,以及性能测试和通常的功能测试有什么差异?首先,众所周知,功能测试是模拟一个人使用某个系统的某个功能,测试使用后的实际结果与预期结果是否一致;性能测试与之最大的差别就就是,模拟N多个人同时使用某个功能,观察以下数据指标:多久时间能收到结果,也就是我们常说的性能指标,RT【响应时间】多少人能正常收到结果,也就是性能测试指标最大并发用户数。服务器在多人同时使用时资源消耗多少所以,在执行和关注结果层面,性能和功能测试都有本质上的区别。原创 2024-10-26 17:00:36 · 968 阅读 · 0 评论 -
登录页面测试用例设计
相信大家都有过写的经验,相较于开发人员编写代码而言,测试人员编写用例同样重要。本文作者总结了一些关于登录用例的经验。原创 2024-10-26 16:59:53 · 1039 阅读 · 0 评论 -
自动化测试进阶之Python推导式的使用
Python 中的推导式是利用简洁的语法从一个已有的列表(或任何可迭代的对象)推导出一个新列表的一种构建方式。除了列表推导式之外,Python 还支持集合(set)推导式,字典(dict)推导式和生成器推导式。原创 2024-10-25 20:28:04 · 916 阅读 · 0 评论 -
软件测试面试,如何自我介绍?
在讨论如何自我介绍之前,我们先来讨论一下为什么大多数面试的第一个问题都是自我介绍?很多人会疑问,简历上不是写得很清楚了吗,个人信息、教育经历、工作经历、专业技能不是都有吗,为什么还需要我重复一遍呢?在我看来主要以下几个原因:由于面试者与面试官第一次见面,通过自我介绍可以先缓解一下尴尬的气氛,让面试者不至于太紧张面试官还没来得及仔细看你的简历就去面试你了,正好在你做自我介绍的过程中面试官可以边听边看你的简历,思考接下来提问你什么样的问题,因此自我介绍很重要,会影响面试官和你继续沟通的欲望。原创 2024-10-24 16:57:22 · 552 阅读 · 0 评论 -
软件测试面试会问哪些问题?
1,在⾯试官⾯前千万不要抖脚,⼿脚不要动来动去,不能有⼩动作。2,在⾯试过程中,千万不要跟⾯试官去争论,说话太冲,太能说、抢话说、乱说都不好,遇到难 题,先思考⼀下,切记⼼浮⽓燥,表达时⼝⽓温和,谦虚。3,如果⾯试过程中都不错,谈的也很好,之后却没有给Offer,完全是⾃⼰意料之外的情况,这个很 有可能,或许是因为公司有了其他的⼈选,不⽤介意,更不要沮丧。4,在⾯试过程中,切忌问关于公司计划、⾏业机密等相关的东⻄,不要打探公司的内幕,机密敏感 性的问题不要问东问⻄。原创 2024-10-24 16:56:39 · 993 阅读 · 0 评论 -
外包干了2个月,技术明显退步
回望过去,我是一名普通的本科生,于2019年通过校招有幸加入了南京某知名软件公司。那时的我,满怀着对未来的憧憬和热情,投入到了功能测试的岗位中。日复一日,年复一年,转眼间,我已经在这个岗位上度过了接近两年的时光。原创 2024-10-23 22:16:40 · 1943 阅读 · 0 评论 -
如何将Postman API测试转换为JMeter以进行扩展
许多测试工程师使用进行API测试自动化。他们发现端点,发出请求,创建测试数据,运行回归测试,使用Newman等实现API测试的持续集成。但是,Postman有一定的测试限制。希望获得更多负载测试能力的开发人员,DevOps和QA工程师可以将其Postman测试转换为JMeter。这篇博客文章将解释何时建议将Postman转换为JMeter,并逐步说明如何实现。原创 2024-10-23 19:47:43 · 810 阅读 · 0 评论 -
app专项测试:app弱网测试
当前APP网络环境比较复杂,网络制式有2G、3G、4G网络,还有越来越多的公共Wi-Fi。另外,当前app使用场景多变,如进地铁、上公交、进电梯等,使得弱网测试显得尤为重要。在TCP协议中,需要不停的发送请求,来确认连接状态,一旦发生丢包,就需要重传。延时也是最常见的问题。在解决日常支持需求中,经常出现一些用户反馈的Bug无法复现,有很大部分是因为用户的网络不稳定导致,导致出现一些意想不到的BUG。安装平台:通过抓包工具,设置延迟,进行模拟不同的网络情况,比如常用的fiddler, charles。原创 2024-10-23 19:47:00 · 955 阅读 · 0 评论 -
Selenium:断言,还能这样
在编写自动化测试脚本时,为了使“机器”去自动辨识test case的执行结果是True还是False,一般都需要在用例执行过程中获取一些信息,来判断用例的执行时成功还是失败。判断成功失败与否,就涉及到断言。操作(action)、辅助(accessors)、断言(assertion)。1、操作(action)模拟用户与Web应用程序的交互,一般用于操作应用程序的状态;如点击链接,选择选项的方式进行工作;如果一个动作执行失败,或是有错误,当前的测试将会停止执行。常见命令如下:open(打开页面)原创 2024-10-23 19:46:17 · 808 阅读 · 0 评论 -
安全测试概述和用例设计
定义:安全测试是在软件产品开发基本完成时,验证产品是否符合安全需求定义和产品质量标准的过程。概念:安全测试是检查系统对非法侵入渗透的防范能力。准则:理论上来讲,只要有足够的时间和资源,没有无法进入的系统。因此,系统安全设计的准则是使非法侵入的代价超过被保护信息的价值。目标:通过对系统进行精心、全面的脆弱性安全测试,发现系统未知的安全隐患并提出相关建议,确保系统的安全性。原创 2024-10-22 22:34:42 · 784 阅读 · 0 评论 -
外包干了30年,人都快要废了。。。。。
先说一下自己的情况,本科生,19年通过校招进入南京某软件公司,干了接近2年的功能测试,今年年初,感觉自己不能够在这样下去了,长时间呆在一个舒适的环境会让一个人堕落!而我已经在一个企业干了2年的功能测试,已经让我变得不思进取,谈了2年的女朋友也因为我的心态和工资和我分手了。于是,我决定要改变现状,冲击下大厂。原创 2024-10-21 22:04:33 · 615 阅读 · 0 评论 -
Hamcrest断言:自动化测试的利器
总结:Hamcrest断言库是自动化测试中可读性和表达力的利器。通过丰富的断言方法和灵活的组合方式,我们能够编写出更具表达力的测试断言。Hamcrest是一个优秀的断言库,它为自动化测试提供了丰富的断言方法和灵活的组合方式。在上述代码中,我们定义了一个自定义的Matcher对象StartsWith,用于断言字符串是否以指定的前缀开头。自定义断言方法 在自动化测试中,我们常常需要自定义断言方法来适应特定的测试需求。通过自定义断言方法,我们能够更好地适应不同的测试场景,提升自动化测试的灵活性和可扩展性。原创 2024-10-21 22:02:50 · 588 阅读 · 0 评论 -
jmeter如何测试websocket接口?
jmeter要测试websocket接口,需要先下载安装一个websocket samplers by peter doornbosch 的插件,插件安装成功后,再次启动jmeter,会在jmeter取样器最下面显示6个socket相关的取样器。首先,在linux服务器上下载websocketd:https://github.com/joewalnes/websocketd/releases 在这个页面中,找到你系统对应的包,下载后安装,并配置好环境变量。原创 2024-10-21 22:02:02 · 857 阅读 · 0 评论 -
接口自动化测试:pytest基础讲解
◦ 接⼝测试流程总结◦ 接⼝测试技术总结▪ 导⼊库⽂件▪ 发送接⼝请求▪ 输⼊常量查询条件▪ 获取接⼝返回结果▪ 预期输⼊与实际结果⽐对◦ 接⼝测试⼯作总结。原创 2024-10-19 19:39:44 · 726 阅读 · 0 评论 -
作为一名测试人,你的简历真的拿得出手吗?
最近由于种种原因,面试了很多有意思的人,在这里记录一下面试这些人后的一些感想。原创 2024-10-19 19:38:11 · 981 阅读 · 0 评论