软件测试质量管理

2024-05-29

软件测试质量管理(精选12篇)

软件测试质量管理 篇1

梁杰东软集团

软件产品质量的好坏直接决定着一个软件企业的命运。作为软件质量保障的重要手段, 软件测试成为了软件生命周期中一个重要环节。

“工欲善其事, 必先利其器”。要做好测试工作, 首先需要建立并维护一个高效的测试团队。

一、成功测试者的特质

人是测试工作中最有价值也是最重要的资源, 没有一个合格的、积极的测试团队, 测试就不可能实现。为高质高效地完成测试任务, 好的测试者应具有如下能力: (这份特质清单是基于经验和观察, 而不是基于严格的科学依据) 。

1. 自信心

2. 怀疑精神

3. 沟通能力

4. 技术能力测试团队需要许多领域的

专家, 诸如数据库、通信、网络、GUI测试、测试工具、自动化测试脚本和相关业务领域的专家。因此, 测试者须拥有一项或多项的技术专长。

5. 外交能力

6. 很强的记忆力一个理想的测试者应

该有能力将以前曾经遇到过的类似的错误从记忆深处挖掘出来, 这一能力在测试过程中的价值是无法衡量的。因为许多新出现的问题和我们已经发现的问题相差无几。

7. 自我督促能力

8. 洞察力和耐心

9. 组织技能每当执行一个软件项目的

测试计划, 几乎不可能不遇到至少会阻碍一些测试而必须解决的缺陷。一个测试者应当能灵活地停止测试产品的一部分而开始测试其他部分。灵活, 能够快速地转到测试一个新产品上, 甚至为了另一个优先级较高的产品而放下手头正在测试的产品。

1 0. 学习能力拥抱新技术的热望和知识面广而且能不断更新知识, 能够快速地学习新技术。

1 1. 计划能力能够设计和执行一步一步的过程。

1 2. 能够承受无休止的压力测试工作位

于开发过程的后半段, 将处在一种充满压力环境中。由于项目周期的安排, 产品交付的日期的临近, 测试者面临巨大的压力。如何在计划的时间内完成测试任务、交出合格的产品, 测试者需要能承受无休止的压力。

1 3. 既有大局观, 又能根据需要关注细节, 总体理解产品。

二、测试团队的组建可能在测试行业

中有一些耀眼的明星测试者, 他们是测试者的楷模。但更常见的情况是, 组成优秀测试团队的人员拥有各自不同的技能背景。有必要认识到的是没有一个人能全部拥有这些特质, 因此测试团队作为整体应该尽可能多地拥有这些特质。

明确测试团队内部各类测试人员的职责分工可以使测试团队内部各类测试人员能集中精力在较短的时间内完成特定岗位必需的知识储备和经验积累, 同时也使得测试团队的管理更科学, 真正做到“用其所长, 避其所短”。

三、测试团队制度建设

良好的制度可以规范测试团队的工作开展, 同时也便于对团队成员进行业绩考评。相反, 则很有可能导致人心涣散, 滋长负面风气。建设良好的测试团队制度, 可以考虑以下几个方面:

1. 汇报制度团队成员汇报本周工作情

况及下周工作计划、遇到的问题以及需要提供的帮助, 培养团队成员的汇报及计划习惯。

2. 工作总结制度成员每个阶段汇报上

阶段工作经验和教训, 并在部门例会上交流、分享经验及教训, 避免同样的问题重复出现。

3. 奖惩制度对于贡献突出的成员予以奖励, 对于业绩差的提出批评, 有效地保持测试团队的工作热情。

4. 测试件审核制度

对测试件进行审核, 去粗存精, 鼓励测试人员使用和提出改进, 保证提交到测试团队知识库的测试件的质量。

5. 会议制度

定期召开部门例会, 讨论、解决工作中的问题, 并提供部门内的学习平台。

四、团队成员能力的逐步提高

有了明确、合理的职责分工后, 需要针对这些分工对团队成员进行有意识的引导, 稳步提升团队成员的技能。测试团队负责人需要负起监督和促进员工能力提升的任务。监督和促进测试团队成员能力提高, 主要做好如下三个方面的工作:一是, 提倡资深测试人员在测试团队内部进行经常性的培训和测试经验交流, 通过该渠道帮助资历浅的测试人员大幅提升业务技能, 做到新老员工之间的知识传播和继承。二是, 测试团队应充分利用好测试件知识库, 对于纳入到测试团队知识库的测试件应充分消化和学习, 在此基础上进一步鼓励测试团队成员对这些测试件提出改进性意见。三是, 测试人员除了需要注重自身的测试技能提升, 在条件许可的情况还应适度开发部门的基本知识, 这样能减少与开发团队协同工作时的领域障碍。

五、测试技能培训

对于管理人员, 主要进行《软件测试管理与团队建设》、《职业经理人培训》。

对于测试工程师, 内部主要进行行业业务知识培训和软件工程方面的培训。外部主要进行测试基础理论知识、软件开发测试基本流程、软件同行评审、软件需求跟踪、软件缺陷管理、软件配置管理、软件系统测试计划、软件测试方案、软件测试日报和报告写作、软件需求评审、软件测试需求分析方法、软件系统测试用例设计、性能测试的基本概念、性能测试的重要性、性能测试的目的、常用性能测试工具介绍、性能测试的步骤、性能测试的种类、性能测试策略、用例设计、性能测试脚本开发、场景运行、性能测试结果分析等。

六、测试管理项目经理制

测试管理实行项目经理制, 每一个项目的测试工作做为一个项目来对待, 测试负责人即为此项目的项目经理, 对测试需求调研、测试设计、测试执行、测试验收、测试报告、测试满意度调查整个过程进行控制和管理。

七、完善公司测试知识库

完善公司测试知识库, 建立典型的软件故障模型库、公共测试用例库, 重点是W E B应用系统的故障模型库。建立成充实和完善故障模型库的机制, 使其在实际工作中不断被扩展和充实。

八、测试Q A制, 加强测试管理、缺陷跟踪与管理工作

利用TD软件的优势, 加强测试需求管理、测试用例管理、软件缺陷管理的一整化和统一集成, 创建统一的测试管理平台;监控测试工作质量;使测试管理工作科学化、信息化和高效化, 提升测试管理水平。

九、进行测试团队建设与组织机构调整、职业生涯规划

为了更好地发挥测试的软件质量保障作用, 公司需要在现有基础上, 进一步扩大测试队伍, 提高现有测试人员的测试水平;制定一套科学合理的测试人员职业生涯发展规划, 完成公司软件测试手册。

十、质量意识、测试知识宣传

通过电子期刊、报刊、壁板报、网站等方式进行质量意识、测试知识的宣传, 以提高整个胜软公司的质量管理意识, 增加相关人员的软件测试知识和水平。

十一、测试管理项目内部启动测试团队内部成立内部项目组, 利用业余时间对于测试工作进行需求调研分析, 并进行可行性分析, 准备用2年左右时间, 采用测试团队全员参与的方式, 将公司测试工作全部信息化。

十二、完成测试配置管理制定科学合理、可操作性强的测试团队配置管理规范, 做到使测试团队的工程师工作有依据, 过程有记录, 学习有资料, 经验有共享;完成测试配置管理员手册。

十三、完成量化绩效考核制定科学合理、公平公正的绩效考核制度, 将测试工作分类量化考核。

软件测试质量管理 篇2

主持人:朱文龙滕亮王馨悦孙丽娜王海晶(互动活动)

主持人开场,介绍嘉宾:学院领导及任课老师10分钟

学院领导致词7分钟晚会节目正式开始:

1.民歌独唱:《大地飞歌 》表演者:王灵针3分钟

2.印度风情舞表演者:杨雅茹3分钟

3.三句半《新年好》表演者:赵冬 杨柳青 李伟男王宵楠5分钟

4.歌曲《老男孩》表演者:于佳 卢立诗4分钟

陶笛独奏表演者:卢立诗3分钟

5.相声《跟我学相声 》表演者:崔辉 朱文龙7分钟

6.民歌独唱《芦花》表演者:徐灵芸4分钟

7.情景小品《甄嬛外传》表演者:时宇婷 刘凤 田晓 刘鑫洋 刘军 王宵楠

10分钟

8.互动活动时间20分钟

9.男生合唱《水手》表演者:张华 王嘉伟4分钟

10.诗朗诵《我们》表演者:王金生 崔辉 赵文斌5分钟

11.街舞表演表演者:5分钟

12.歌舞《护花使者 + 爵士现代舞》 表演者:王金生 杨雅茹 时宇婷 田晓

郭艳艳 刘凤7分钟

13.双截棍表演表演者:姜伟3分钟

14.歌曲串烧表演者:匡开平姜胜斌 王灵针 王馨悦 时宇婷10分钟

15.大合唱《相亲相爱一家人》表演者:匡开平姜胜斌 王灵针 王馨悦

时宇婷全体演员10分钟

节目时长:120分钟

主持人报节目串词:20分钟

主持人结束词:10分钟

新年晚会时间:2013.12.18

软件测试质量管理 篇3

关键词:计算机;软件测试;质量监督;

中图分类号:TP311.52 文献标识码:A文章编号:1007-9599 (2011) 08-0000-01

To Enhance the Quality Supervision of Computer Software Test

Zhang Haixin

(Fuzhou University,Yangguang College,Fuzhou305515,China)

Abstract:Computer Software testing is an important computer performance evaluation method is also an important part of software engineering,computer-carrier in the work,the computer software is crucial.How to test the quality of computer monitoring software,computer workers is an important research subject.Software quality goals from the start this on a variety of different software to explore the supervision of the test.

Keywords:Computer;Software test;Quality supervision

一、计算机软件测试质量的目标

计算机的软件工程对从事软件开发的人中来讲,一个很大的冲击就是软件工程针对计算机软件的开发每一个方面都要进行量化。同时,计算机软件的测试也是这样,得有一个明确具体的目标,才能去衡量计算机软件测试和开始的真实水平。无目标的软件测量就好像瞎子摸象,没办法对软件的质量进行评价,也就没法确定测量是不是有效。其质量目标的确定要根据不同的计算机语言来设定,一般来讲,软件测试的质量是用千行缺陷率为单位衡量的。假如测试时出现的错误率比质量目标低,那么就说明测试的效率低,就需要重新对软件测试的用例进行审视,看测试的过程是不是合理的。假如测试时出现的错误率比质量目标高,那么就说明其软件的开发水平低,这就说明以后软件发布和测试会出现其它的错误。所以,在软件测量时发现的错误多则说明其质量也不高。

二、计算机软件测试的说明和测试的计划监督

