j将测试进行到底~~

发布新日志

  • 【转】云计算将改变传统软件软件测试行业?

    2009-04-03 11:32:08

    最近在写一篇自动化测试框架的论文,其中涉及了部分关于云计算的东西,自己也是对云计算这个概念似懂非懂的,所以就去查了些资料。在查找资料的过程中发现了这篇文章,觉得写的很不错,也许这就是未来软件测试行业的发展方向吧,所以转到这里,Share给大家:)

     

    “云”为企业开发人员及提供相关服务和工具的供应商带来了新机遇。对于测试团体来说,在面临新挑战的同时,他们也将得到新工具以解决Soasta公司CEO所说的关键问题:可以正式启动了吗?

    位于加利福尼亚洲圣马迪奥的Keynote Systems公司副总裁Vik Chaudhary说:“测试人员必须能够有效率地对所有层面进行测试——从应用到云服务供应商。”

    根据市场研究公司IDC的调查,到2012年,在云服务上的消费将提高三倍,达到420亿美元。IDC指出,在所有IT消费中,云计算占到25%的比例,并且到2013年,这一比例还将提高到三分之一。

    IDC在概念上对“云服务”和“云计算”做了区分。他们认为,云服务是指“可以在网络上实时交付并使用的产品、服务和方案”。而相对的,云计算则被定义为用于开发和部署“可以在网络上实时交付并使用的产品、服务和方案”的基础设施或软件系统。

    Chaudhary对此做了如下解释:“Schwab、Travelocity等企业多年来一直在开发自己的数据中心。而其中的关键问题是要对扩展性极强的应用程序进行管理,并保证最好的客户体验。为此,他们聘用了大量人员来做监控、测试和添加服务等工作。”而最近云设施技术的发展,比如Google App Engine,使得其它企业可以在Google的设施上运行他们的应用。“这意味着在云中部署应用的门槛已经相当低了。你不再需要数据中心或操作团队,而可以全力以赴地开发应用和功能。这是一种应用开发范例的转变。”

    对于测试人员来说,这同样意味着一种转变。Chaudhary举例道:“比如你构建了一个应用,可以通过黑莓手机使用,并托管于一家云公司(Salesforce),Salesforce要运行一定量的测试以保证服务可以正常使用。但是,对于应用本身来说,它是运行在1部手机上还是50部手机上呢?你是否需要加载一个非常大的页面呢?”另外,云托管公司可能会使用第三方的服务来提高性能。其对于测试结果就是,终端用户的体验将受到公司、云供应商和所有其它相关团体的影响。

    减少测试成本

    Lounibos说,加利福尼亚山景城的Soasta公司有一个正在逐渐扩大的客户群,他们没有自己的服务器,所有的操作都在云环境下进行,“尽管如此,他们的大部分操作还是比较传统的;他们与托管服务供应商合作,对云领域只做适度地深入。”然而,他也指出,基于云的测试也是企业了解云并减少测试成本的一个途径。

    “传统的客户认为测试是一个扔钱的无底洞。他们一直在寻找可以减少成本的方法。对于公司来说,云计算的主要问题是,它是否足够可靠。而测试不同。云环境下的测试只是模拟真实的情况,它并不涉及与生产相关的问题。但是它确实可以减少成本。”

    Lounibos说,通过云计算,测试人员“能够访问并使用大量的计算资源,而这正是测试所需要的。这个主意实在是太诱人了:你可以在5到8分钟内准备好125台服务器,但只需要按测试时间支付费用。你再也不需要为Web应用准备大型测试实验室了。”

    比如,可以使用Soasta的CloudTest虚拟云环境测试实验室或设备。它支持负载、性能、功能和Web UI/Ajax测试。

    而Keynote公司则为测试和分析互联网云上的Web应用提供了KITE (Keynote Internet Testing Environment)。通过KITE,可以在桌面及地理位置不同的各个位置随时进行测试。

    Chaudhary认为,互联网应用的性能测试特别需要在云环境下进行。“对于互联网应用来说,这不只是应用本身的问题,它涉及所有相关的供应商。你无法决定用户是使用DSL还是拨号,或者是移动设备。性能测试本来就是取决于环境的。”

    对于移动应用,Chaudhary认为,性能测试和功能测试都应该在云环境下进行。他说:“对于移动应用来说,功能测试同样也取决于供应商。你有一个可以登录的显示屏,即使应用可以正常运行,网页的大小、显示屏的大小,以及所有供应商也都会对其产生影响。”通过在云环境下进行测试,企业就能更容易地对上百种设备进行测试,同时节省更多的成本。

    市场研究公司Enterprise Management Associates副总裁Dennis Drogseth认为,对于在云环境中的应用来说,“你要测试与应用有关的网络性能、服务器性能、数据库性能、软件性能,以及它在客户端上的缓存情况。如果你只有在某个位置上运行的一个应用,你当然可以在一个位置上对其进行测试。但是对于Amazon或Facebook来说,应用分布在许多不同且无法预测的位置上。这种情况显然要比运行一个基于单一服务器的应用测试脚本复杂得多。”

    我们所面临的问题就是,要在各个不同的组件和地理位置上运行测试以确定问题,而“企业的应用开发通常无法使用这种环境。因此,Keynote(以及其它类似公司)就为这些测试人员提供了一个可用的环境,让他们可以利用互联网云和各种可能出现的情况,使用真实的网络和桌面。”

    对新测试工具的需求

    Drogseth认为现在需要新型测试工具。“你不能再使用为LAN或独立服务器准备的测试工具来进行云计算。所以,我们需要可以让我们了解网络和桌面等相关问题的工具。我们要让开发人员进入网络环境。”

    Lounibos也认为,“在将来五年的时间里,所有的测试工具供应商都会进入到云领域。届时将产生新一代的测试公司。云计算是一块有巨大潜力的市场,因为这就是我们使用服务的方式。”

  • Jmeter测试报表相关参数说明(转载)

    2009-03-09 17:46:39

    采用Jmeter测试工具对web系统作的负载测试,得出的响应报表,数据比较难懂,现作一具体说明。

    以下是在一次具体负载测试中得出的具体数值,测试线程设置情况为:线程数:200,等待时间(ramp-up):0秒,循环次数为永远,另:线程组——这些元件用于指定运行的线程数和等候周期。每个线程模拟一个用户,而等候周期用于指定创建全部线程的时间。例如,线程数为5,等候时间为10秒,则创建每个线程之间的时间间隔为2秒。循环数定义了线程的运行时间。使用调度器,还可以设置运行的起始时间。  取样器——对于服务器HTTP、FTP或LDAP请求,这些元件是可配置请求。该教程仅侧重于Web Services请求。  监听器——这些元件用于请求数据的后期处理。例如,可以将数据保存到文件或用图表来说明结果。此时JMeter图表并没有提供许多配置选项;然而它是可扩展的,它始终可以添加额外的可视化效果或数据处理模块。  得出的图形报表和聚合报告如下所示:  

    一、 图形报表

     

    图表底部参数的含义如下:  样本数目是总共发送到服务器的请求数。  最新样本是代表时间的数字,是服务器响应最后一个请求的时间。  吞吐量是服务器每分钟处理的请求数。  平均值是总运行时间除以发送到服务器的请求数。  中间值是代表时间的数字,有一半的服务器响应时间低于该值而另一半高于该值。  偏离表示服务器响应时间变化、离散程度测量值的大小,或者,换句话说,就是数据的分布。

  • LoadRunner8.2不支持IE7.0

    2009-03-06 16:42:58

    错误提示:The default browser registered at this machine is not supported by the Web VUser recorder.Please change the recording options or select another default browser.

    在安装完LR8.2开始准备录制时也许会出现以上的错误,出现上面错误又两种可能,一种是您使用的浏览器没有将IE设置为默认的浏览器,在IE浏览器的Tools的设置中更改一下即可。不过由于这种原因导致LR不能正常录制的可能性比较小。很大的可能是因为您正使用的IE7浏览器,而HP官方已经解释LR8.2是不能支持IE7录制脚本的,所以,您的解决方案是:升级LR8.2至LR9.0或者给LR8.2打FP4的补丁。鉴定完毕

     

  • IE7.0访问QC解决方案

    2009-01-09 14:36:03

    在装了IE7.0后不能访问Mercury Quality Center了,IE上报告的错误是:

    Microsoft Internet Explorer : 4.0 (compatible; MSIE 7.0; Windows NT 5.1; .NET CLR 1.1.4322; .NET CLR 2.0.50727; CIBA) is not supported!

    造成这个问题的主要原因时,目前Mercury不支持IE7.0,所以我们的解决方法就是更改注册表,使QC认为当前系统使用的BROWSER是IE7.0.


    更改注册表项目的列表:
    Windows Registry Editor Version 5.00

    [HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Internet Settings\5.0\User Agent]
    "Version"="MSIE 6.0"
    "Platform"="Windows NT 5.1"

    [HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Internet Settings\User Agent\Post

    Platform]
    "SV1"=""

    [HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Internet Explorer\Version Vector]
    "IE"="6.0000"

    [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Internet Settings\5.0\User Agent]
    "Version"="MSIE 6.0"
    "Platform"="Windows NT 5.1"

    [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Internet Settings\User Agent\Post Platform]
    "SV1"=""

    [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer\Version Vector]
    "IE"="6.0000"

    可以直接在注册表里修改,也可以把以上文件存为IE6.reg文件,然后双击执行,注册表即会自动更改。然后关掉IE重启,再尝试连接QC即可,或者重启电脑(推荐)然后打开IE,尝试连接QC, over!

  • 测试工具大全(转载)

    2008-10-23 11:08:36

    1、 从测试功能上分
    (1)单元测试
    针对不同语言,如JUNIT
    (2)功级测试
    E—Test:功能强大,由于不是采用POST URL的方式回放脚本,所以可以支持多内码的测试数据(当然要程序支持),基本上可以应付大部分的WEB SITE。
    MI公司的WINRUNNER
    COMPUWARE的QARUN
    RATIONAL的SQA ROBOT
    (3)压力测试
    MI公司的WINLOAD
    COMPUWARE的QALOAD
    RATIONAL的SQA LOAD
    (4)负载测试
    LOADRUNNER
    RATIONAL VISUAL QUANTIFY
    (5)WEB测试工具
    MI公司的ASTRA系列
    RSW公司的E—TEST SUITE等
    (6)WEB系统测试工具
    WORKBENCH
    WEB APPLICATION STRESS TOOL(WAS)
    (7)数据库测试工具
    TESTBYTES
    (8)回归测试工具
    RATIONAL TEAM TEST
    WINRUNNER
    (9)嵌入式测试工具
    ATTOLTESTWARE。是ATTOLTESTWARE公司的自动生成测试代码的软件测试工具,特别适用于嵌入式实时应用软件单元和通信系统测试。
    CODETEST是AppliedMicrosystemsCorp.公司的产品,是广泛应用的嵌入式软件在线测试工具。
    GammaRay。GammaRay系列产品主要包括软件逻辑分析仪GammaProfiler、可靠性评测工具GammaRET等。
    LogiScope是TeleLogic公司的工具套件,用于代码分析、软件测试、覆盖测试。
    LynxInsure++是LynxREAL-TIMESYSTEMS公司的产品,基于LynxOS的应用代码检测与分析测试工具。
    MessageMaster是ElviorLtd.公司的产品,测试嵌入式软件系统工具,向环境提供基于消息的接口。
    VectorCast是VectorSoftware.Inc公司的产品。由6个集成的部件组成,自动生成测试代码,为主机和嵌入式环境构造可执行的测试架构。
    (10)系统性能测试工具
    Rational Performance
    (11)页面链接测试
    Link Sleuth
    (12)测试流程管理工具
    Test Plan Control
    (13)测试管理工具
    TestDirector
    Rational公司的Test Manager
    Compuware公司的QADirector
    TestExpert:是Silicon Valley Networks公司产品的测试管理工具,能管理整个测试过程,从测试计划、测试例程、测试执行到测试报告。
    (14)缺陷跟踪工具
    TrackRecord等
    (15)其他测试工具包
    TestVectorGenerationSystem是T—VECTechnologies公司的产品。提供自动模型分析、测试生成、测试覆盖分析和测试执行的完整工具包,具有方便的用户接口和完备的文档支持。
    TestQuestPro是TestQuest公司的非插入码式的自动操纵测试工具,提供一种高效的自动检测目标系统,获取其输出性能的测试方法。
    TestWorks是SoftwareResearch.Inc公司的一整套软件测试工具,既可单独使用,也可捆绑销售使用。
    2、 从测试的方法上分:
    白盒测试工主要有:Numega、PuRe、软件纠错工具(Rational Purify)。
    内存资源泄漏检查:
    Numega中的BounceChecher
    Rational的 Purify等
    代码覆盖率检查:
    Numega的TrueCoverage
    Rational的PureCoverage
    TeleLogic公司的LogiScope
    Macabe公司的Macabe
    代码性能检查:
    Numega的TrueTime
    Rational的Quantify等
    代码静态度量分析度量检查工具:LogiScope和Macabe等
    黑盒测试工具主要有:QACenter、SQATeamTest、Rational Visual Visual Test。
    QACenter: QACenter帮助所有测试人员创建一个快速、可重用的测试过程。这些测试工具自动帮助管理测试过程、快速分析和调试程序,包括针对回归、强度、单元、 并发、集成、移植,容量和负载建立测试用例,自动执行测试和产生文档结果。QACenter主要包括以下几个模块:
     QARun:应用的功能测试工具。
     QALoad:强负载下应用的性能测试工具。
     QADirector:测试的组织设计和创建以及管理工具。
     TrackRecord:集成的缺陷跟踪管理工具。
     EcoTools:高层次的性能监测工具。
    3、部分具体测试工具的介绍
    (1)、性能优化工具EcoScope
        EcoScope 是一套定位于应用(即服务提供者本身)及其所依赖的所有网络计算资源的解决方案。    EcoScope可以提供应用视图,并标出应用是如何与基础架构相关联的。这种视图是其他网络管理工具所不能提供的。EcoScope能解决在大型企业复 杂环境下分析与测量应用性能的难题。通过提供应用的性能级别及其支撑架构的信息,EcoScope能帮助IT部门就如何提高应用性能提出多方面的决策方 案。
    EcoScope的应用主要表现在以下几个方面:
     确保成功部署新应用
     维护性能的服务水平
     加速问题检测与纠正的高级功能
     定制视图有助于高效地分析数据
    (2)、数据库测试数据自动生成工具——TestBytes
        在数据库开发的过程中,为了测试应用程序对数据库的访问,应当在数据库中生成测试用例数据,我们可能会发现当数据库中只有少量数据时,程序可能没有问题, 但是当真正投入到运用中产生了大量数据时就出现问题了,这往往是因为程序的编写没有达到,所以一定及早地通过在数据库中生成大量数据来帮助开发人员完善这 部分功能和性能。
        TestBytes是一个用于自动生成测试数据的强大易用的工具,通过简单的点击式操作,就可以确定需要生成的数据类型(包括特殊字符的定制),并通过与 数据库的连接来自动生成数百万行正确的测试数据,可以极大地提高数据库开发人员、QA测试人员、数据仓库开发人员、应用开发人员的工作效率。
    (3)、PC—LINT
        PC—LINT 主要进行更严格的语法检查功能,还完成相当程度的语义检查功能。可以这样认为:PC—LINT是一个更加智能、更加严格的编译器。PC—LINT在实现语 法和某些语义规则检查时,是通过参数配置完成的,它的选项就有数百个之多,因此,在使用PC—LINT过程中,了解选项的含义也很重要。
    (4)、TCL
        TCL是Tool Command Language的缩写,它是一种很流行的脚本解释器,尤其在测试领域,它的最大特点是可移植性好,接口简单,方便,可以很容易地嵌入到软件中,作为自己的解释器使用。
        TCL提供两种接口:编程接口和用户接口。编程接口是通过LIB或DLL形式提供的,提供了一些函数(命令)供调用,包括:分配一个解释器指针(对象);初始化解释器(指针);注册扩展函数等。用户接口很简单,即编写的脚本,脚本里面包含对扩展命令的调用。
    (5)VB测试工具:VB Watch
    (6)Java 程序的测试工具
    1)Bean—Test
    2)EJBQuickTest
    3)JStyle
    4)JTest
    5)HttpUnit
    6)JUnit
    (7)、覆盖测试
    C—Cover
    C—Cover是一个测试工具软件,用来找出没有被测到的代码,并报告测试的覆盖率。C—Cover
    只支持C/C++的代码覆盖率分析,其它语言不支持。但不受OS的限制。
    单元测试方面:(对开发人员比较有用) J-Unit工具。
    功能测试方面:E-test是个不错的选择,功能很强大,由于不是采用Post URL的方式回放脚本,所以可以支持多内码的测试数据(当然要程序支持)。基本上可以应付大部分的Web Site。
        如果只是利用脚本回放代替手工劳动,或者做对页面响应数的性能测试,Microsoft Web Application Stress Tool是个不错的选择。
        另外,在性能测试方面,PureLoad也是一个不错的工具,完全用Java写成,可以测试各种C/S程序,如SMTP Server等。这两个工具都是使用Post URL的方法测试Web Application的。对大量使用Javascrīpt的页面不太适合。当然,如果程序在Unix,linux下面运行的话,可以直接编写Shell 脚本程序,更加方便。
        另外,还有很多专门的工具,比如说Linkbot是专门作页面链接测试的。
        另外,测试流程管理工具也有不少,个人用过也一直在用的是Test Plan Control,短小精悍,不错。至于WinRunner和LoadRunner之类,因为没有License,所以都没怎么用过,惭愧。不过我看过一篇 英国人评价英国测试市场上最流行的五个软件的文章。WinRunner得分最高。
    测试工具从测试的方法上可以分为两种:白盒测试和黑盒测试
    白盒测试工具主要有:
    内存资源泄漏检查:Numega中的bouncechecker,Rational的Purify等
    代码覆盖率检查:Numega中的truecoverage,Rational的Purecoverage,Telelogic公司的 logiscope, Macabe公司的Macabe等
    代码性能检查:Numega中的truetime,Rational的Quantify等
    代码静态度量分析质量检查工具:logiscope和Macabe等
    黑盒测试工具主要有:客户端功能测试:MI公司的winrunner,compuware的qarun,Rational的SQA robot等等
    服务器端压力性能测试: MI公司的winload,compuware的qaload,Rational的SQA load等等
    Web测试工具:MI公司的Astra系列,rsw公司的e-test suite等等
    测试管理工具:rational的test manager,compuware的qadirector等等,此外还有缺陷跟踪工具 trackrecord等。
    数据库测试工具:TestBytes
    黑盒测试工具:QACenter、SQATeamTest,Rational Viaual Test。
    回归测试工具:Rational TeamTest,WinRunner(MI公司)
    WEB系统测试工具:TEST,Workberch,Web Appication Stress Tool(WAS)
    白盒测试工具:Numega 、PuRe、软件纠错工具(Rational Purity)。
    嵌入式测试工具:Logiscope(静态测试工具)、CodeTest。
    系统负荷测试工具:RationalPerformance
    涵盖测试工具范围评估工具
    软件性能测试工具:LoadRunner(MI产品)、Rational Visual Qantify
    测试管理工具:TestDirector(MI产品支持整个生命周期中测试流程管理)
Open Toolbar