(上)使用 Rational Functional Tester 进行应用软件系统级自动化性能测试

发表于:2009-8-12 13:59

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:欧迎丰,唐雪琴    来源:IBM

  本文介绍了如何在 Rational Functional Tester (RFT) 下实现自定义的扩展 API,以获取软件进程的系统性能信息,从而完成对应用软件某个操作的系统性能数据的测量。

  Rational Functional Tester (RFT) 开放的自动化测试平台同样为普通应用软件的系统级自动化性能测试提供了一个良好的基础,本文介绍了如何在 RFT 下实现自定义的扩展 API,获取软件进程的系统性能信息,完成对应用软件某个操作的系统性能数据的测量。并可以在同样的代码流程框架下,升级修改 API 的功能,提供更多系统性能信息,为最终的软件性能分析和调优提供完善的数据支持。

 软件性能的系统级测试

  对应用软件进行性能测试可以分为两个层面,一是测试应用软件的操作响应速度,通过从用户角度得到的应用软件操作响应的时间,来判断和分析软件在运行时带给用户在响应速度上的体验。这一点,在《使用 Rational Functional Tester 测试应用软件的操作响应速度》一文中进行了比较充分和详尽的阐述。而在另一方面,我们也需要精确的测量软件运行时一些重要的系统级性能数据,如软件运行占用的 CPU 系统时间,系统内存和虚存乃至如 GDI 对象,IO 等。通过这些量化的具体数据,我们才能够对应用软件进行更精确的分析和调优,从软件架构和代码的层面对程序的性能进行优化,进一步的提高软件的性能。

  软件运行的 CPU 系统时间,占用的系统内存、虚存,GDI 对象等等这些数据我们可以通过操作系统自身提供的一些工具如 Windows 的任务管理器等来获得,但是这样的话,一方面我们很难将获得的数据与软件具体的某个操作精确的联系起来,为我们对程序代码的分析提供更可靠的分析依据,从另一方面来说,这样人工的记录也无疑耗费着我们宝贵的人力和时间。

 开放的 RFT 自动测试平台

  IBM 提供了一系列强大的软件自动测试产品,其中 IBM Rational Performance Tester (RPT) 能够通过配置,提供 CPU 系统时间,内存等实时的系统监测数据,但是作为测试 Web 应用软件的自动测试平台,RPT 并不能适用于普通的非 Web 应用软件的系统级自动性能测试。

  而 IBM Rational Functional Tester (RFT) 则可以通过访问应用软件中的各个对象以及对象的方法和属性,控制软件的运行,完成对 Java,Web,.NET 各种应用软件的自动化测试。但是,RFT 本身却没有提供对软件运行时所占用的 CPU 系统时间,系统内存等计算机系统性能数据进行监测的工具或者相应的配置。

  我们似乎陷入了一个互相矛盾的两难境地:RPT 可以监测 CPU 时间,系统内存等数据但是却不能对非 Web 应用软件进行测试,RFT 可以对普通应用软件进行自动测试,却不能对 CPU 时间,内存等系统性能数据进行监测。

  不过峰回路转,在 RFT 基于 Java 的开放性自动测试架构的基础上,我们可以实现自定义的扩展 Java API,并使用这些 API 来获取软件对应进程的 CPU 时间和系统内存等系统性能数据,从而通过 RFT 来完成对应用软件的系统级自动化性能测试。

31/3123>
《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号