研制计算机软件的过程中,就要对承制单位是不是按照相应要求进行监督。在计算机软件的需求分析时期就得制定相应的测试计划,在计算机软件总体概要的设计时期就得制定相应的集成测试的计划,在计算机软件具体设计时候制定出相应的测试计划。需要监督起承制的单位针对软件测试的计划评审,并通过评审以后按照测试的计划严格展开测试。一般来讲,软件测试的计划有以下几项内容:一是目的,要提出每一个测试的阶段进行明确的目的。二是标准,对每一个测试的阶段给出一个具体的标准。三是步骤,详细具体的安排每一个测试的时期,列出具体的时间安排,具体到执行、设计软件测试的时间。四是规定责任人,对每一个测试时期,要指定具体的责任人,由谁设计执行和对测试的结果进行分析等等,都要责任到人。五是测试的用例标准化,这主要是要求对测试的具体用例要存储、标识出来。六是测试环境及工具,元宝出测试时的环境和提供的工作,也要制定出相应计划,由谁来得到环境和工具,怎么使用等等。

三、不同软件测试的具体监督

对承制单位从事研究的过程中的各种不同软件测试进行监督,这主要包括软件的系统测试、集成测试和单元测试。

(一)对软件的系统测试监督

测试目的:对软件的系统测试环境是其真实的运行中的模拟,系统测试的时候,各个不同的部分实现研究成功的设备渐渐把模拟器把取代,这样的条件下,容易全面暴露相关的外围设备的接口、输入或输出以及处理器和设备间接口是否相容、系统的时序是否匹配等等细节。其适用的对象是在目标的计算机上所有运行的软件。测试的内容包括以下几个方面:一是系统的安全性;二是系统的可靠性;三是系统的余量;四是系统的强度;五是系统和软件的接口;六是系统的性能;七是系统的功能;八是系统的边界和敏感性;九是系统的边界,即用来测试的软件在系统的输出或输入域和性能及功能界限,以及状态的转换等端点和边限的情况下计算机的运作状态。只有满足以下要求,才算是通过了测试:一是在真实或高度仿真的环境里,计算机软件能够满足软件的需求里的性能和功能要求及对接口的需求说明里的规定要求;二是对发现出来的各种缺陷都被排除,并能顺利通过了软件的二次测试;三是对出现的问题做了详细的描述和记录;四是编写完计算机软件的测试报告并且顺利的通过了评审。

(二)对软件的集成测试监督

软件的集成测试指的是将不同的单元软件装配成高一层次的软件的部件来测试,最终形成整个的软件整体。其目的是为了对单元软件和部件间接口的关系进行检验,并最终把通过测试的部件建造成为符合具体设计的要求。适用对象包括计算机软件的配置项和软件的部件。测试的内容有计算机软件配置项的测试以及软件的部件测试,先对部件测试,然后把通过测试的部件装配成软件的配置项,再进行测试。软件的部件测试内容有部件和单元之间的接口、软件的部件功能、软件的部件性能、全局数据的结构等等;软件的配置项主要测试内容有接口的测试、性能的测试、输出和输入的通道、处理的时间和通信的能力、人机的界面、强度及安全性、软件的可恢复性、功能测试等等。只有满足了以下要求,才能通过测试:一是要达到软件地要求说明里规定的接口、功能和性能等软件的配置项的要求;二是针对已经发现的问题和缺陷都被排除,并能顺利通过了软件的二次测试;三是编写完计算机软件集成测试的报告并且顺利的通过了评审。

(三)对软件的单元测试监督

计算机软件的单元测试目的是为了对软件单元能不能满足性能、功能以及接口等等要求的验证,用于任何一个计算机的软件单元。测试的主要内容包括:一是语句的覆盖;二是边界;三是错误的处理;四是局部的数据结构;五是重要路径;六是单元功能的测试。测试的步骤:一是要做好测试的计划;二是建立测试的环境和编制说明;三是执行测试,记录相关信息;四是根据测试的结果判断能不能通过;五是针对不通过的情况,要分析出原因,并且经修正后再进行测试至通过为止;六是测试完成后续的工作,包括编写测试报告、将测试用例归档。只有顺利通过以下要求,才被认定为通过:一是被测软件的单元要和设计时的需求相一致;二是软件的单元接口要一致;三是可以正确的处理运行和输入时的错误;四是针对已经发现的问题和缺陷都被排除,并能顺利通过了软件的二次测试;五是要达到事先所定的测试结果覆盖率;六是编写完测试的报告。

参考文献:

[1]郑人杰.计算机软件测试技术[M].北京:清华大学出版社,1992

[2]张江河.软件测试用例复用研究[D].西北大学,2005

[3]梁瀚.计算机软件系统测试方案研究[J].鞍山师范学院学报,2003,4

软件测试质量管理 篇4

随着武器装备的信息化程度不断提高, 软件的“核心地位”和“中枢神经”作用也日益突出。统计数据显示, 现代武器装备90%以上的功能通过软件实现, 军用软件正呈现出多样化、复杂化和智能化等特点, 在提升信息能力方面扮演着越来越重要的角色, 其质量直接影响着军事指挥和武器装备作战效能的发挥。为确保军事装备能够最大限度地发挥其作战效能, 提高军用软件质量管理水平已经成为一项十分紧迫的任务。

软件测试是提高软件产品质量的有效手段, 从20世纪70年代就在软件行业得到广泛应用。目前, 软件测试已发展成为一个独立的专业学科。根据有关数据, 通过使用正确的软件测试方法, 软件产品的缺陷数至少降低80%。在微软等大型软件公司, 软件测试人员与程序员的比例为1:1, 甚至达到2:1。

为了规范军用软件测试工作, 1995年总装备部就发布了《GJB 2423军用软件测试与评估通用要求》军用标准, 2004年又更新为《GJB 141军用软件测试指南》, 明确了军用软件测试的内容、方法、程序和要求, 有效的保证了军用软件的质量。但随着军用软件开发规模不断扩大、应用范围不断增加, 对软件质量管理提出了新的挑战, 对软件测试工作提出了新的要求。

2 军用软件测试存在的主要问题

目前, 随着军用软件种类、功能和复杂性的增加, 软件测试在各开发单位越来越受到重视, 对确保军用软件质量、提高软件可靠性起到了积极的促进作用。但由于大部分开发单位的软件测试起步较晚, 测试技术落后, 专业测试人员匮乏, 测试管理不完善, 与军用软件质量管理的要求还有较大差距, 存在许多亟待解决的问题。

(1) 对软件测试的认识不充分, 简单的将软件测试等同于验收测试。软件测试是一个贯穿于整个软件开发过程的系统工程, 测试工作应在需求分析和系统设计阶段就开始展开。但部分开发单位的软件测试工作是在编码完成之后和软件产品交付运行之前进行, 主要针对成型软件产品开展验收测试, 无法及时发现软件单元和组件内部的错误, 并且发现错误返回修改的代价也相当高昂。有关数据表明, 如果在验收阶段才发现内部错误, 其修改代价是单元测试阶段发现错误的300到400倍, 并且许多错误还会因修改代价过高而被有意忽略, 从而带来更大的隐患。

(2) 软件测试管理的水平不高、随意性大, 专业管理人员紧缺。有关数据显示, 软件测试成本已占到软件开发总成本的40%以上, 并且应在软件开发的初期就进行测试设计, 剪裁测试标准, 制定测试计划, 规范测试流程, 明确测试重点, 分配测试资源。因此, 高水平的测试管理人员是决定测试工作效果的关键因素。由于目前各单位普遍缺乏专业测试管理人员, 测试工作普遍缺乏系统分析和整体设计, 测试人员往往根据自己的理解和经验来决定取消或增加测试的步骤, 并且测试管理人员也不能明确当前测试进行的状态, 给测试工作带来了极大的随意性和不确定性。

(3) 测试技术和测试手段单一, 缺少自动化测试工具。先进的测试技术和自动化的测试工具能够有效提高测试的质量和效率, 这也是确保软件质量的重要条件。受经费投入的限制, 绝大部分单位主要采用人工测试的方法, 测试效率低、覆盖率有限, 无法充分发现软件中存在的问题和错误。缺乏自动化的测试数据管理工具, 对测试过程中发现的软件缺陷缺少数据库管理手段, 不能对发现问题及时进行统计、分析和处理, 导致新旧问题混杂, 问题修改后也无法及时进行验证, 软件质量无法保证。

3 对策与分析

军用软件测试是一项跨部门、覆盖多学科、涉及多技术领域的复杂系统工程。要有效解决存在的困难和问题, 就必须根据软件项目的自身特点, 运用系统工程方法, 建立综合解决方案。

3.1 推进软件测试队伍专业化建设

要根据软件测试的专业特点, 建立以专业人员为骨干的软件测试队伍, 负责从需求分析到交付用户的全寿命周期测试组织与管理工作。要随着软件生命周期各阶段的转换, 及时调整软件测试人员组成。在需求分析阶段, 测试人员应由项目管理者、系统分析员和软件测试管理者参加, 负责对软件的需求进行审查, 确保需求的正确性;在系统设计阶段, 测试人员应由项目管理者、系统分析员、系统设计员和测试管理者参加, 对软件的体系结构、功能结构和数据结构等进行审查, 确保设计的正确性;编码阶段则由测试管理人员、程序员和测试人员组成;最后的验收阶段则全部由测试人员组成。

3.2 加强专业测试手段应用

测试手段包括测试工具和测试方法两部分, 采用先进的软件测试手段是提高军用软件测试工作质量和效益的根本途径。在测试工作中, 要根据不同的系统架构采用相应的测试工具。例如对于B/S结构应选择对客户端并发操作、网络性能和服务器端数据库压力进行测试的工具, C/S结构应选择对分布式事务的处理逻辑、系统输入边界条件等进行测试的工具。同时, 还要根据不同系统要求采用相应的测试方法。例如, 对于安全和抗毁性较高的作战软件就要加强对系统的恢复性测试、安全性测试和强度测试;对于实时性、界面友好型要求较高的仿真训练软件就要加强网络通信测试和UI界面测试。软件测试要贯穿问题定义与规划、需求分析、软件设计、程序编码、运行维护等软件生命周期全过程。通过利用专业测试工具对软件生命周期的各阶段所形成的体系结构模型、功能结构模型、业务流程模型和数据流程模型等以形式化的方法和工具进行模型检测, 尽早地发现需求和设计中的错误, 不仅可有效提高软件质量, 还可大大减少软件开发成本。

3.3 大力建设专业软件测评中心

在软件测试过程中, 测试人员自身素质和测试工具质量将直接影响软件产品质量。受单位规模和经费所限, 绝大部分军用软件研制单位无法建立专业的测试人员队伍, 也无力承担昂贵的专业测试软件。软件测评中心作为从事软件测评工作的第三方专业机构, 具有专业化程度高、工作效率高、过程管理水平高的显著优势, 可以建设高质量的测评管理体系、专业化的测评人员队伍和高水平的软硬件测试环境, 不仅可以承担各类测试任务, 还可指导协助各软件开发项目组开展测试工作。因此, 各单位可以从自身情况出发, 建设本单位的软件测评中心或专业软件测评中心开展合作, 提高软件测试工作的专业化、正规化水平, 有效评价软件产品的质量情况, 满足军用软件产品质量管理的要求。

4 结束语

