专注于互联网--专注于架构

最新标签
网站地图
文章索引
Rss订阅

首页 »软件测试 » 网站打开速度测试:打开BOSS应用软件Software测试的死结 »正文

网站打开速度测试:打开BOSS应用软件Software测试的死结

来源: 发布时间:星期日, 2009年8月16日 浏览:20次 评论:0
  作为运营商核心生产系统的BOSS系统稳定性运行非常关键其每次发生重大故障都会引起运营商严重经济损失而BOSS系统稳定运行和应用开发/集成商提供应用软件Software本身稳定性密切相关甚至可以不夸张地认为目前国内BOSS系统大部分稳定性问题主要集中在BOSS应用软件Software不稳定上

  何谓系统稳定性?无非就是这 3方面:系统功能稳定不要动辄操作失败;系统运行效率好实时性高;系统运行平稳不要动辄重启甚至宕机而要做到这 3方面不对应用软件Software进行充分测试,是无法保证

  那么为什么BOSS应用软件Software测试没有做好?如何解决这个问题?

  从运营商角度理解是开发/集成商没有对软件Software进行充分测试导致系统出现大量BUG所以开发/集成商应该加强测试从而提高自身软件Software质量如果说开发/集成商要提高自身软件Software价值必须首先提高自身软件Software质量这是简单、勿庸置疑道理

  而从开发/集成商角度来理解是运营商业务需求繁杂多变开发周期短难以进行充分测试即被迫匆匆上线而且目前BOSS软件Software报价般仅考虑开发成本无法考虑包括测试环境、测试工具等成本要搭建这些测试环境、引入这些测试工具将消耗几倍于现在开发成本所以无法也无力进行严格软件Software测试要加强测试提高质量首先要运营商给予更大成本空间否则无法实现

  这是个典型“鸡”和“蛋”问题看起来是个死结难以解开本文就是从分析当前BOSS应用软件Software测试方面存在问题入手立足于实际可操作角度对如何打开这个“死结”做出积极探讨

  应用软件Software不稳定问题整理总结

  在BOSS实际建设和维护过程中有关应用软件Software导致系统不稳定(主机、存储等设备数据库、中间件等系统软件Software导致不稳定本文不作讨论)可以大致归结为以下几种

  1.新上线系统BUG过多功能不稳定某个新系统上线后才发现应用软件SoftwareBUG很多营业员时不时操作失败而又不是每次都操作失败让人难以琢磨该系统“性格”

  2.新上线业务功能导致原有正常业务功能出错这可以说是BOSS系统维护中最常发生不稳定问题实际上就是新功能开发时只对新功能进行了测试而没有对原有功能影响进行测试导致上线前没有发现问题而仓促上线所致

  3.新上线业务越来越多系统越来越慢直至系统宕机这属于典型性能、压力测试和分析不够并进而对系统支撑业务能力估算不足所致

  这 3个问题从另个角度来看可以理解为解决当前BOSS应用软件Software测试问题 3个步骤首先必须加强上线前开发/集成商软件Software测试建立完整测试流程和测试环境这样才能解决新上线系统BUG过多问题;其次在此基础上对每个新上线业务功能除了执行新功能本身测试外还通过建立丰富测试用例库来确保执行严格功能回归测试才能确保新上线业务没有对原有正常业务功能产生不良影响;最后有了这些测试流程、测试环境、测试用例库才可以进行严格性能测试和分析为新业务上线对系统荷载造成影响进行科学客观分析从而准确地把握系统实际运行荷载变化趋势并进而尽早发现系统支撑能力“临界点”最终做到对系统宕机现象“防患于未然”

  下面将对这 3个步骤进行深入剖析和阐述

  打开死结 3个步骤

  、第步:加强上线前开发/集成商软件Software测试

  有关“新上线系统BUG过多功能不稳定”这毋庸置疑就是开发/集成商对新开发应用软件Software没有在系统上线前做足够充分测试从而没有在上线前发现并解决足够BUG如何解决这个问题在当前现实市场条件下则需要开发/集成商、运营商双方面努力

  1.要做好具体工作

  为了做好软件Software测试开发/集成商需要做好这些具体工作内容

  1)建立真正完整而务实测试工作流程在“玩”测试这个“游戏”的前首先要确定如何测试游戏规则其内容包括:测试工作分为几个阶段;这些阶段工作内容分别如何和开发对应;在各个阶段测试人员如何和开发人员交互;测试发现BUG如何落实解决;测试争议如何解决;测试环境如何维护;测试软件Software版本如何获取;测试版本和开发版本的间又如何交互演进;软件Software发布标准如何依赖测试结果等

  2)组建技术、业务均合格并掌握测试思路方法论独立测试队伍设计出个完整、务实、适应于本企业内部环境和文化测试流程只需要依赖企业内部少数熟悉公司内部环境人才就可实现而建立合格测试技术队伍则需要个团队(Team)努力甚至涉及到软件Software企业文化改变这是软件Software企业当前最难解决问题目前现状无论是高校还是社会普遍没有形成有效软件Software测试人员培养经验甚至连起码认识都欠缺

  3)引入适当测试工具软件Software方面即使针对正在研发中软件Software由于在开发过程中不断引入变更(发现进行变更业务需求变化引起变更等)对于已经测试通过功能也需要在每次修改代码后进行回归测试只有这样才能保证即使在代码不断修改情况下软件Software发布时相应功能测试仍然是通过而这种回归测试工作量非常的巨以至于如果完全人工来做是不可能实际做到方面对于像内存泄漏、Core Dump、性能压力等方面测试如果全部采用人工进行也将变得非常困难和低效为此开发/集成商需要引入相应自动化测试(包括自动回归、模拟压力、代码分析等)工具才能真正做好测试

  4)搭建完整测试环境没有开发环境就没法开发同样没有测试环境就无法测试测试环境的于开发环境区别方面是测试环境下不会修改任何代码而是测试人员利用开发人员提交到源代码版本服务器代码编译而形成可执行软件Software进而进行测绘;另方面测试环境下要始终维护着状态业务数据只有这样才能保证测试用例完整运行(般来说每个测试用例运行完成后它要保证下次该用例在同样测试数据上仍然能够运行成功否则无法执行自动回归测试)

  5)工程进度紧张情况下确保测试完整性由于实际市场压力现有大部分BOSS系统建设进度压力都非常大这直接导致软件Software测试进度压力也非常大甚至变得不现实必须考虑如何结合实际情况确保在非常紧张进度压力下仍然能够开展充分测试

  2.工作落实建议

  第、 2项工作是开发/集成商无法推卸责任而且也是其应该能够解决问题至于如何解决则需要依靠开发/集成商自身在管理上努力般来说建立完整务实测试流程和组建技术、业务均合格并掌握测试思路方法论独立测试队伍少则1年、多则2、3年才能真正实现

  第 3个引入测试工具软件Software工作存在这样落实难点:限于当前国内应用软件Software现实价格平开发/集成商般无力承担这些测试工具昂贵代价(根据BOSS软件Software开发队伍规模其至少 3、 4十人以上需要购买测试工具license价格动辄上百万美元而目前BOSS应用软件Software总体价格不过才几十万美元)如MercuryWinRunner/ LoadRunner/ TestDirector系列等或IBMRational系列工具等实际上直至今日甚至很多开发/集成商连开发工具都是依赖运营商去购买比较现实建议还是通过运营商采购、开发/集成商使用方式来解决这个矛盾当然具体采用哪些工具采用什么样测试工作流程这是需要开发/集成商来提出方案并由运营商认可

  第 4个搭建测试环境工作和测试工具软件Software类似相对于目前应用软件Software现实价格这些设备和软件Software价格都太昂贵开发/集成商目前根本无力承担购买和维护套这样完整环境代价测试环境涉及到UNIX主机、存储、网络等昂贵硬件设备而且开发/集成商要开发运行于各种主流UNIX主机平台应用软件Software还必须拥有各种主流主机台才能真正解决问题这个问题同样只有通过运营商来解决建议可以在设计BOSS系统方案时就考虑到这部分设备提供这样就可以让开发/集成商开发测试依赖于运营商提供测试环境

  根据以往BOSS系统建设经验方面往往在系统建设方案中对测试环境所需要设备、系统软件Software考虑不足方面也没有严格区分开发环境和测试环境区别为了做好这个工作建议运营商和开发/集成商在系统方案设计的初就充分考虑这部分投入般来说相对运行环境只需要考虑个按比例缩小、具有典型代表意义测试环境方案即可

  事实上有关第 3、 4两个问题实际解决目前国内已经不乏这样成功操作案例

  最后个有关测试进度压力问题我们稍微研究即可发现:般来说由于测试主要侧重于“黑盒”测试而“黑盒”测试必须依赖于软件Software集成成功基础上为此就造成了测试往往都是在开发结束后才开始而这时往往都快要到系统上线时间了这就导致了测试进度被压缩再压缩、测试内容被简化再简化情况出现那么是否有什么思路方法可以让测试进度尽可能提前?近几年发展起来极限编程理论中个现成思路方法可以解决该问题——持续集成而这个思路方法在微软等著名软件Software公司其实很早就有了很长时间、针对大型软件Software项目成功运用经验(在微软它被称为“每日编译”)对于BOSS系统建设建议也采用这种思路方法论来执行测试从而通过尽可能早地开始软件Software测试来确保紧张进度压力下充分测试


  作为运营商核心生产系统的BOSS系统稳定性运行非常关键其每次发生重大故障都会引起运营商严重经济损失而BOSS系统稳定运行和应用开发/集成商提供应用软件Software本身稳定性密切相关甚至可以不夸张地认为目前国内BOSS系统大部分稳定性问题主要集中在BOSS应用软件Software不稳定上

  何谓系统稳定性?无非就是这 3方面:系统功能稳定不要动辄操作失败;系统运行效率好实时性高;系统运行平稳不要动辄重启甚至宕机而要做到这 3方面不对应用软件Software进行充分测试,是无法保证

  那么为什么BOSS应用软件Software测试没有做好?如何解决这个问题?

  从运营商角度理解是开发/集成商没有对软件Software进行充分测试导致系统出现大量BUG所以开发/集成商应该加强测试从而提高自身软件Software质量如果说开发/集成商要提高自身软件Software价值必须首先提高自身软件Software质量这是简单、勿庸置疑道理

  而从开发/集成商角度来理解是运营商业务需求繁杂多变开发周期短难以进行充分测试即被迫匆匆上线而且目前BOSS软件Software报价般仅考虑开发成本无法考虑包括测试环境、测试工具等成本要搭建这些测试环境、引入这些测试工具将消耗几倍于现在开发成本所以无法也无力进行严格软件Software测试要加强测试提高质量首先要运营商给予更大成本空间否则无法实现

  这是个典型“鸡”和“蛋”问题看起来是个死结难以解开本文就是从分析当前BOSS应用软件Software测试方面存在问题入手立足于实际可操作角度对如何打开这个“死结”做出积极探讨

  应用软件Software不稳定问题整理总结

  在BOSS实际建设和维护过程中有关应用软件Software导致系统不稳定(主机、存储等设备数据库、中间件等系统软件Software导致不稳定本文不作讨论)可以大致归结为以下几种

  1.新上线系统BUG过多功能不稳定某个新系统上线后才发现应用软件SoftwareBUG很多营业员时不时操作失败而又不是每次都操作失败让人难以琢磨该系统“性格”

  2.新上线业务功能导致原有正常业务功能出错这可以说是BOSS系统维护中最常发生不稳定问题实际上就是新功能开发时只对新功能进行了测试而没有对原有功能影响进行测试导致上线前没有发现问题而仓促上线所致

  3.新上线业务越来越多系统越来越慢直至系统宕机这属于典型性能、压力测试和分析不够并进而对系统支撑业务能力估算不足所致

  这 3个问题从另个角度来看可以理解为解决当前BOSS应用软件Software测试问题 3个步骤首先必须加强上线前开发/集成商软件Software测试建立完整测试流程和测试环境这样才能解决新上线系统BUG过多问题;其次在此基础上对每个新上线业务功能除了执行新功能本身测试外还通过建立丰富测试用例库来确保执行严格功能回归测试才能确保新上线业务没有对原有正常业务功能产生不良影响;最后有了这些测试流程、测试环境、测试用例库才可以进行严格性能测试和分析为新业务上线对系统荷载造成影响进行科学客观分析从而准确地把握系统实际运行荷载变化趋势并进而尽早发现系统支撑能力“临界点”最终做到对系统宕机现象“防患于未然”

  下面将对这 3个步骤进行深入剖析和阐述

  打开死结 3个步骤

  、第步:加强上线前开发/集成商软件Software测试

  有关“新上线系统BUG过多功能不稳定”这毋庸置疑就是开发/集成商对新开发应用软件Software没有在系统上线前做足够充分测试从而没有在上线前发现并解决足够BUG如何解决这个问题在当前现实市场条件下则需要开发/集成商、运营商双方面努力

  1.要做好具体工作

  为了做好软件Software测试开发/集成商需要做好这些具体工作内容

  1)建立真正完整而务实测试工作流程在“玩”测试这个“游戏”的前首先要确定如何测试游戏规则其内容包括:测试工作分为几个阶段;这些阶段工作内容分别如何和开发对应;在各个阶段测试人员如何和开发人员交互;测试发现BUG如何落实解决;测试争议如何解决;测试环境如何维护;测试软件Software版本如何获取;测试版本和开发版本的间又如何交互演进;软件Software发布标准如何依赖测试结果等

  2)组建技术、业务均合格并掌握测试思路方法论独立测试队伍设计出个完整、务实、适应于本企业内部环境和文化测试流程只需要依赖企业内部少数熟悉公司内部环境人才就可实现而建立合格测试技术队伍则需要个团队(Team)努力甚至涉及到软件Software企业文化改变这是软件Software企业当前最难解决问题目前现状无论是高校还是社会普遍没有形成有效软件Software测试人员培养经验甚至连起码认识都欠缺

  3)引入适当测试工具软件Software方面即使针对正在研发中软件Software由于在开发过程中不断引入变更(发现进行变更业务需求变化引起变更等)对于已经测试通过功能也需要在每次修改代码后进行回归测试只有这样才能保证即使在代码不断修改情况下软件Software发布时相应功能测试仍然是通过而这种回归测试工作量非常的巨以至于如果完全人工来做是不可能实际做到方面对于像内存泄漏、Core Dump、性能压力等方面测试如果全部采用人工进行也将变得非常困难和低效为此开发/集成商需要引入相应自动化测试(包括自动回归、模拟压力、代码分析等)工具才能真正做好测试

  4)搭建完整测试环境没有开发环境就没法开发同样没有测试环境就无法测试测试环境的于开发环境区别方面是测试环境下不会修改任何代码而是测试人员利用开发人员提交到源代码版本服务器代码编译而形成可执行软件Software进而进行测绘;另方面测试环境下要始终维护着状态业务数据只有这样才能保证测试用例完整运行(般来说每个测试用例运行完成后它要保证下次该用例在同样测试数据上仍然能够运行成功否则无法执行自动回归测试)

  5)工程进度紧张情况下确保测试完整性由于实际市场压力现有大部分BOSS系统建设进度压力都非常大这直接导致软件Software测试进度压力也非常大甚至变得不现实必须考虑如何结合实际情况确保在非常紧张进度压力下仍然能够开展充分测试

  2.工作落实建议

  第、 2项工作是开发/集成商无法推卸责任而且也是其应该能够解决问题至于如何解决则需要依靠开发/集成商自身在管理上努力般来说建立完整务实测试流程和组建技术、业务均合格并掌握测试思路方法论独立测试队伍少则1年、多则2、3年才能真正实现

  第 3个引入测试工具软件Software工作存在这样落实难点:限于当前国内应用软件Software现实价格平开发/集成商般无力承担这些测试工具昂贵代价(根据BOSS软件Software开发队伍规模其至少 3、 4十人以上需要购买测试工具license价格动辄上百万美元而目前BOSS应用软件Software总体价格不过才几十万美元)如MercuryWinRunner/ LoadRunner/ TestDirector系列等或IBMRational系列工具等实际上直至今日甚至很多开发/集成商连开发工具都是依赖运营商去购买比较现实建议还是通过运营商采购、开发/集成商使用方式来解决这个矛盾当然具体采用哪些工具采用什么样测试工作流程这是需要开发/集成商来提出方案并由运营商认可

  第 4个搭建测试环境工作和测试工具软件Software类似相对于目前应用软件Software现实价格这些设备和软件Software价格都太昂贵开发/集成商目前根本无力承担购买和维护套这样完整环境代价测试环境涉及到UNIX主机、存储、网络等昂贵硬件设备而且开发/集成商要开发运行于各种主流UNIX主机平台应用软件Software还必须拥有各种主流主机台才能真正解决问题这个问题同样只有通过运营商来解决建议可以在设计BOSS系统方案时就考虑到这部分设备提供这样就可以让开发/集成商开发测试依赖于运营商提供测试环境

  根据以往BOSS系统建设经验方面往往在系统建设方案中对测试环境所需要设备、系统软件Software考虑不足方面也没有严格区分开发环境和测试环境区别为了做好这个工作建议运营商和开发/集成商在系统方案设计的初就充分考虑这部分投入般来说相对运行环境只需要考虑个按比例缩小、具有典型代表意义测试环境方案即可

  事实上有关第 3、 4两个问题实际解决目前国内已经不乏这样成功操作案例

  最后个有关测试进度压力问题我们稍微研究即可发现:般来说由于测试主要侧重于“黑盒”测试而“黑盒”测试必须依赖于软件Software集成成功基础上为此就造成了测试往往都是在开发结束后才开始而这时往往都快要到系统上线时间了这就导致了测试进度被压缩再压缩、测试内容被简化再简化情况出现那么是否有什么思路方法可以让测试进度尽可能提前?近几年发展起来极限编程理论中个现成思路方法可以解决该问题——持续集成而这个思路方法在微软等著名软件Software公司其实很早就有了很长时间、针对大型软件Software项目成功运用经验(在微软它被称为“每日编译”)对于BOSS系统建设建议也采用这种思路方法论来执行测试从而通过尽可能早地开始软件Software测试来确保紧张进度压力下充分测试
0

相关文章

读者评论

发表评论

  • 昵称:
  • 内容: