首页
学习
活动
专区
工具
TVP
发布

Python自动化测试

专栏作者
252
文章
259745
阅读量
137
订阅数
Pytest测试实战|编写规范与搜索
The pytest framework makes it easy to write small, readable tests, and can scale to support complex functional testing for applications and libraries. 这段话很好地阐述了Pytest的设计思想与强大的特性。迄今为止,不管是市场的招聘需求还是在企业级里面进行自动化测试都需要掌握Python语言体系中的Pytest测试框架。Pytest以轻量级的设计可以在编写TestCase方面具备天然的优势,又能够满足不同测试场景下的应用,本文章会详细的阐述这部分。
无涯WuYa
2024-04-10
800
怎么有效做水平扩容?
系统往往存在不可确定性,因为你无法从当前稳定的状态来判断或者认定系统未来也是稳定的。世界是复杂的,系统具有不可稳定性的状态。这样的案例比比皆是,如某云计算服务厂商大规模瘫痪等等案例。对质量交付团队而言,最大的挑战应该是如何可以让系统持续地具有可稳定的状态。虽然系统具有不可预知性和随机性,现实的情况往往是底层服务出现不稳定性导致上层应用不可以正常地使用,此时往往或者是大多数时候认为是测试没有测试到位导致产生的问题。如假设底层支付的服务出现资源瓶颈,最终导致正常的支付流程出现问题,某些管理者会很偏见的认为质量交付团队没有把某些支付测试场景验证到位而导致的问题。
无涯WuYa
2024-04-10
840
轻量级性能测试工具实战
与其他测试类型相比,性能测试的技术复杂度更高,需要掌握的技术栈除了常规的性能测试工具外还需要掌握编程语言、系统架构、数据库与MQ等知识。是不是说必须需要掌握了这些知识就可以做性能测试而没有掌握就无法做性能呢?很显然这个答案它是否定的。
无涯WuYa
2024-03-07
700
自动化测试的持续性
自动化测试技术对测试团队而言是很普遍的测试技术,也是提升测试效率最直接最有效的手段。从质量保障的角度而言,产品快速设计出产品,开发快速地完成编码,测试快速地完成测试并达到上线的标准。那么这个过程中其实并不在乎测试的方式,在乎的是测试的效率。自动化测试高效的落地以及应用,能够有效地提升测试交付的研发效率。
无涯WuYa
2024-03-06
770
掌控感|快速分析测试对象
作为质量工程师,最难堪的应该是自己负责的产品模块,在上线后第二天就出现了线上的问题,产生的负面影响当然会有很多,比如测试环境为什么没有测试等等,更加负面的是有时候还会被贴上缺少责任心的标签。
无涯WuYa
2024-01-22
620
服务端测试|单接口如何测试
在实际工作中,经常会面临针对单个微服务的测试或者是OpenApi中提供了某一个API进行测试。那么针对这部分只需要测试研发被提供的接口发送请求后返回协议状态码是200就可以了吗?很显然这种简单的测试模式一方面针对服务测试的覆盖率不全,第二是输出的测试报告也是很难让别人信服的。下面详细地阐述这部分的测试策略以及测试过程中需要考虑的各个点和测试范围。
无涯WuYa
2023-11-16
1380
服务端质量保障之内存管理(一)
对一个系统而言,保持一个系统能够持续稳定地提供服务的能力而言显得尤为重要。我们常常谈用户体验,其实良好的用户体验不仅仅指的是用户交互以及系统的易用性,也包含了系统可持续提供服务的能力。作为质量交付团队,不仅仅需要考虑被测对象背后的业务价值和给用户带来商业上的赋能,也需要考虑提供业务背后的底层服务的计算能力,因为底层服务的稳定性才能够保障上层应用的产品业务特性,以及业务带来的商业价值。
无涯WuYa
2023-10-22
1150
JVM监控与调优:jstat命令实战
在生产环境中执行的应用程序当出现响应时间慢以及过于频繁的GC,那么此时就需要收集JVM运行的数据来分析是什么原因导致了应用程序响应时间慢,也许在这个过程中出现了大量的文件I/O加载导致都有可能导致程序出现内存泄露等情况。特别是在企业级的生产环境中,在出现问题的时候很难使用主流的可视化工具来查看JVM运行过程中的数据,此时可以使用jstat命令工具来收集JVM运行过程中的数据,下面详细地阐述jstat命令行工具的案例应用与实战。
无涯WuYa
2023-09-21
1430
Playwright之多浏览器执行
在Playwright实战详细地介绍了Playwright的优势、环境搭建、案例实战的过程。本文章主要阐述Playwright在多浏览器执行的过程。
无涯WuYa
2023-09-02
3110
Playwright实战(一)
Plawright是非常优秀的端到端自动化测试解决方案的框架之一,支持主流的浏览器与主流的编程语言,特别是在Python语言中可以和Pytest测试框架进行无缝地对接。Playwright的优势总结下来具体如下。
无涯WuYa
2023-09-02
2830
自动化测试用例规范
不管是市场需求还是测试效率而言,自动化测试都是作为测试工程师需要掌握的一门技术,并且在公司能够逐步的应用到常规的测试中,如回归测试。自动化测试的价值在于它能够有效的检测被测对象的质量并且能够给出有价值的结果信息,而且这个结果需要具备权威性,不需要太多人为的参与与干预。
无涯WuYa
2023-09-02
2850
BTrace监控调试(一)
在前面的服务端性能测试实战系列文章中详细地介绍了性能测试中性能测试的理论,以及针对JVM中它的监控和GC日志输出等信息。当应用程序部署后,也可以通过动态的方式来关注应用程序中需要关注的信息。BTrace通俗的理解就是应用程序在运行的情况下可以动态的修改程序的字节码,通过这样的手段可以达到针对运行的应用程序监控调试的目的,通过BTrace可以动态的实现向目标应用程序的字节码注入追踪代码,下面详细的介绍下这部分的案例应用。
无涯WuYa
2023-02-28
2760
GC日志详解
JVM的内存结构从大的结构来说主要分为堆区和非堆区。在实际测试中针对IO密集型的程序往往需要它的高可用,也就是在客户端高并发以及持续不断的向服务发送请求进行交互的时候,是否存在堆区或者是非堆区的内存泄露。如针对发送短信服务而言能够处理的最大短信量是100万,那么当N个100万的任务同时发送请求以及大于100万的任务发送请求,服务端极有可能存在内存泄露的情况,此时就需要打印以及输出GC的日志信息并且来关注分析GC的日志信息。下面详细地阐述下GC的日志信息。
无涯WuYa
2023-02-28
5820
Jstat命令实战
在JVM命令行工具中有很多优秀的工具,本文章主要详细地介绍Jstat命令行工具的案例应用和实战。搭建好JDK的环境后,就可以直接使用Jstst命令行的工具。下面主要从三个维度分别阐述下Jstat命令行工具,具体分别是类加载,垃圾收集以及JIT编译。
无涯WuYa
2023-02-28
3610
内存泄漏分析
在内存映像文件导出中详细的介绍了当应用程序出现内存泄露的时候自动导出内存映像文件。在实际的生产环境中主要是使用jamp通过命令行的模式来导出内存镜像文件,下面详细的阐述下这个过程。
无涯WuYa
2022-12-03
1.8K0
内存映像文件导出
在测试IO密集型应用程序的时候,当出现内存泄露的时候,往往需要针对这部分进行分析内存泄露的具体原因。常规的一种方式是我们使用JVM的监控工具来监控这部分,来查看堆内存以及非堆内存的实际使用率和过程中应用程序本身的CPU使用率。但是被测试的服务一旦出现内存泄露,该服务就会疯狂的打印内存泄露的日志信息同时客户端请求服务,服务一直处于超时的情况。那么这个时候如JVisualVM的监控也会失去连接,并不能够看到很关键的信息。所以下面详细的阐述下当被测试的服务一旦出现内存泄露的时候,使用自动导出以及命令行导出的方式来获取到内存映像的文件,从而对分析内存泄露提供有利的信息。
无涯WuYa
2022-12-03
1.1K0
搭建监控基础设施
在性能测试的过程中,需要关注到各个不同维度的资源变化趋势的过程,比如操作系统中CPU与内存以及平均负载资源变化的趋势,当然还有很多的指标。主要需要关注的是DB资源,操作系统资源,被测服务的资源,以及其他涉及到的中间件(RabbitMQ,Kafka,Nginx,Redis等)的资源。那么针对这些涉及到的资源需要进行监控和关注,这样的好处是在最终分析性能测试的结果中可以结合各个不同资源来分析存在的问题。比如请求一个列表耗时非常长,那么过程到底是数据库的问题,还是服务本身的问题以及服务对应的操作系统资源瓶颈导致的问题,其实在这个过程中,这些都是存在可能性的,所以在具体排查的过程中,就需要知道在这个过程中各个资源的变化趋势,可以借助这些信息来定位到底是什么导致了请求耗时长的问题。因此,在性能测试的过程中,针对资源的监控是非常重要的。
无涯WuYa
2022-12-03
3310
如何系统学习接口测试?
接口测试技术可以说是测试的基本功,这主要的核心原因是管理层需要测试需要有更高的业务交付的能力,能够在有效时间内快速完成业务的同时又满足质量发布的标准,坦白说,这是一个挑战,但是现实情况就是如此。第二个原因是新技术的落地以及在企业的应用,这个过程中测试需要更多的聚焦于底层服务的质量保障,而不是传统模式中在页面上进行输入输出的一个校验过程。
无涯WuYa
2022-12-03
4090
性能测试中等待队列
在调度算法中详细的介绍了不同调度方式在程序中的调度策略,下面继续沿着调度的思路来说在性能测试中的等待队列。调度的核心是为了让底层的服务始终保持在一个可持续运行的一个状态中,再说的具体点就是保持服务的高可用,这样的方式对服务层而言是非常有利的。但是如果客户端发送请求的任务太多,那么就涉及到排队等待,核心是等待时长到底来如何设计了?
无涯WuYa
2022-12-03
4590
性能测试中调度详解
对服务端而言,如果客户端高并发的所有请求任务进入到执行的阶段,必然会给服务端带来系统级的灾难,这是因为服务端的底层服务以及系统的集群计算能力它终究是存在可承载的能力是有限的,毕竟不管是服务的承载能力还是计算引擎的数据分析都是,都是存在它的边界能力的,而不可能无限制的来接受客户端的所有请求并对这些请求进行立刻马上的处理,如果真如此,这样带来的灾难是系统级的瘫痪。
无涯WuYa
2022-12-03
3490
点击加载更多
社区活动
腾讯技术创作狂欢月
“码”上创作 21 天,分 10000 元奖品池!
Python精品学习库
代码在线跑,知识轻松学
博客搬家 | 分享价值百万资源包
自行/邀约他人一键搬运博客,速成社区影响力并领取好礼
技术创作特训营·精选知识专栏
往期视频·千货材料·成员作品 最新动态
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档