在军用软件质量管理工作中, 软件测试是软件质量保证必不可少的重要手段。随着军用软件质量管理要求的不断提高, 软件测试工作也要不断改进工作方法, 提高工作标准, 才能满足未来军用软件开发的需求。

参考文献

[1]尹平, 许聚常, 张慧颖, 软件测试与软件质量评价[M], 北京:国防工业出版社, 2008.

[2]刘易斯, 维拉皮莱.软件测试与持续质量改进[M].陈绍英译.北京:人民邮电出版社, 2008.

[3]单锦辉, 姜瑛, 孙萍.软件测试研究进展[J].北京大学学报 (自然科学版) , 2005, 41 (1) :134-145.

[4]Myers G J.软件测试的艺术[M].王峰, 陈杰译.北京:机械工业出版社, 2006 (01) .

[5]Harrold M J, Testing:a roadmap[M].ICSE-Future of SETrack, 2000:61-72.

软件测试技术与管理方法探讨论文 篇5

2下面简介软件测试的过程

2.1模块测试

模块测试主要针对软件设计中的程序模块,通过测试技术测试程序块是否正确,模块测试的主要目的是测试程序内部的错误,根据程序设计的结构检查代码和程序是否合理,是否符合设计思路和理念,是否能够正常运行。

2.2组装测试

在模块的基础上,需要将所有模块的功能全部测试完成后组装成为系统,组装测试的目的在于,连接所有模块之后,模块之间的接口、触发器是否能正常运行,并且计算显示的数据是否正确,模块之间的功能是否互相冲突,是否达到预期的目的和结果显示,是否构成正确的、预期的数据结构。不同模块之间的误差有多少,有多少可以解决,有多少不能解决。

2.3确认测试

确认测试的目的是验证软件的功能和特性是否达到预期的愿望,是否能按照预期的组织结构、系统结构、用例分析和时序分析运作,并且进行验收测试和安装测试。

2.4系统测试

系统测试是确认软件是否与硬件互相支持,是否能满足软件使用者对软件的需求和操作简便的愿望,比如说查询模块运行完后界面中查询条件应该为查询之间输入的查询条件。系统测试保证了系统的正常运行,另外很重要的就是权限测试,系统在研发之初定义的权限信息和权限功能是否实现,是否发现软件成品与软件定义不符合或者矛盾。

3软件测试技术的地位

软件测试质量管理 篇6

关键词:软件测试 校务管理系统 合作开发模式

中图分类号:TP311 文献标识码:A 文章编号:1673-8454(2008)19-0064-03

中山大学管理信息系统的建设从20世纪80年代起步,历经20多年发展,具备一定的基础,如财务、教务、设备管理系统等均得到了很好的应用。但一直以来,学校管理信息系统均为面向部门的局部开发,没有共享的应用架构和共享的技术架构。随着教育改革的不断深化和信息与网络技术的不断发展,这种状况已无法满足学校发展的需要,学校于2002年正式启动了数字化校园建设之校务管理系统一期项目,提出了“五个统一”实施原则,即统一数据库、统一标准、统一开发平台、统一用户管理、统一门户。[1] 建设目标是:在“五个统一”理念指导下,建设基于全局数据共享的校务管理系统,为学校运作的流程化、规范化,资源的规划化和优化配置提供一个载体,从整体上提升学校业务管理和行政决策的科学化水平,在管理水平和服务能力方面都有一个更迅速的发展。

中山大学校务管理系统的一期建设是采用合作开发的模式:在前期需求调研阶段,由学校成立校务管理系统实施小组,负责全校各部门业务需求的调研并形成总体需求文档,在总体需求确定后,通过与软件开发商的合作,完成系统的设计、实施、测试、上线。整个校务管理系统涉及了全校各个业务部门和院系,业务复杂程度高,流程整合难度大,因此,实施有效的测试成为保障校务管理系统成功的重要手段。

一、软件测试模型

软件测试是软件质量保证的一种诉求,是质量保证过程中所依赖的主要活动之一。质量保证的结果,在很大程度上依赖于软件测试的开展以及执行的结果。软件测试应该贯穿于整个软件开发生命周期、对软件产品进行验证和确认,其目的是尽快尽早地发现在软件产品中存在的各种问题以及与用户需求不一致的地方。[2]

常见的软件测试模型包括V模型、W模型、H模型、X模型和前置模型,其中V模型、W模型、H模型又是普遍被采用的模型。图1就是W模型的示意图:

W模型强调:测试伴随着整个软件开发周期,而且测试的对象不仅仅是程序,需求、设计等同样要测试,也就是说,测试与开发是同步进行的。W模型有利于尽早地、全面地发现问题。例如,需求分析完成后,测试人员就应该参与到对需求的验证和确认活动中,以尽早地找出缺陷所在。同时,对需求的测试也有利于及时了解项目难度和测试风险,及早制定应对措施,这将显著减少总体测试时间,加快项目进度。[3]

从W模型中抽象出来的理念是“尽早测试”,即测试并不是在代码编写完成之后才开展的工作,测试与开发是两个相互依存的、并行的过程,测试活动在开发活动的前期已经开展。软件测试的活动过程,包括如下几个部分:

(1)制定测试计划——收集和组织测试计划信息,并且创建测试计划,测试计划需要包括:确定测试需求;制定测试策略;建立测试通过准则;确定资源和进度。

(2)测试设计——为每一个测试需求确定测试用例集,并且确定执行测试用例的测试过程。

(3)开发测试工具和脚本——使用各种测试工具创建、开发、调试测试脚本。

(4)执行测试——执行单元测试、集成测试、系统测试、验收测试。

(5)生成测试结果和报告——记录测试过程和结果,生成测试报告。

二、合作开发模式下软件测试的重要性

由于采用的是合作开发模式,软件测试对于学校方面显得更为重要,这主要体现在以下几个方面:

(1)在合作开发模式下,软件的详细设计、编码都是开发商负责完成,虽然开发商有测试部门进行单元测试和集成测试,但校务管理系统的业务和流程复杂程度高,涉及跨部门的应用需要完善的系统测试,此外,界面测试是与业务人员密切相关的,是软件开发商难于测试的部分。因此系统测试和验收测试就必须以学校方面为主导,开发商配合的模式进行。

(2)由于各种原因,譬如工期、成本等因素,软件开发商在测试方面投入的力量偏少,而且软件开发商在业务熟悉程度上也与最终用户有一定的距离,他们的测试偏重于查找程序的缺陷,而对业务流程和系统交互等的测试有所欠缺,从而造成软件质量在一定程度上的下降。

(3)软件开发商出于他们的利益所在,对系统所做的测试有可能存在不完善的地方,如果盲目相信开发商的测试结果,可能会使学校的利益受到损失。

三、软件测试在校务管理系统中的实施

出于以上的原因,中山大学校务管理系统实施小组在整个系统建设的过程中一直注重软件测试,以W模型为基础,真正做到将测试贯穿于项目建设的过程中。

(1)在需求调研阶段,实施小组深入各业务部门,向业务人员学习相关业务知识和业务流程,这个阶段对于系统测试和验收测试来说都是非常关键的,因为只有实施小组的成员深刻领会业务需求,才能形成真正符合用户需要的测试文档,确保项目的质量。在形成需求文档的过程中,同时也形成了初步的测试方案和测试计划。

(2)在软件开发商实施设计和编码阶段,实施小组一方面作为双方沟通的桥梁,在另一方面通过与开发商的交互以及详细需求设计评审和概要设计评审,逐步完善测试方案和测试计划,在此过程中初步估算系统测试和验收测试的工作量和时间进度。

(3)在开发商提交软件过来后,实施小组首先熟悉软件,了解整个软件的架构和各项操作,在此基础上编写功能测试用例并且根据功能测试用例对软件进行功能测试和界面测试。在功能测试的过程中,采用人工测试和自动化测试相结合的模式。对一些较为成熟并且流程固定的功能模块,可以尽量采用自动化测试工具,提高功能测试用例的重用性和测试效率,在自动化功能测试工具的选择中,实施小组比较了两款的测试工具,Selenium和Mercury QuickTest Professional。

?誗Selenium是一款开源的功能测试工具,具有小巧、灵活的特点,但是在录制脚本功能方面较为欠缺,而且需要对软件内部架构和页面设计等较为熟悉的人员才能编写良好的测试脚本,Selenium更适合软件开发人员在做功能测试的时候使用。

?誗Mercury QuickTest Professional软件是一款商用的功能测试工具,特别适合于B/S结构的应用程序的功能测试,录制脚本功能强大,检查点丰富,回放精确。

在经过比较后,实施小组最终决定采用Mercury QuickTest Professional作为校务管理系统项目的自动化功能测试软件。在实践中确实发现自动化测试工具的引入对于功能测试和回归测试在速度和效率方面都得到了很大的提高。另一方面,人工测试在功能测试中仍然是不可缺少的,用户的需求、业务发生变化从而导致软件功能模块的实现需要调整是不可避免的,对于功能尚未稳定的模块来说,编写自动化测试脚本意义并不明显,界面的调整,流程的变化都会导致自动化脚本不可用,人工测试仍然是功能测试的重要手段。

(4)在性能测试方面,负载和性能测试是手工测试的弱项,使用合适的工具能够模拟真实负载环境下的系统性能,经过对各类性能测试工具软件的比较,实施小组选择了Mercury Loadrunner作为性能测试工具,Mercury Loadrunner软件是业界公认的优秀的性能测试软件,具备了强大的脚本录制功能、通过生成虚拟用户创建真实的负载测试功能、完备的分析和定位问题功能。性能测试并非针对所有功能模块,而是要根据需求规格说明书,定位业务关键测试点,譬如,数字迎新系统,具有实时性强的特点,现场人员数量大,需要确保系统良好的持续性;学生选课、成绩查询在某个时间段内,并发用户数高,系统具有良好的性能是选课正常进行的保证。

在软件测试中,大部分情况下,原则可以是:自动化20%的测试用例,用于覆盖80%的用户操作密集的功能和核心业务逻辑。实现功能测试自动化来完成重复、枯燥的回归测试任务,引入性能测试自动化工具来改善测试的广度和深度。同时带来一点好处是,毕竟机器和脚本是客观的,它总是会完成所分配的所有任务,而没有半点遗漏,从而自动化有助于你真正掌握和控制你的回归测试覆盖率。

(5)软件测试需要建立相应的文档:软件测试建档贯穿于整个软件测试过程中,对于软件测试,四个最典型的书面文档是测试计划、测试用例、缺陷列表、分析报告。[4]

?誗测试计划:测试作为整个项目工程的一部分,在早期做出较为详细的测试范围,人力预算,执行时间,技术需求/培训和软硬件资源占用等方面的考虑,便于有目的、有计划地完成后面的测试工作,在后期评审中,以此为一个基线,更容易发现执行中的问题和及时作出调整。

?誗测试用例:一份良好的测试用例文档,可以让参与测试的人员,花足够的精力,第一时间去系统地理解需求,尽快切入特定模块的测试工作,而不是被成堆的需求文档所淹没。实施小组在后期增加了测试人员,用例文档对新增人员能够迅速投入测试工作,保证测试的进度起到了很好的作用。

