
MATLAB的GUI程序包含两个部分:一个由GUIDE编辑后生成的.fig文件,以及一个同名的.m文件。前者是一个图形,由一个窗口和程序界面所需的各种控件,如按钮、输入框、绘图区、滑动条等组成(事实上,装载这些控件的窗口本身也是一个控件)。后者是与前者配套的,主要包括窗口的生成函数和各控制消息的回调函数。
GUI程序运行的流程:程序首先生成一个窗口;等待并接收消息;在接收到消息后,寻找并执行与该消息对应的回调函数;重复二、三两步直到窗口关闭。GUI程序的.m文件只列出了窗口生成函数和消息回调函数,而消息检测与响应等内核部分由系统自动完成,无需用户参与,因此并没有体现出来。开发者理解GUI程序的运行流程,对于开发GUI程序是很有帮助的。
开发者理解GUI程序的运行流程,对于开发GUI程序是很有帮助的。
如前所述,GUIDE可以帮助程序开发者完成窗口生成、消息检测等工作,因此需要程序开发者完成的工作其实很简单,即在窗口上设计控件、定制控件的消息以及编制与消息对应的回调函数。下面分两部分叙述GUI界面控件设计以及消息与回调函数的设计。
一、由于Jmeter是一个纯Java的应用,用GUI模式运行压力测试时,对客户端的资源消耗是很大的,所以在进行正式的压测时一定要使用非GUI模式运行。如果并发数很高或者客户端的硬件资源比较一般的话,采取的方法是以Server模式用多个Client进行分布式测试。
二、新建 JMETER_HOME 环境变量,值为D:\Software\apache-jmeter-5.0\apache-jmeter-5.0,在Path加入:%JMETER_HOME%\bin
三、CMD->jmeter,可以直接运行Jmeter,jmeter -v查看版本号:
四、官方提示:不要使用GUI模式进行负载测试,GUI模式仅用于测试创建和测试调试。对于负载测试,请使用非GUI模式:jmeter -n -t [jmx文件] -l [results文件] -e -o [Path to web report文件夹],可以节省系统资源,能够产生更大的负载,可以通过命令行参数对测试场景进行更精细的配置。
五、jmeter部分参数解释:
六、分布式:Jmeter的集群模式可以让我们将多台机器联合起来一起产生负载,从而弥补单台机器负载生成能力不足的问题。假设我们的测试计划会产生100个threads,我们使用5台机器进行分布式测试的时候,一共会产生100 * 5 = 500的负载。
七、分布式测试的思想为:一台master主机(调度机或者称作控制机)初始化测试并控制多个slave系统(执行机或者称作负载机)。master,以GUI模式运行,同时控制测试的运行,就是client,启动脚本所在的那台机器。master也可以参与脚本的运行,master同时也是一台负载机。slave,运行客户端程序(Agent:jmeter-server.bat),从master接收指令、向目标服务器发送请求,就是server,真正执行test plan的机器。
八、注意事项:
九、设置jmeter client &server
1、设置jmeter-server:用文本编辑器打开JMETER_HOME/bin目录下的jmeter.properties文件,添加运行jmeter-server的主机IP到remote-hosts,如果你不希望你的客户端也作为jmeter-server运行的话,把localhost从上面的配置中移除。
2、将配置在remote_hosts中的机器上的jmeter-server启动(Windows以管理员身份运行JMETER_HOME/bin目录下的jmeter-server.bat)。
十、分布式测试
1、方式一:在客户端 以GUI模式 启动jmeter,然后打开或者创建一个测试脚本, 从GUI模式启动所有的远程server,点击,运行-远程全部启动,也可以单独启动某一个jmeter-server 。
2、方式二: 以非GUI模式 启动jmeter
2.1、新建一个文件夹,存放jmeter脚本,比如baidu.jmx;
2.2、在当前文件夹下打开cmd窗口(shift+鼠标右键选择在此处打开命令窗口),输入命令:
2.3、运行结果,就是生成res.jtl文件,jmeter.log日志文件和report文件夹:
Graphics user interface的简写 图形用户界面 主要是表示层的逻辑!编程语言设计了一些图形用户接口 在这里就可以和主逻辑通信了。如果编程就会知道的多一些!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)