开源软件运动正在获得很大成功,正在改变软件业的开发模式、运营方法等,也自然改变着软件测试的方法,借助开源软件测试工具完全可以构造一个完整的测试解决方案,可以极大地提高测试效率,又能大大的降低测试成本。
从单元测试、功能测试到性能测试,从Web页面测试到VoIP/Telephony等一些多媒体应用的测试,直至测试的管理平台和缺陷跟踪系统,能覆盖整个测试工作领域。
1. 测试模型:见 开源软件测试模型 ,阐述了开放源码软件测试模型框架以及环境、元素和技术等。
2. 单元测试工具:JUint (大家太熟悉了)- see: http://www.junit.org/index.htm
针对各种语言 (C/C++/C#, PHP, SQL ) Cactus, Cgreen, Check,
NUnit, NUnitForms , PHPUnit, SQLUnit
还有针对各种对象(HTTP, XML, Database, ) 进行的单元测试:HttpUnit,
XMLUnit, DBUnit, ObjcUnit, SIPUnit, ...
Mockrunner用在J2EE环境中进行应用程序的单元测试,不仅支持Struts actions,
servlets,过滤器和标签类还包括一个JDBC和一个JMS测试框架,可以用于测试基于EJB的应用程序。
3. Web 功能测试 : 要数 Selenium,see: 强大的Web开源测试工具—Selenium
再结合 Ant, EMMA 一起使用就更完美了, see:使用 EMMA 测量测试覆盖率
又如:Canoo WebTest,
功能测试工具很多,可以发现多达几十个:http://www.opensourcetesting.org/functional.php
4. Java 客户端,可以使用 Abbot, see: http://abbot.sourceforge.net/doc/overview.shtml
Abbot是一个用来测试Java GUIs的框架, 用简单的基于XML的脚本或者Java代码,就可以开始一个GUI.
5. 性能测试, 著名的有 Jmeter 和 OpenSTA,使用都很方便
Jmeter可以完成针对静态资源和动态资源( Servlets, Perl脚本, Java对象, 数据查询s,
FTP服务等)的性能测试。 Jmeter 可以结合Badboy 来使用,录制测试脚本。
性能测试工具很多,可以访问 http://www.opensourcetesting.org/performance.php
6. 数据库测试: DBMonster, DBProbe, OraRep, phpMyAdmin
OSDL Database Test Suite, 是根据Linux开发人员需要而开发的测试框架中数据库测试工具套件,具有很好的实用价值。
see: http://www.osdl.org/lab_activities/kernel_testing/osdl_database_test_suite/
More: http://dbcommander.sourceforge.net/
7. 多媒体(VoIP/Vedio)、IP电话 等测试
Ethereal, AuthTool, ... SIPp, Sofia SIP, ... Seagull,
... Asterisk - the Open Source PBX,X-Lite
其中经常使用的有:Ethereal, SIPp 和 Seagull。而Asterisk 不仅可以作为测试工具,还可以构造企业内部电话网络。
更多的还有:http://voipsa.org/Resources/tools.php
8. 网络安全性测试
#1 Nessus : Premier UNIX vulnerability assessment tool
#2 Wireshark : Sniffing the glue that holds the Internet
together
#3 Snort : A Everyone's favorite open source IDS
#4 Netcat : The network Swiss army knife
more,
see http://sectools.org/
还有许多网络监控工具,pls visit: http://www.slac.stanford.edu/xorg/nmtf/nmtf-tools.html
9. 缺陷跟踪
Bugzilla一款不错的软件缺陷管理工具
Mantis是一款基于WEB的软件缺陷管理工具,配置和使用都很简单,适合中小型软件开发团队
10. 测试平台
TestMaker (solve functionality, scalability and performance
of services)- http://www.pushtotest.com/
Eclipse Test & Performance Tools Platform (TPTP
4.3)
11. Reference
http://www.eclipse.org/tptp/
http://sourceforge.net/search/?type_of_search=soft&words=Test+Tool
http://www.opensourcetesting.org
http://testingfaqs.org/
http://www.pushtotest.com/
http://www.openqa.org/
http://www.aptest.com/webresources.html
注:测试自动化可以做到90%或更高,但也不能完全代替手工测试。参考:
"Test Automation Snake Oil" (James Bach,
http://www.satisfice.com/articles/test_automation_snake_oil.pdf
)
"Automation Myths" (M. N. Alam, http://www.benchmarkqa.com/PDFs/automation_myths.pdf
)
"When Should a Test Be Automated?" (Brian
Marick, http://www.stickyminds.com/r.asp?F=DART_2010
) |