?誗缺陷列表:在初期,实施小组使用传统意义上的Word或Excel文档来记录缺陷,但是,校务管理系统是一个非常复杂、庞大的系统,测试周期很长,测试人员又不止一个,当缺陷数目不断增多时,如何做到方便的管理、查询和分析缺陷,已经是实施小组迫在眉睫需要解决的问题。实施小组经过比较,采用了JIRA系统,JIRA系统是基于J2EE的问题跟踪管理系统,其功能强大,集项目计划、任务分配、需求管理、错误跟踪于一体,具有易于使用、灵活性强、安全性高等特点,是优秀的缺陷管理系统。

?誗分析报告:对照当初的测试计划安排,评估执行是否彻底,说明所遇问题,并以此做出及时调整。总结和汇报的最终目的是调优:持续改进测试的过程,使其符合项目的实际情况,更加高效、规范。

四、结束语

中山大学校务管理系统历经四年建设,整个项目涉及全校各个部处,影响深远,在整个项目建设过程中,我们深刻体会到测试在项目中的重要性,特别是在在合作开发的软件项目中,如何提高测试的有效性、完备性和效率是保障项目能够按质按时完成的重要手段。在实施项目过程中,学校的实施小组按照软件测试模型,制定测试计划并严格执行,在测试过程中,采用了多种测试工具软件,使测试能够有序和有效地完成。本文在探讨软件测试模型的基础上,对校务管理系统如何实施测试进行了阐述,希望能够为各高校的校务管理系统建设提供有益的参考。

参考文献:

[1]中山大学数字化校园建设.http://home.sysu.edu.cn/szh/index.html

[2]朱少民.全程软件测试[M].北京:电子工业出版社,2007.

[3]软件测试过程管理实践.http://www.51testing.com/html/69/1301.html

软件测试管理(下) 篇7

(接上期)

(二) 测试用例设计与编写

在进入整个研发周期的开发阶段, 测试人员应加大投入并逐步达到高峰。在开发人员进行程序设计、编码、单体测试阶段, 测试人员要完成测试用例的设计与编写工作。如果采用了相关自动化测试工具, 测试用例除了包括手工测试用例外, 还应包括自动化测试工具对应的相关测试脚本。

(三) 测试与回归测试

进入集成测试阶段, 测试的人力资源投入开始进入高峰, 此阶段的工作就是实施测试。当修改测试发现的缺陷后, 要实施回归测试, 直到所有测试用例都消化完毕并达到预计的测试目标。

(四) 编写与提交测试总结和测试报告

每个测试阶段结束后, 都要编写与提交测试总结和测试报告。测试总结和报告除了描述测试的内容、过程、结果等, 关键要对测试数据进行分析, 并与计划、历史数据比较。要对该阶段的测试作出评价:是否达到预定的出口条件与目标;要对被测试的项目与版本作出评价:版本质量是否有保障。最后应列出遗留问题与存在的风险, 并提出后续解决问题的建议与措施。

四、测试的进度管理

(一) 人力资源进度

前面的测试阶段人力资源投入进度计划, 是对测试人力资源投入进行管理的依据。关键点就是保证每阶段、每周、每天的人力资源按计划投入。软件测试在实施用例消化阶段, 按计划投入人力资源是用例能按计划消化的最大保障。

(二) 用例消化进度

整个测试阶段要严密监控用例消化进度, 以保证整个测试按计划完成。但是, 在按计划投入人力资源的情况下, 用例的消化进度往往还是不理想。其原因通常有以下几个。

1.测试环境问题

测试环境存在各种问题, 使测试工作不能按进度展开, 这通常是测试阶段初期用例消化进度不理想的最主要原因。为此, 应该在即将进入测试阶段时, 加大测试环境建设的投入, 保证测试工作尽快顺利展开。另外, 也应该在事前制定用例消化进度计划时, 参照历史情况, 充分考虑测试环境等准备工作的因素, 制定合理的进度计划。

2.测试对象的质量较差

这也是主要的原因之一。由于软件质量太差, 导致用例的运行每前进一步都会碰到缺陷, 需要程序反复修改、用例反复测试才能最终通过, 使回归测试率大大高于20%。这是由于研发前期、开发阶段质量管理的不到位所致。

无论如何, 如果出现了用例消化滞后的情况, 要么加大测试人力资源的投入、增加人员或者加班;要么就是修改进度计划。但修改前期进度计划无疑要加快了后续测试的用例消化进度, 这会给后面工作带来额外的压力。

(三) 缺陷清除进度

在实际测试过程中, 要随时对缺陷的实际清除进度进行监控与管理。在某一时刻, 监控结果一般有3种:一是缺陷的清除进度基本与计划一致;二是缺陷的清除进度慢于计划;三是缺陷清除的进度快于计划。下面继续用前面的例子 (如图5所示) , 对缺陷清除进度与计划中有明显差距的情况进行分析。

1.进度滞后

缺陷清除进度滞后于计划, 见图5的实际数据1所示。

缺陷清除进度滞后于计划出现在大多数研发项目的测试中。进度滞后的原因有多种, 其中最理想的情况是:被测试对象质量较好, 缺陷密度远低于历史水平。

但笔者认为, 从历史的经验看, 能遇到这样理想的机会实在微乎其微。进度滞后绝大多数情况是存在问题, 应该更多地从不好的方向寻找, 挖掘问题所在。这些问题可能是:测试初期环境准备不完善, 测试无法迅速顺利开展;在过去的测试阶段中, 由于测试人力资源投入不足, 导致用例消化滞后于计划, 相应地, 缺陷发现率就越低;用例质量有问题, 针对性不强, 覆盖面不好。因此, 要认真分析进度滞后的原因, 或许其中因多个原因所致。同时要针对找到的原因制定措施, 解决问题, 让测试后期的缺陷清除进度能追上计划。

2.进度超前

缺陷清除进度超前于计划, 见图5的实际数据2所示。

在一些项目测试中, 有时也会出现缺陷清除进度超前于计划的情况。进度超前的原因有许多, 其中最理想的情况是:测试环境良好, 测试工作开展顺利。测试人力资源投入充足, 测试用例针对性强、发现缺陷的几率也高。

如果是上述原因, 那确实具有积极意义。问题是, 从历史的经验看, 这种好事遇到的机会不多。从谨慎的观点出发, 我们还是应该更多从不好的方向着想, 挖掘问题所在。这些问题可能是:缺陷清除进度计划不尽合理, 对进度的预测太悲观;被测对象的质量差, 用例每前进一步都会发现问题, 这是最可能的原因。

进度超前如果是计划的问题, 那么, 应该根据实际情况修改计划, 让计划更能反映实际进度的情况。

更大可能的是, 被测试对象的质量太差。如果是这样, 将面临比较严重的问题。我们应该有思想准备, 如果要保证项目的功能与质量, 很有可能要增加测试的投入, 延长测试周期。但如果版本计划不能轻易改变, 那么, 在不延长测试周期的情况下只能增加测试人力资源的投入。通过增加测试用例、加大测试强度, 以保证项目的质量。如果测试周期不能延长, 测试人员也无法增加, 那么最后的出路是削减项目功能。通过放弃一些次要功能, 测试保重点, 以保证一个减少了功能的项目能够按时按质投产。

(四) 问题管理

在测试过程中, 当测试人员发现任何测试问题, 应该马上把问题提交给开发人员, 并标出该问题对测试进度影响的严重程度, 例如严重影响测试进度、影响测试进度等。开发人员应该立即对问题进行分析、定位, 确定问题的性质。

通常, 测试发现的问题有一部分是属于测试环境的问题。针对这部分问题, 要通过完善测试环境来解决。

测试发现的大多问题, 会被确认是程序的问题, 即通常说的缺陷。针对缺陷, 开发人员要对程序进行修改, 然后择机重建新的测试版本, 让测试人员重新测试, 以落实缺陷已经被清除。

无论是完善环境或者修改程序, 当测试发现的问题得以解决后, 应关闭原来由测试人员提出的问题。这一问题解决的流程与管理, 通常称为问题管理。当前, 一般的研发团队多使用专门的问题管理工具 (系统) 对上述问题进行管理、跟踪、分析以及统计。

问题管理的关键点在于问题的处理时效管理。处理时效指的是, 当测试人员把发现的问题提交到问题管理系统, 到开发人员确定问题所在并已经落实修改措施、重建测试版本, 直至测试人员可以再次测试其间经历的时间。该时间段越小, 问题处理效率越高。反之, 该时间段越长, 问题处理效率越低。问题处理时效的长短会直接影响测试工作是否能顺利进行。

具体时间要求可以从几个方面来考虑设定。

1.对于那些被标志为严重影响测试进度的问题, 处理时效应该在3天之内, 对于那些被标志为影响测试进度的问题, 处理时效应该在4~5天内。

2.如果项目规模比较大且在一个相同的测试环境里的测试周期超过10周, 那么, 85%的问题处理时效应该在一周之内。个别特别严重、涉及修改量比较大的问题, 最长的处理时间不应该超过10天。

问题处理时效分布情况如图6所示。

3.如果项目规模相对比较小, 或者在一个测试环境里的一个测试阶段少于10周, 那么, 85%的问题处理时效应该在一个测试周期的十分之一内。个别特别严重、涉及修改量比较大的问题, 最长的处理时间不应该超过一个测试周期的七分之一。

问题处理时效分布情况如图7所示。

问题处理时间太长, 未处理的问题往往会成为测试的瓶颈, 影响整个测试的进度。

五、非功能性测试

在软件测试中, 非功能性测试的重要性并不比功能测试的重要性低, 特别是对于那些调用频率高、执行关键性功能的软件更是如此。因此, 除了功能性需求外, 软件需求通常还应该有针对性的非功能性需求。所以, 在非功能性测试中, 应该对照非功能性需求进行逐一测试。非功能性测试主要包括如下几个方面。

(一) 性能

性能测试大多要依靠测试工具。通过模拟瞬间大并发量的服务要求, 对各种计算机资源进行压力测试。再通过各种系统性能分析工具, 对测试结果进行分析, 以确定在要求的最大压力下, 各种计算机资源能满足各方面性能的要求。

(二) 操作性

操作性的测试主要是在测试过程中, 通过测试人员作为应用系统用户的用户体验。这里要注意的是, 应用系统的用户与银行的用户其实是两个不同的概念。信息系统用户除了银行用户外, 还包含了银行所有使用信息系统员工、操作运行维护人员。所以, 操作性的测试应该包含这三方面人员的操作感受。

(三) 可靠性

软件可靠性的测试可通过人为制造某种不良的系统运行环境、非期待的输入数据, 以考验系统的健壮性。特别是网络安全要重点测试, 可以对系统进行人为的恶意攻击, 以测试系统的抵御能力。

可靠性测试还应测试系统的各种开关功能是否有效, 包括流量控制开关、负载控制开关、各种定时开关、功能开关等, 以测试系统的自我控制与退缩能力。

(四) 可维护性

