刚修完10.1长假,还没缓过来,整天不想事事,闲逛论坛园子,偶见吉日老大的C# winform 窗体接收命令行参数自动登录进行系统,模拟600个WCF客户端的并发压力测试。
http://www.cnblogs.com/jirigala/archive/2011/10/02/2197964.html
哈哈,想起我们也曾做过这样并发测试,当然和吉日老大一样,没有使用测试工具,是自己做的多线程并发测试,真是"高手"所见略同^_^.
可能大家又会说,为毛要自己写,用loadrunner等压力测试工具不是更好?
无奈,我就喜欢自己动手,丰衣足食。其实主要还是自己写的测试类,发现问题了,方便调试,可以在IDE工具中设置断点,跟踪调试啊,多快捷方便啊,其实我还是懒人一个!
闲话少说,直接上测试类方案了
说起来复杂,其实很简单,就是写个多线程类,不停的启动流程,做业务流程节点的提交。
如下图:线程主程
红框1中http://localhost:8089/ebiao/servlet/WebBill?key=doSubmitData地址为模拟post到的web地址,我用本机发布,所以localhost
红框2中 int max=100; 表示一次并发的数量100个,IBM thinkpad t61的老机器,先就100个吧
下图:线程子程,用httpclient模拟post到web网站上
sb.append("<root userType='eform_inital_workflow'
pubParam='wf_name=wf_leave_condition;wf_version=1;init_actionid=4960;action_id=4926'><DsMain><t.....................
为post提交的页面数据,这里为启动业务流程wf_leave_condition,版本1,
执行初始化流程,得到流程实例,并执行流程***个节点的提交,提交业务表单和执行流程。使得当前步骤到第二个节点
模拟一个这样的提交过程。用我本机t61的老机器,连接oracle库,100个并发,28秒完成。
没有那些cpu性能等的数据,但是,如果有问题的话,可以在IDE的编程环境中设置断点等,快速定位到bug所在,哈哈,也是懒人的一个方法。
原文链接:http://www.cnblogs.com/webreport/archive/2011/10/10/2205864.html
【编辑推荐】