生活的价值:敏捷测试方法之活用测试框架

来源:百度文库 编辑:偶看新闻 时间:2024/03/29 04:40:05

敏捷测试方法之活用测试框架

摘自:http://www.51testing.com/html/25/n-204525.html

究竟何为敏捷测试,我们谈论最多的无非就是测试先行,测试驱动开发,自动化测试等内容,这些都可以看作是敏捷测试的一些最佳实践的方法。其实,归根结底,“敏捷”就是“轻量”,如果我们使用的方法,使用的流程,使用的工作都太重了,那么何来敏捷?今天呢,我们就一起来总结一些自动化测试的框架,灵活使用这些轻量级测试框架达到敏捷测试的目的。

  功能测试

  1) 单元测试框架:针对Java语言的JUnit, JMock等,针对.NET的 NUnit, 针对C/C++的CppUnit, CUnit, GTest, 针对PHP语言的PHPUnit等,这些都是一些非常成熟的单元测试框架,并且被大部分项目使用。

  2) 集成测试框架:Fitnesse (这是一个很不错的集成测试框架)

  3) 应用层测试:针对Web应用程序的Selenium, WaitR, WatiN, WatiJ, Badboy, 针对的SoapUI(确切来说这是一个工具,而不是一个框架), 针对Windows桌面应用的AutoIt, 针对Java界面组件的Abbot等,针对.NET的MS UIAutomation库

  性能测试

1) 单元级性能测试:基于Junit单元测试用例之上构建的JUnitPerf,P-Unit,另外也包括.NET框架下的NTime。由于其原理比较简单,就是模拟多线程去同时执行同一API,那么我们可根据这一原理自己开发相应的测试代码来做API进行性能测试。

  2) 应用级性能测试:除了LoadRunner, RPT这种重要级的性能测试工具外,我们还有很多开源的,轻量级的性能测试工具(框架),如测试JAVA,JDBC,EJB,和Web的JMeter, The Grinder,单纯测试Web性能的Curl-Loader, Webload, OpenSTA,针对Web Services的SoapUI等

3)另外,由于目前HTTP的应用已经非常广泛,各种功能测试,性能测试工具都提供了对HTTP协议的良好支持,编程语言本身也提供了HTTPClient这样类库,所以我们完全可以自己编写代码来对应用服务器进行性能测试,基本原理就是多线程并发操作执行各种Browser与Server端的交互,交互的方式通常只有GET和POST两种,所以完全可以实现。只不过相对来说,在多线程运行方面,现有的比较成熟的框架提供了更好的支持,确保线程的安全和能够模拟更多的线程。

  测试管理

  在测试管理方面,我们同样应该敏捷起来,测试管理的核心就是对测试用例,执行结果和缺陷的管理,如果我们还只想着花重金买一套IBM或者HP开发的超重的软件来提升我们的测试管理水平,基本上很难,因为,我们有更敏捷的选择,如TestLink, BugZilla, BugFree等,还有我们正在开发的AgileOne这样的轻量级的,开源的管理工具。

  总之,要敏捷,先从工具开始,从流程开始。虽然我们一起强调敏捷的主体应该是人,但是,如果单纯从人开始,其它配套跟不上,我们无法敏捷。

推荐阅读:

性能测试也敏捷?

关于敏捷,我们究竟了解多少?