应对系统的所有故障对策进行逐一测试。一方面考验故障对策是否可行、有效;另一方面, 要详细检讨故障对策是否已经完备, 足以应付绝大部分可能出现的系统问题。

六、自动化测试

随着各种软件的迅速发展, 软件测试的工作量越来越大, 对于研发机构来说, 巨大的测试投入令其苦不堪言。特别是对软件性能的压力测试, 动辄需要成千上万的并发量, 这是人工测试所难以胜任的。为了提高测试效率, 如何更多更好地用自动化测试替代人工测试, 是每一个研发机构都面临的迫切需要解决的问题。

所谓软件测试的自动化, 是把以人为驱动的测试行为转化为机器执行的一种过程。一般是指在预设条件下运行预先准备好的测试程序或测试脚本, 并通过程序对运行结果与预想结果进行比较、评估。通过自动化测试, 节省人力、时间或硬件资源, 提高测试效率。

自动化测试的使用在整个软件测试中的比重, 是衡量一个测试队伍的水平与成熟的重要标志。如何推广自动化测试, 应该注意以下几方面。

(一) 适应范围

1.测试对象相对稳定

所谓测试对象相对稳定, 指的是测试对象的数据架构与功能不会经常变化。如此一来, 测试要点也相对稳定, 已经做好的测试程序、测试脚本就不需要经常变化。测试环境与测试数据的准备工作也不需要经常改变。否则, 维护测试环境、数据、测试程序与脚本的工作量也许会大大高于使用自动化测试所节省的工作量。

从这点来说, 自动化测试最适用于回归测试。

回归测试是软件研发与维护过程中的一个重要的测试环节。软件维护主要有两类:一是改良性与纠错性维护, 这类维护通常不会增加新的程序;二是增加新的功能, 这类维护通常要增加新的功能模块。但无论是修改程序还是新增模块, 都要确保软件的维护没有引入新的错误或导致其他代码产生错误, 要保证原来的模块与功能不受影响。回归测试就是为了上述目的引入的测试。

计算机应用发展到今天, 软件维护的成本已经是整个计算机应用最主要的也是最大的成本。回归测试作为软件生命周期的一个组成部分, 在整个软件测试过程中占有很大的工作比重, 软件开发与维护的各个阶段都会进行多次回归测试。在渐进和快速迭代开发中, 新版本的连续发布使回归测试更加频繁, 而在极端编程方法中, 更是要求每天进行若干次的回归测试。回归测试的自动化将极大提高测试的效率, 大幅降低系统测试、维护升级的成本。

2.人工难以实现的测试

一些测试光凭人工的办法难以实现, 如各种各样的压力测试。自动化测试工具能模拟数万台客户终端, 同时发起成千上万的并发服务要求, 以满足压力测试的要求。

(二) 测试工具

要实施自动化测试, 拥有满足要求的自动化测试工具至关重要。而随着自动化测试的广泛应用, 根据不同的需要, 社会上已有各种各样的工具。我们要根据自己的研发环境与研发对象, 选择一些合适的自动化测试工具。

(三) 用例库

自动化测试工具为我们实施自动化测试提供了一个可行的平台。但要真正实施自动化测试, 关键还是要创建针对不同测试目标的各种测试程序、测试脚本, 并将其存放起来, 形成测试用例库, 以被重用与维护。

软件在其生命周期中会频繁地被修改和不断推出新的版本, 修改后或者新版本的软件会添加一些新的功能, 或者在软件功能上产生某些变化。随着软件的改变, 软件的功能、应用接口以及软件的实现均发生了演变, 测试用例库中的一些测试用例可能会失去针对性和有效性, 而另一些测试用例可能会过时, 还有部分测试用例将完全不能运行。

为了保证测试用例库中测试用例的有效性, 必须对测试用例库进行维护。同时, 被修改的或新增添的软件功能, 仅仅靠重新运行以前的测试用例并不足以揭示其中的问题, 有必要对其追加新的测试用例来测试这些新的功能或特征。因此, 测试用例库的维护工作还应包括开发新测试用例, 这些新的测试用例用来测试软件的新特征, 或者覆盖现有测试用例无法覆盖的软件功能或特征。

测试用例的维护是一个不间断的过程, 测试用例的针对性、有效性、覆盖面是自动化测试的效率与效果的保证。

(四) 测试背景

自动化测试能否实现大范围内使用, 其最大难点不在测试工具和测试用例, 而是测试软件环境与测试数据的准备。

自动化测试的引入是为了提高测试效率, 能否提高效率的关键在于自动化测试用例的重用度, 而用例的重用度关键是用例的稳定性, 用例的稳定性关键是测试背景的稳定性, 测试背景包括软件环境与数据。

为了能得到基本相同的测试环境, 以便基本重用在用例库里的测试用例, 需要有手段去重现某种软件环境与数据的测试背景。可以通过建立软件背景环境库与背景数据库重现测试背景, 也可以通过软件环境生成程序与背景数据生成程序重现测试背景。在某种情况下两种方法可混合使用。

实际上, 正因为被测试的对象已被修改, 才需要我们进行重新测试。所以, 测试背景不改变的要求只是一种良好的愿望, 对测试背景的高效维护也是自动化测试的一个重要课题。

浅析软件测试技术与测试管理 篇8

1 下面介绍几种测试的方法

1.1 静态测试和动态测试

(1) 静态是指被测试程序不在机器上运行, 而是采用人工检测和计算机辅助静态分析的手段对程序进行检测, 主要方法包括人工测试和计算机辅助静态分析。静态分析的查错和分析功能是其他方法所不能替代的, 静态分析能发现文档中问题。目前, 静态测试已被当做一种自动化的、主要的代码校验方法。但静态测试不能检测程序的实际执行情况, 无法得到程序的执行结果。

(2) 动态测试是实际运行被测程序, 输入相应的测试用例, 判定执行结果是否符合要求, 从而检验程序的正确性、可靠性和有效性。一般意义上的测试主要是指动态测试。动态测试是一种经常运用的测试方法, 无论在单元测试、集成测试中, 还是在系统测试、验收测试中, 都是一种有效的测试方法。但动态测试不能发现文档问题, 必须等待程序代码完成后进行, 发现问题相对迟得多, 一旦发现问题, 必须重新设计、重新编码, 必然增大不良质量的成本。

1.2 黑盒测试和白盒测试

(1) 黑盒测试, 也称功能测试或数据驱动测试。黑盒测试是在已知产品所应具有的功能, 通过测试来检测每个功能是否都能正常使用。测试时, 测试者只在程序接口进行测试, 它检查程序功能是否按照需求规格说明书的规定正常使用, 程序是否能适当地接收输入数锯而产生正确的输出信息, 并且保持外部信息的完整性。“黑盒”法是穷举输入测试, 只有把所有可能的输入都作为测试情况使用, 才能以这种方法查出程序中所有的错误。实际上人们不仅要测试所有合法的输入, 而且还要对那些不合法但是可能的输入进行测试。

(2) 白盒测试, 也称结构测试或逻辑驱动测试。白盒测试是通过测试来检测产品内部动作是否按照规格说明书的规定正常进行, 主要用于软件验证。“白盒”法全面了解程序内部逻辑结构、对所有逻辑路径进行测试。“白盒”法是穷举路径测试。在使用这一方案时, 测试者必须检查程序的内部结构。贯穿程序的独立路径数是天文数字。但即使每条路径都测试了仍然可能有错误, 因为穷举路径测试决不能查出程序违反了设计规范, 即程序本身是个错误的程序。

1.3 自动化测试

随着软件系统规模的扩大和软件应用领域的不断扩展, 软件系统的测试也变的越来越困难, 传统的测试已经无法满足测试的需要, 自动化测试应运而生, 自动化测试是指在预设条件下运行系统或应用程序, 评估运行结果, 包括正常条件和异常条件, 自动化主要研究的是自动化框架测试、自动化测试脚本技术、自动化用例生成。通过资料了解, C-ATFM模型。该模型基于C语言, 面向对象集成环境, 采用源码嵌入有效的分析软件的代码、词法、语法、策略、指令。并且随着软件工程及软件测试的发展, 自动化的机器测试发展更有前景。

2 下面简介软件测试的过程

2.1 模块测试

模块测试主要针对软件设计中的程序模块, 通过测试技术测试程序块是否正确, 模块测试的主要目的是测试程序内部的错误, 根据程序设计的结构检查代码和程序是否合理, 是否符合设计思路和理念, 是否能够正常运行。

2.2 组装测试

在模块的基础上, 需要将所有模块的功能全部测试完成后组装成为系统, 组装测试的目的在于, 连接所有模块之后, 模块之间的接口、触发器是否能正常运行, 并且计算显示的数据是否正确, 模块之间的功能是否互相冲突, 是否达到预期的目的和结果显示, 是否构成正确的、预期的数据结构。不同模块之间的误差有多少, 有多少可以解决, 有多少不能解决。

2.3 确认测试

确认测试的目的是验证软件的功能和特性是否达到预期的愿望, 是否能按照预期的组织结构、系统结构、用例分析和时序分析运作, 并且进行验收测试和安装测试。

2.4 系统测试

系统测试是确认软件是否与硬件互相支持, 是否能满足软件使用者对软件的需求和操作简便的愿望, 比如说查询模块运行完后界面中查询条件应该为查询之间输入的查询条件。系统测试保证了系统的正常运行, 另外很重要的就是权限测试, 系统在研发之初定义的权限信息和权限功能是否实现, 是否发现软件成品与软件定义不符合或者矛盾。

3 软件测试技术的地位

程序是由人完成的, 并且软件开发是个很复杂的过程, 期间很容易产生错误, 无论是软件从业人员还是专家、学者都无法避免的产生错误, 因此, 软件中存在错误和BUG是正常的、无法改变的。所以, 软件测试的目的是通过测试技术尽可能的发现软件在研发和使用中的漏洞, 并且找到解决问题的办法, 以期提高软件的质量。一个成功的测试用例在于发现了至今尚未发现的缺陷。其实, 。软件编程的过程也会出现一些不可避免的错误, 例如:对于用户需求的错误分析和编程出现的一些语法错误, 如果软件与发票费用相关更是与测试密不可分。软件不断地接近成熟和完成以及投入使用阶段, 软件测试工程师必须更加谨慎的检测每一部分程序, 一段程序的完成, 测试工作量占有总工作量40%以上, 这就给我们说明:测试是软件开发成功的重要组成部分。

4 软件测试的展望

软件质量越来越被人们重视, 测试驱动的开发技术被人们所接受, 软件测试已不再简单的是软件生命周期中的一部分。随着技术的发展, 测试技术将被更多的应用于项目开发之中, 而未来的软件开发更多的是以测试为目的的开发, 通过工具的自动化测试功能, 保证开发人员的代码质量和整个系统的质量。通过自动化测试与人工测试相结合, 更快更好的完成测试工作, 对于测试人员, 可能更多的是需要考虑如何持续改进, 这也就是进行质量管理的目标所在。

摘要:随着计算机硬件的飞速发展, 应用范围的扩大, 软件研发的数量也急剧增长且涉及各个领域, 软件日益增长的需求使得研发的矛盾也越来明显, 引发了软件危机, 在这样的情况下, 软件工程的软件测试部分显得愈发重要, 1993年的IEEE是这样定义软件测试的:“将系统化的、规范的、可度量的方法应用于软件的开发、运行和维护的过程, 即将工程化应用于软件中”。软件测试就是在软件投入使用之前, 对软件的需求分析、设计规格说明和系统编码的最终复审。所以, 软件测试不止是为了测试程序, 需求分析、概要设计、详细设计和流程设计都是软件测试的对象。

关键词:软件测试,测试技术,测试工具,信息化管理

参考文献

[1]陈会霞, 周利华.关于软件测试的浅议[J].中国测试技术, 2005 (04) .

[2]王晓华.软件测试技术应用研究[J].国防科技工业, 2012 (03) .

[3]钟百成, 张言上.关于软件测试技术的探讨[J].数字技术与应用.2012 (02) .

探究软件测试技术与测试管理 篇9

社会经济和科学技术的不断发展极大地促进了国内应用软件的进一步壮大和发展,并在互联网信息时代中占据重要的市场地位。尽管如此,我国应用软件的技术水平相对于国际市场还存在一些提高空间,产生差距的主要原因是软件测试还不成熟。因此,在新时期的背景下,要使应用软件得到进一步的发展和提升,必须要从软件测试方面入手。本文主要研究软件测试技术与测试管理,进而为软件质量的提升提供重要保障。

2软件测试技术和具体方法

2.1测试软件说明书

检查说明书是软件检测技术的重要环节,为后续软件检测环节做好充分的准备。首先,对软件说明书采用高级检查与属性检查的方式。从软件测试的实质上看,测试软件说明书的目的不是要快速找到软件存在的漏洞或者问题,而是在某一高度上对软件的整体情况进行审视,进而找到软件存在的根本性问题。在基础上,检测人员要站在客户的角度上检查软件,检查被检测的软件是否符合客户的要求,在这个层面上对软件说明书的各个属性进行测试。其次,明确标准和规范。在软件测试技术中,标准与规范具有一定的差异性,标准比规范更具确定性,在实际的软件测试过程中,测试人员要对软件说明书进行观察,先要检查软件说明书是否符合标准,即公司要求、行业规定、国家标准以及硬件网络标准等条件。最后,在检查环节中,测试人员要身检查软件的规模和复杂性以及可靠性,检查软件是否严格按照质量标准计划要进行研发制造的,明确软件的可靠程度,进而对软件的质量进行有效的控制。

2.2等价类划分

在实际的软件测试中,测试人员要选择最具代表性的案例来对软件进行功能和各项性的测试,在进行选择测试案例的过程中,测试人员可以利用等价类划分的方式来实施软件测试。等价类划分主要是解决如何选择适当的数据子集来代表整个数据集的问题,通过降低测试的数目去实现“合理性”覆盖,覆盖了更多的可能数据,以发现软件心存的缺陷。有效等价类指对于软件测试来说,可以合理地输入数据构成,进而反映出测试数据的集合,利用等价类划分可检查软件是否实现了软件说明书预先规定的各项功能以及性能。就一般意义上来说,等价类划分可以是一个,也可以是多个,根据软件的输入域分布成若干部分,然后从每个部分中选取少数有代表性数据当做数据测试的测试用例,形成软件输入域的集合。

2.3数据测试

软件主要是由数据与程序两部分组成,在数据中有键盘输入和鼠标单机以及硬盘文件等部分构成,程序则是软件可以操作的流程、转换以及逻辑运算。在测试数据的过程中,测试人员要检测输入信息和返回结果,还要保证在过程计算中结果的准确性。进行数据测试过程中有以下测试技术:第一,边界条件测试。在进行边界条件测试中要先对临近边界的数据进行测试和分析,也就是对最后的合法数据进行测试,之后依次测试超过软件边界的一些非法数据,并不断探索软件的测试边界,进而发现软件测试边界,找出软件中“隐身”的各种问题和障碍。第二,通过默认、空白以及无等方法来进行软件测试,也就是说,在输入界面中,输入错误的信息或者是输入空值的情况下,点击回车键,有些软件就会产生错误提示或者是其他情况,这样的情况下一般是由于测试人员忽略了对软件说明书的检查引起的。第三,利用非法、错误以及垃圾数据对软件进行测试,测试人员可以利用这样的数据信息输入,找出软件现存的问题和漏洞,进而提高软件测试技术的水平和效率。

2.4软件状态测试

软件状态测试主要是利用软件的各种状态来检查软件的逻辑性,以及使用流程的准确性和可靠性,状态测试可在以下三方面中进行测试:一是测试人员要让软件进入一个全新的状态,检查软件在进入新状态时的反应和逻辑程序,进而测试软件的稳定性和逻辑性。二是测试人员测试软件从一种状态中迅速转变为另一种状态,主要测试软件在状态切换中的反应速度和灵敏度,并注意观察在转换过程中软件需要的输入数据以及转换条件。三是在进入或者是退出某一状态时,软件需要的设置条件以及最终结果。

2.5黑盒实验

黑盒实验主要在软件接口位置进行,也就是说,黑盒实验是在软件外部进行,不考虑软件结构特点以及逻辑流程。黑盒实验软件测试技术主要是将软件视为黑盒子,测试人员可以根据黑盒子的相关操作说明进行,具体检查软件实际功能是否满足软件说明书上的标准和规定,包括遗漏功能、访问权限错误以及数据结构等方面的错误。在进行黑盒实验的过程中,测试人员要制定科学的测试用例,进而引导整个黑盒实验软件测试过程,尽可能保证测试流程的计划性、目的性和有序性,提高软件测试的效率和质量。

2.6白盒实验

相当于黑盒实验来说,白盒实验更加倾向于软件测试中的细节处理,在软件的细微之处进行检查。因此,白盒实验的优势在于可以让测试人员了解软件的具体结构以及逻辑流程,同时可以通过这些信息的了解和掌握,对测试用例进行有效设计和测试,测试软件程序中的逻辑路径。在进行白盒实验的过程中,测试人员要根据各个检查点对软件程序进行测试,确定软件在测试中的实际状态与预期状态的差距,以便于对软件进行进一步完善和优化。

2.7灰盒实验

灰盒实验主要存在于黑盒实验和白盒实验的中间节点,也就是说灰盒实验具备黑盒实验和白盒实验的共同特点和功能,灰盒实验不仅可以测试软件接口处的信息准确性,还可以测试软件内部结构以及逻辑流程。虽然具有二者共同的优势,但是不具备二者的极致性。灰盒实验没有白盒实验对结构和程序测试的完整性和细致性,只是根据一些具有代表性的特征来测软件内部结构和程序的完整与详细。因此,灰盒实验的主要用途是在黑盒实验测试不出任何问题的情况下,先使用灰盒实验要测试软件的问题,提高软件测试的质量和效率。

3软件测试管理

3.1采用B/S结构

B/S结构可以在网络服务器中实现对软件的测试,促进软件测试的自动化和现代化,测试人员可以在任何时间和地点进行软件的测试,打破了传统软件测试管理在时间和空间上的局限性。测试人员可以利用互联网登录到软件工作页面中,输入测试人员的账号与密码登录网页进行软件的测试,给测试人员的工作带来了很大的便利,提高软件测试效率和质量。

3.2测试资源共享

在进行软件测试管理中,软件开发企业要提供测试用例以及软件缺陷等数据库,软件开发的技术人员可以具有测试用例以及软件缺陷等数据库的的访问权限,在这样的环境下,测试人员可以利用测试管理系统实现测试资源共享,利用以往软件测试管理的实践经验,在现有软件测试管理的基础上不断地进行优化和完善,提高软件测试的技术水平和管理水平,为高品质软件的研发提供打下坚实的基础。

3.3加强工作人员的沟通

所有软件测试的工作人员可以在任意时间地点查看测试资料、成功用例和软件缺陷等信息,可以针对软件测试信息数据进行讨论,并积极发表自己的意见,从而有效增强软件测试相关工作人员的团队能力和协作精神,营造一个良好的工作氛围。

4结束语

综上所述,软件测试对软件整体质量和性能的展现具有非常重要的意义和作用。本文首先对软件测试技术和软件测试管理进行了分析,其次对软件测试技术中出现的问题提出了具体方法。对于软件测试和管理人员具有一定的参考价值。

参考文献

[1]黄莹.软件测试技术与测试管理[J].工业控制计算机,2013(05):36-37+47.

[2]林天华.软件测试技术及其管理工具的研究与实现[D].华北电力大学(北京),2014.

[3]罗霄.基于过程的软件测试管理技术及支持工具的研究[D].西北大学,2013.

[4]梁巧清,范耀明.分析软件测试技术与测试管理[J].电子技术与软件工程,2016(11):80.

分析软件测试技术与测试管理 篇10

1软件测试管理的概述

1.1软件测试管理的内容与目标

软件测试管理的实质在于跟踪与管理各测试阶段中的相关计划与流程, 并将测试管理的相关结果向系统研发职员与管理职员举行反馈, 同时要求凭据软件系统中的缺陷天生相应的陈诉。测试管理的内容重要包罗对过程的测试、对职员的测试以及对事情产物的测试。此中在管理测试过程方面重要考量软件的应用环境与测试是否具备有用性, 在此底子上做好后期测试过程的革新。在管理测试职员方面, 需对软件职员的事情状态等相关数据举行分析与网络, 果断是否与预期测试目标相符合。而在管理事情产物测试方面重要对测试软件产物举行分析与丈量并从中获取可以大概为决议计划提供参考的数据信息。因此, 软件测试管理的目标实质是控制与管理整个测试流程, 以此保证软件产物的质量。

1.2软件测试管理重要观点分析

软件测试过程中涉及的观点重要包罗测试用例、缺陷以及协划一方面。此中的测试用例可细化为相关的数据与所得出的结果, 用于果断测试结果是否与测试计划目标相符合, 确定软件应用步伐中是否存在影响正常运行的题目。而缺陷的观点, 很多研发职员每每以Bug代指软件开发过程中存在的题目, 从狭义角度分析指为由步伐编写过程孕育发生的题目, 而在广义上以为软件应用利用过程中出现的错误。而对协同的观点, 凭据以往学者将其应用于盘算机中的界说为对空间漫衍与时间分散支持的同时, 使软件各部门派合互助。

2以P-TMS为例的软件测试管理系统分析

2.1从需求跟踪管理角度出发

举行需求跟踪管理过程中所分析的重要为用户原始需求, 此中的测试用例会合所包罗的用例具有肯定的联系关系性, 且对应测试用例每每存在肯定的缺陷题目。但值得注意的是很多需求项无需利用测试用例, 不必对其跟踪管理。别的, 在需求跟踪过程中, 由于用户对软件项目标需求差别阶段会存在肯定的变革, 要求构建需求变动流程, 详细过程包罗对需求变动的申请, 在此底子上订定变动的决议计划, 末了在落实阶段需对测试用例重新计划并修改测试用例库。

2.2从测试用例管理角度出发

软件测试事情的成败很大水平上受测试用例管理的影响。详细管理过程中起首需对其构造布局举行分析, 保证此中的上下级系统、子系统、功效模块以及测试用例集等设置公道, 通常各功效模块中每每包罗很多功效项, 而功效项中聚集部门测试用例集, 各测试用例集又存在很多测试用例。其次, 由于被测软件项目存在功效相似或同样的环境, 具有同样的测试要求。对此可引用复用技术, 测试功效项或需求项雷同的软件过程中便可在测试用例库中探求对应的测试用例完成测试过程。

2.3从缺陷管理角度出发

软件生命周期内无论研发阶段或利用阶段都存在肯定的缺陷题目, 要求做好缺陷跟踪管理事情。软件项目测试管理中的相关职员都可对存在Bug向测试主管提交, 而测试职员便需做好缺陷状态以及管理缺陷题目标相关数据统计, 以使项目希望环境可被实时掌握。同时, 应做好项目缺陷的分类, 如步伐题目、数据处置处罚中的错误、编码范例性题目、接口错误、内存管理、系统性能等方面, 在此底子上针对每种范例缺陷提出相应的管理方案并存档与缺陷方案库中, 再次出现该类缺陷时便可从方案库中找到对应管理方法。

3关键技术在软件测试管理中的应用

凭据前文中对P-TMS软件测试管理系统的分析, 在现实计划测试管理系统过程中需重点做好重要功效模块的计划事情。此中在计划重要功效模块过程中要求将模块笼罩整个测试管理过程中, 详细包罗项目范围管理模块、需求项管理模块、测试用例模块、实行计划模块、测试用例模块、管理缺陷的模块、天生报表与系统团体管理模块等。而在计划数据库过程中需凭据相应的模块内容, 保证各模块间的相关数据融于数据库系统中。这种计划测试款力模块的关键技术重要表如今以下几方面。

3.1状态流转技术的应用

状态流转技术的提出重要针对软件中存在的缺陷题目, 计划过程中思量到软件开发与应用的脚色以及详细职责内容。同时, 在现实处置处罚缺陷中除举行状态转换中的相关信息外, 其他很多活动信息都具有显着的缺陷属性, 对此需保证到处置处罚关键的缺陷处置处罚都需创建在前一关键处置处罚完成的底子上。

3.2前置测试的关键技术应用

前文在计划构建测试管理系统过程中应用的重要为前置测试技术, 其在应用过程中重要思量到软件在开发初期便通过测试管剃头现此中存在的题目, 制止开发中缺陷较多, 有利于软件开发质量的进步, 也便于后期维护事情。而除应用前置测试技术外, 现实构建测试管理系统中也应用测试驱动开发相关理念, 为各测试管理关键提供保障。

3.3测试信息共享的关键技术应用

软件测试管理过程中的测试信息共享重要表如今测试用例信息以及缺陷信息的共享。在测试用例信息方面可充实发挥测试用例库的作用, 要求计划职员将差别范例的测试用例存储于测试用例库中。同时, 在计划测试用例库中也可引入复用技术, 对需求项或功效雷同的测试用例接纳直接复用的方法。别的, 在缺陷信息共享方面, 可将差别范例的缺陷以及相应的分析管理方法存于缺陷方案库中。使软件中出现雷同缺陷时, 可在缺陷方案库中探求对应的管理方案。

4结语

软件质量的保证需充实发挥软件测试管理的作用。通过文中基于过程的软件测试管理系统计分剖辨, 要求在现实构建过程中注意应用状态流转技术、前置测试技术、信息共享以及度量测试过程与结果的相关技术, 并保证测试管理系统中个模块如项目管理模块、测试的计划以及管理缺陷等模块都可发挥应有的结果, 如许才可有用监督测试管理的全过程, 为软件质量提供坚固的保障。

摘要:随着科学技术的快速发展, 对软件质量也提出更高的要求。而软件质量的保证重要得益于有用的测试管理, 以往软件测试过程中重要会合在软件编码测试方面, 轻忽对软件项目开发的全过程举行分析。对此要求对庞大的软件测试项目构建美满的测试管理流程, 从软件测试管理中促进软件应用质量的进一步进步。文章重要对软件测试管理的根本概述、P-TMS软件测试管理系统的研究计划以及所应用的关键技术举行探析。

关键词:软件测试,管理过程,关键技术

参考文献

[1]张英.软件测试过程管理控制的研究[J].南昌航空工业学院学报, 2015 (02) .

[2]张涑贤.软件过程质量管理[M].科学出版社, 2008.

软件测试质量管理 篇11

关键词:中小型企业管理软件;竞争格局;发展趋势

中图分类号:C93 文献标识码:A文章编号:1007-9599 (2011) 11-0000-02

Aimed at Management Software Market Cake:SME

——Pattern of SME Management Software Market

Xu Jiangang1,Chen Jun2

(1.China Software Industry Association,Financial and Business Management Software,Operations Branch,Beijing100060,China;2.Shenzhen Dahe Investment Consulting Co.,Ltd.Research Department, Guangdong518000,China)

Abstract:A few years ago in Germany,a professor who specializes in small and medium enterprises Herman Simon,wrote a book shocked the world ——"hidden champions",the book describes some of the usual business,without exception,is not known to the public but in a small market segment market share was surprisingly small and medium enterprises.SMEs are a very potential market,small and medium enterprises has been seen as the future of management software market,where,after all,after ten years of information technology development,integration of the two reflected in the large enterprise has become increasingly deep,enterprise management software in order to realize new business,one must start from the SME market."Despite the lower cost of small and medium enterprises,but they demand a little less than large enterprises,we must pay attention to occupy more than 90%of the total number of enterprises SME market."From Kingdee,SAP and Oracle executives have expressed similar view.

Keywords:Small and medium enterprise management software;Competition;Trends

一、中小型企业管理软件行业基本情况

据有中国中小企业协会数据显示,截止于2010年初我国中小企业数量已超1023万户,这个数字还不包括3000多万户的个体工商户。目前中小企业管理软件市场规模仅有82.6亿元,如此计算目前我国中小企业平均每家对管理软件产品的投入还不到200元,与发达国家相比,信息化程度极为落后。由于中小企业巨大的数量基础能给管理软件行业带来巨大的市场空量,当大型企业市场趋于饱和的状况下,占据企业总数90%以上的中小企业市场将是管理软件行业最后的盛宴。

中小型企业管理软件行业企业较多,品牌杂,除最早以中小企业管理软件起家的管家婆、速达等企业外,用友、金蝶等国内巨头及SAP、ORACLE等国外大鳄也逐步将眼光转向中小企业市场,瓜分这块蛋糕。根据市场调查,我国中小企业管理软件市场基本情况如下:

2008-2010年重要企业管理软件产品销售额情况

单位:亿元

年度2010年2009年2008年

市场大中小合计大中小合计大中小合计

用友9.7511.801.0722.627.429.250.9317.65.938.410.9615.30

金蝶3.377.291.0011.662.425.240.728.382.304.980.687.96

SAP5.401.770.197.364.561.480.176.213.961.290.145.39

Oracle3.171.040.114.322.760.900.103.762.410.790.093.29

任我行- 0.881.982.86- 0.531.662.19- 0.401.281.68

速达- 0.420.961.38- 0.380.881.26- 0.340.791.13

其他33.3734.6219.4787.4629.8231.5516.6878.0525.5625.9614.1365.65

合计55.0657.8224.78137.6646.9849.3321.14117.4540.1642.1718.07100.40

备注:以上数据均为管理软件产品最终市场价

二、中小型企业管理软件行业竞争格局

(一)重点企业

1.国内厂商

在过去的几年里,国内厂商凭着本土优势,提供优质的产品和周到的服务,迅速崛起,涌现出了一批知名企业,下面对中小型企业管理软件重点企业简单介绍。

(1)用友软件:畅捷通,走通中小企

目前用友向中小企业提供管理软件的主要是其旗下的全资子公司畅捷通软件有限公司,于2010年3月成立。畅捷通依托于母公司的资金、技术、资源优势,发展非常迅速。据介绍,用友T系列软件是专门针对中小企业研发的管理软件,目标是帮助中小企业“生存发展”更幸福、“经营管理”更智慧。畅捷通软件有限公司在2011年5月宣布,目前其用户量已突破100万。2011年有关加快中小企业转型、全面推进信息化发展的议题仍旧是关注焦点,畅捷通将加快完善服务网络和产品,迈入更快的发展轨道。对此,畅捷通董事长王文京指出,随着“十二五”国家转变经济发展方式战略的实施,以及“两会”相关策略的实施,畅捷通将会在新的一年,为更多中小型企业提供管理软件及服务。

(2)金蝶:KIS走进中小企

金蝶国际软件集团有限公司总部位于中国深圳,始创于1993年8月8日,在中国大陆设有深圳、上海、北京三个软件园,在深圳、上海、北京和新加坡等四地设立了研发中心。金蝶目前面向大型企业的产品主要是EAS,涵盖企业财务管理、供应链管理、客户关系管理、人力资源管理、知识管理、商业智能等,面向中小型企业的产品主要是K/3系列和KIS系列。

金蝶KIS产品系列在价格和功能方面的完美结合保障了其品牌和市场优势。金蝶在中国大陆地区建立了强大的销售服务平台,目前拥有98家以营销与服务为主的分支机构,以及1200多家合作伙伴,覆盖中国221个城市和地区。

(3)任我行:管家婆,中小企管理专家

任我行软件股份有限公司是国内最早专注于中小企业信息化,旗下拥有“管家婆”、“任我行”、“千方百剂”等知名品牌,产品涵盖进销存、财务、ERP、CRM、OA等领域。

任我行是最先直接定位于中小企业市场的管理软件提供商,在中小企业快迅发展的今天终于展现了定位准确的优越性。据任我行软件公司内部统计,管家婆软件的正版注册用户已经超过70万家,并以每年10多万家的数量稳步递增。任我行的营销网络构成了国内规模庞大、实力雄厚的中小型企业管理软件销售、服务体系。在中国社会经济处于转型阶段的背景下,管家婆软件由于卓越的性能在中小企业群体中的流传甚广。

(4)速达:直达中小企业

速达软件技术(广州)有限公司成立于1999年,由IDG、美国OZ对冲基金、鼎晖(中国)等多家跨国投资集团共同投资组建。速达公司成立10多年来,相继推出了速达3000系列、速达5000系列以及Online系列等20多种产品。

2.国外厂商

现实让过去在中小企业市场雄心勃勃的跨国巨头很受伤,SAP早在2003年就针对中国中小企业市场推出了燎原计划,而甲骨文也在2006年底在全球推出针对中小企业的加速计划,并在2007年将该计划正式在中国市场实施。

(1)SAP:重启伤心地

SAP公司成立于1972年,总部位于德国沃尔多夫市,1995年在北京正式成立SAP中国公司,并陆续建立了上海、广州、大连分公司。其主要业务为研发、销售SAP企业解决方案,并提供与其软件相关的咨询、维护和培训服务等。SAP主要为大型企业提供管理软件,其针对中小型企业的管理软件产品主要包括SAP Business All-in-One、SAP Business By Design、SAP Business One等。

在SAP最新的战略规划中,SAP希望到2014年公司盈利率能够从27%增长到35%,这样一个目标的实现,尤其离不开中小企业市场的拓展,特别是在用户数的提高上。针对中国市场,SAP表示将开展更多的营销活动,进一步拓展SAP生态系统,让更多中小企业客户、潜在客户和合作伙伴能够从中获益,并通过SAP扩展型业务合作伙伴及成员计划等项目计划为他们提供更好的服务。

(2)Oracle:发力中小企

Oracle公司成立于1977年,总部位于美国加州。目前,甲骨文公司在中国以13个城市(北京的中国公司总部,上海、广州、南京、成都、深圳、大连、沈阳、济南、杭州、西安、重庆和福州等地的分公司)为中心开展业务。公司主要业务包括研发和销售数据库、中间件、服务器和存储系统、开发工具、企业管理软件等,在管理软件业务方面,Oracle主要为大型企业提供管理软件,其针对中小型企业的管理软件主要包括Oracle JD Edwards Enterprise One等。

“我们认为一个公司的整体战略不能随便变动。”甲骨文公司中国区制造、零售、分销行业及工商企业应用总经理高礼强表示。目前中国的中型企业市场发展迅速,对管理灵活、实施快速、低成本及可扩展性的IT解决方案的需求尤为突出。甲骨文要想占据中型企业市场,必须与在各个行业积累了丰富经验的合作伙伴携手合作,利用同类最佳的解决方案有力推动中型企业对新技术的采用。

(二)市场份额

2010年,中小型企业管理软件市场规模达到82.60亿元,其中国内厂商在中小型企业管理软件领域占据着绝大部分的市场份额,在中小型企业管理软件领域,用友、金蝶仍旧处于领先地位,六大厂商一共占据了34.52%的份额,见下图:

其中,在中型企业管理软件领域,由于中型企业的业务和管理均比较成熟,对管理软件的应用比较普遍,其市场规模达到57.82亿元。在该领域,用友仍旧占据着绝对的优势,金蝶紧随其后,各厂商具体份额见下图:

在小型企业管理软件领域,六大厂商一共占21.43%的市场份额,其中任我行在小型企业管理软件领域处于领先地位。小企业管理软件的市场集中度较低,市场规模仍较小,主要是由于目前小型企业受IT预算少、缺乏专业技术人才等问题的困扰,目前普及率不高。但是随着小型企业的迅速成长,业务的发展或转型,越来越多的企业需要借助管理软件来提升工作效率、降低成本、提升管理质量等,因此未来小型企业管理软件普及率会提升,发展会越来越快,市场增长空间巨大。同时,由于用户处于对数据的一致性和操作习惯,对品牌具有依赖性,伴随着小型企业成长为中型企业,在小型企业占据优势的企业,未来具备更大的成长空间。在小型企业管理软件领域各厂商所占比例参见下表:

三、中小型企业管理软件行业发展趋势

近年来,随着中小企业的迅速发展,管理意识的增强,对管理软件认识的增加,其对的产品品牌、产品质量的重视程度越来越高,中小企业对某一品牌忠诚度的提高可使中小企业管理软件企业获得高出行业平均水平的利润,因此随着行业中龙头企业的逐步凸显,品牌之间的竞争将会进一步加剧。

软件测试技术与管理探究 篇12

专业调查研究结果表明,我国现代化软件测试行业存在很多运营问题,体系发展不完善,在计算机技术广泛应用到各行各业之后,人们对软件开发以及产品的性能要求变得越来越严格[1]。本文主要探究软件测试技术与管理。

1 软件测试目的、原则及分类

1.1 软件测试的目的

软件测试的最终目的不是单纯地明确措施,还必须在明确错误的基础上研究其成因以及相应的分布特点,促使项目管理人员及时明确软件测试当中存在的风险以及缺陷,从而采取有效地改善措施[2]。

1.2 软件测试的原则

第一,不管进行什么类型的软件测试,都必须考虑用户的根本需求。软件测试的主要目的是发现问题并提出改进措施。如果无法满足用户需求,那么软件测试就会没有意义。

第二,要在最短的时间内制定软件测试方案与计划,并加强软件测试。软件本身往往较为复杂,软件开发的每个过程也都呈现出多样性特征,因此在各个开发环节,都有可能出现失误。项目管理人员不能把软件测试客观地认为软件开发的独立过程,而是应该将其与软件开发的各个过程相连,加强阶段性情况评审,及时发现问题并采取有效地解决措施,确保软件质量。

第三,要按照从小到大的顺序,从小规模测试过渡到大规模测试。

第四,软件程序的路径组合对应的往往是天文数字,如想兼顾软件测试程序执行过程中的各种可能性是难以操作的。但是,进行有效的程序逻辑覆盖,进而明确软件测试程序设计过程中的各个条件是可操作的[3]。

第五,软件测试的主体为独立第三方。想要保证软件测试结果准确性和公平性,应当选择客观的独立第三方作为测试的主体。

1.3 软件测试的分类

专业研究结果表明,软件测试具体能够分为两类:第一类是黑盒式测试,第二类是白盒式测试。第一类测试是指软件系统作为黑盒子,应考虑程序内在逻辑性,进而结合说明书内容检查程序功能,检验其是否可以满足功能要求。第二类测试是指让测试工作者结合程序内部逻辑以及数据,落实软件测试用例设计工作和选择工作,并对相应的逻辑路径进行有效测试。根据前后过程,可以将软件测试分为单元性软件测试、组装软件测试以及系统软件测试等。

2 软件测试核心技术在软件测试管理中的应用

2.1 状态流转技术在软件测试管理中的应用

在软件当中,可能会出现一系列缺陷题目,针对该问题,创新出状态流转技术。通过在软件测试管理过程中应用该技术,可以明确软件开发目的和应用角色,并明确相对应的职责内容。实际的缺陷处置过程可以有效借鉴状态流转过程中的数据与资料,还能在其他活动开展过程中明确相应信息的缺陷属性。

2.2 前置测试技术在软件测试管理中的应用

在软件测试管理系统构建的过程中,往往需要应用到前置软件测试技术,在该软件测试技术的应用当中,应主要考虑软件最初开发阶段的设计,如限制软件开发过程中更多缺陷的产生,促进产品质量的不断提升,这些设计都能为后期维护工作的有效开展奠定基础。另外,除了要在软件测试管理系统构建中运用前置测试技术之外,还要严格遵循软件测试驱动开发的需求以及理念,保证软件测试管理各个环节工作的有效落实[4]。

2.3 信息共享技术在软件测试管理中的应用

在软件测试管理过程中,有效运用信息和数据共享技术是非常重要的,不仅可以实现软件测试对应用例数据的共享,还能实现软件测试对应缺陷数据的共享,这样有利于提升软件测试管理效率。通过实现软件测试用例数据共享,能够有效增强软件测试用例库的功能,使公众人员把具有差异性的范围测试用例,正确存储到系统软件测试用例库里面。与此同时,在系统软件测试用例库里面,也能够有效运用复用技术,针对那些需求项以及功效雷同的项目来说,应当适当运用直接复用技术以及方法。另外,软件测试缺陷数据共享应当在缺陷方案库当中引入差异性范例缺陷研究措施和管理措施,如果测试软件有雷同缺陷的话,要结合缺陷方案库制定相应有效的管理计划[5]。

3 强化软件测试管理的有效对策

3.1 加强对软件测试各个过程的有效管理

在软件测试需求的过程中,应当及时掌握软件测试对应的具体对象以及实际范围。软件测试负责人员要加强与项目工作人员的有效交流与合作,从而在规定时间内收集和整理好相关信息和资料,深入研究软件测试各个环节的根本性需求,将软件测试内容具体化和细分化为需求,确保软件测试的有效性和可行性。在软件测试计划过程中,核心工作是结合软件测试需求制定软件测试方案,具体的软件计划工作有软件测试环境条件分析、软件测试进度分析以及软件测试风险分析,而在执行软件测试的过程中,要同时兼顾软件测试实施工作和软件测试监控工作[6]。另外,在软件测试缺陷跟踪过程中,必须在最短的时间内完成缺陷报告工作,并持续跟踪改善进度。

3.2 加强软件测试核心问题的监控与管理

第一,要加强对软件测试中思维定式问题的监控与管理。要避免软件测试工作人员因为经验丰富,对自己过于自信,而产生惯性思维定式,反之会在增加软件测试次数的基础上降低缺陷防范率。具体的软件测试缺陷防范方法很多,比如测试工作者反复编制和创新程序,都可以提升缺陷防范率。

第二,要加强对软件测试中定位效应问题的监控与管理。定位效应是指软件测试工作者针对那些已经测试过的功能,是否会再次进行认真测试,如果做不到足够的认真和细心,就会因为疏于防范,产生更多的缺陷。工作人员必须全面而有效地实施软件测试用例,并有效组织软件测试工作者加强交叉式软件测试,这样才能有效地解决该问题。

3.3 加强软件测试团队管理

在软件测试与管理过程中,测试人员和管理人员是核心主体。因此,要想保证软件测试效率,必须加强软件测试团队管理。负责人员可以通过经常和组织人员交流与沟通,加强定期或不定期的情况评定,加强对软件测试管理人员的绩效考核来完善员工考核制度。另外,还要加强对软件测试人员以及管理人员的专业化培训力度,提升员工的工作水平和管理水平,增强员工的工作责任感,给予员工充足的深入学习新技术的机会,最终打造出一支综合素质足够高的软件测试队伍。

4 结语

综上所述,在软件开发过程中,开发人员通过加强软件有效测试,保障了软件开发的准确性与安全性。与此同时,加强软件测试管理,也为软件测试工作的有序进行打下了基石。

摘要:近年来,随着我国科学技术的不断发展,软件开发力度也相应地随之加大,但和国际水平和要求相比,还存有很大的差距。文章认为,在这样的情况下,必须加强现代化软件测试技术创新,并加强软件测试智能化管理,确保软件工程的有效实施。

关键词:软件测试,核心技术,管理

参考文献

[1]孙靖.我国软件测试技术的应用与发展趋势[J].工业设计,2015(10):144-146.

[2]于园园.软件测试技术与测试管理研究[J].江苏科技信息,2016(7):66-68.

[3]张娜.浅谈软件测试技术与管理[J].信息与电脑,2015(13):84-85.

[4]王蓓,刘妍蕾,李勇,等.软件测试技术在电科院综合管理信息系统中的应用[J].蒙古科技与经济,2014(21):51-54.

[5]马泽锋.软件测试技术在金融软件中的应用分析[J].电子制作,2016(4):53.

上一篇:知识衔接论文下一篇:虚拟视点图像