SIEMENS贵州省六盘水市 西门子代理商——西门子西南总代理
性能自动化测试是测试中重要的一环,性能测试包括客户端的性能测试,也包括服务端的性能测试。不过通常所说的性能测试、压力测试等倾向于指的是服务端的性能测试。
目前大多数应用都是基于HTTP协议的,所以本章性能自动化测试的介绍也主要围绕HTTP协议来进行阐述,当然基于性能自动化测试框架,结合Python各个包可以扩展到任何协议的性能自动化测试。
主流的性能测试工具有基于类C语言的Loadrunner、Java语言的Jmeter,小众的也有基于Go的Vegeta,基于lua语言的wrk等。本篇主要以Python为基础,通过线程、进程、协程的模拟来系统的介绍如何使用Python这个语言来做性能自动化测试。另外,本章主要聚焦在如何使用Python来做性能自动化测试,而性能测试当中的一些概念并不会过多的展开,所以遇到一些不清楚的概念,请参考搜索引擎的解释。
Python中模拟多用户的基础
在Python中可以通过多线程、多进程以及协程来模拟性能测试中的多用户的操作,本小节将结合这块的基础知识并与HTTP协议综合在一起模拟多用户的操作,并调用相关的内置函数来进行初步的结果分析。
多线程是软件开发中不可避免的一个应用技术,同时也是性能测试中模拟多用户技术的基石。多线程具有同步完成多项任务的能力,从而提高资源的使用效率,使得相同的资源下,模拟出更多的用户,从而减少需要的资源。
但是需要注意的是,线程越多就越需要操作系统进行上下文的切换,占用的资源也就较多,所以单个进程能够模拟的线程线是有限的,做性能测试时需要观察测试机的资源使用情况。
在Python中如何使用多线程的技术来实现性能自动化测试请参考代码示例。
展开全文
相关产品