测试 Web 2.0 程序所带来的挑战:使用 GUI 恢复性能评测来补充 Web 2.0 性能测试
2010-05-13 00:00:00 来源:WEB开发网计时的方法学
作为一个团队,需要决定去评价什么。您不需要在 GUI 评测事务,以匹配在性能测试工具中创建的性能脚本所评测的性能事务,这些性能测试工具例如有 IBM® Rational® Performance Tester 方案。 但是,团队应该就测试应该得到的目标达成一致意见。
但是,在 GUI 端,让所有外部的负荷保持在评价之外是 非常重要的 。将所有的工具负荷删除是不可能的(原则性的原因,这些值不是绝对的响应时间),但是您可以采取一些措施,去最低化负荷所造成的影响。例如,当您在使用 IBM® Rational® Functional Tester 工具时,您可以完成以下的操作:
如果使用动态搜索,那么您需要确定在定时器内部控制的所有控件,都需要在开始评价之前搜索到。
所有需要得到实例化的 Java™ 对象都需要在开始评价之前完成
点击事务中的某个对象
一旦 GUI 为下一次点击做好了准备,就立即停止计时。例如,在 Eclipse 中确认进度条窗口得到了关闭,或者向导对话框得到了关闭。对于 Web 程序,您可能会确定出现了一个控件,或者载入了一个新的页面。尽可能少地确认 ,并且确认机理等待/重试确认继续之后就存在的支持。在这里并不推荐更改运行期间的等待/重试时间,所以您要确定它们是评价事务中的“硬代码”。
当您在设计一个类以进行评价时,您要确认一旦计时开始就没有对象执行,计时器启动方法中也没有其他操作了。与之类似,停止方法所完成的处理应该在获取停止时间之后执行。
下面是一个调用事务定时器的范例伪代码,以显示正确的用法:
ShellTestObject topShell =
(ShellTestObject)getRootTestObject().find(atDescendant("class",
"org.eclipse.swt.widgets.Shell", ".captionText", "My application"))[0];
GuiTestObject projectDlg =
(GuiTestObject)topShell.find(atDescendant("class",
"org.eclipse.swt.widgets.Shell", ".captionText", "New Project"))[0];
GuiTestObject finishButton =
(GuiTestObject)projectDlg.find(atDescendant("class",
"org.eclipse.swt.widgets.Button", ".text", "Finisht"))[0];
TransactionTimer timeCreate = new TransactionTimer
("Creating project: " + " project name:");
timeCreate.startTimer();
finishButton.click();
vpDynamic("Check dialog", projectDlg).performTest(false);
timeCreate.stopTimer();
- ››web安全之信息刺探防范1
- ››webqq 最新加密算法
- ››webdriver 数据库验证方法
- ››WebSphere Application Server 7.0 XML Feature P...
- ››测试哪种类型的锚文本对排名最有价值
- ››Web2.0网络时代基于社会影响力的声望值
- ››Web服务器搭建:配置Linux+Apache+Mysql+PHP(或Pe...
- ››WebLogic调整Java虚拟机性能优化参数
- ››webqq2.0协议研究(3)-ClientId生成
- ››Web.config配置文件
- ››WebBrowser组件的execWB方法——Delphi控制浏览器...
- ››Web前端设计模式--制作漂亮的弹出层
更多精彩
赞助商链接