随着软件产业的发展,软件产品的质量控制与质量管理正逐渐成为软件企业生存与发展的核心,软件测试在软件项目实施过程中的重要性日益突出。在软件测试时,必须建立严格的判断基准,也就是判断软件是否存在缺陷的依据。判断软件是否存在缺陷的重要依据就是用户需求,软件的功能特性就是为了满足用户需求,不能满足用户业务需求的软件就是有缺陷的,该文将从这一点来分析,软件测试要以用户功能需求为依据,来对软件进行检验。
1.概念解释
ERP是Enterprise Resource Planning(企业资源计划)的简称,ERP是针对物资资源管理(物流)、人力资源管理(人流)、财务资源管理(财流)、信息资源管理(信息流)集成一体化的企业管理软件。
软件测试英文名称(Software Testing)。简单来说就是使用人工或者自动手段来运行或测试某个系统的过程,其目的在于检验它是否满足规定的需求或弄清预期结果与实际结果之间的差别。
功能测试的英文名称Functional testing,也称为behavioral testing(行为测试),就是根据产品设计规格说明书,对产品的各功能进行验证,根据功能测试用例逐项测试,以验证系统是否满足用户的功能性需求和规范。
2.现状分析
ERP系统本身是一种业务流程很复杂,单据报表众多,逻辑性很强的系统,质量保证方面很难得到严格的控制的软件系统,在测试过程中经常会出现测试设计遗漏、测试执行遗漏等问题发生,如何才能设计出比较合理、覆盖率比较高的功能测试用例,降低测试遗漏率呢?成为耳前界面关注闻题。因为功能测试结果取决于测试用例的设计,因此用例的设计和测试内容将是本文重要讲解的内容。
3.功能测试的测试内容
功能测试是对软件产品的各项功能进行测试,验证系统功能是否实现了需求规格说明书中所要求的所有功能,功能测试不仅要检验正常操作功能的行为状态,还要探索各种潜在的用户使用场景,检验可能存在的非法操作功能的结果。无论从其重要性还是工作量来年,功能测试在软件测试中都占有很重要的地位。
对于ERP管理软件,功能测试时应考虑以下内容:
1)界面:系统界面整体布局的合理性。是否清晰、美观、包括颜色搭配、字体、文字是否对齐、图片大小与位置、弹出窗口的位置是否合适。其次,用户能否调整布局、自己定义界面等。
2)数据:能接受正确的数据输入,并对异常数据的输入有提示和容错处理。
3)操作测试:所有的菜单。按钮设计有其操作是否灵活,符合用户的习惯,并能对操作是否有正确的响应。
4)翻页功能测试:首页、上一页、下一页、尾页,总页,当前页数。指定跳转页,指定每页显示条数。
5)搜索功能测试:页面检查,默认条件搜索,可选条件搜索,输入条件搜索等。
6)逻辑:逻辑是否简单合理、清楚、流畅。如果某个操作需要多相步骤来实现,是否有清楚的提示。是否提供向导来帮助用户来完成。某项功能,其不同操作的路径不一样,但逻辑上是否保持一致。系统的各种状态是否按照业务流程而变化,是否保持稳定的变化。
7)接口:是否配合多种硬件周边设备和所需的第三方软件接口的需要,公共接口的需要。不管是内部应用接口,还是外部应用接口,是否保持其规范性、一致性、和完备性。接口是否为可定义的可配置的,是否有良好的兼容性和扩充性。
8)版本:软件升级后,是否能继续支持旧版本的数据。
4.测试用例设计流程和设计方法
就ERP管理软件而言,一般按照功能模块来组织、对系统的每一个功能点都要设计相应的测试用例。在进行功能测试用例设计时,应该遵守下列操作的流程:
1)根据功能结构及其关系,进行模块层次划分,形成功能模块或子模块。
2)针对每一个功能模块。理解其用例(Use Case,)设计其工作流程图或数据流图。
3)确定逻辑路径、测试环境及其测试点。
4)针对各个测试点(条件、数据、路径、场景等),设计测试用例。首先设计最上层的测试用例,然后再向下逐层推进。
5)测试用例的评审和修改。
测试用例设计步骤:
1)为每一个等价类规定一个唯一的编号;
2)一个新的测试用例,使其尽可能多地覆盖尚未被覆盖地有效等价类,重复这一步,直到所有的有效等价类都被覆盖为止;
3)计一个新的测试用例,使其仅覆盖一个尚未被覆盖的无效等价类,重复这一步,直到所有的无效等价类都被覆盖为止。
边界值分析法
大量实验证明,针对各种边界情况设计测试用例,可以查出更多的错误。
测试用例的设计原则:
1)使用边界值分析方法设计测试用例。首先应确定边界情况。
2)通常输入和输出等价类的边界,就是应着重测试的边界情况。应当选取正好等于,刚刚大于或刚刚小于边界的值作为测试数据,而不是选取等价类中的典型值或任意值作为测试数据。
案例:ERP管理软件人事模块中:个人所得税处理的程序。就是边界值分析和对等价划分法结合起来使用的典型例子。如表1所示。
表1 依赖于边界值的等价划分
因果图法
因果图法它适合于检查程序输入条件的各种组合情况。
测试用例设计步骤:如图2所示。
1)分析软件规格说明描述中,那些是原因(即输入条件或输人条件的等价类),那些是结果(即输出条件),并给每个原因和结果赋予一个标识符。
2)分析软件规格说明描述中的语义。找出原因与结果之间,原因与原因之间对应的关系,根据这些关系,画出因果图。
3)对需求加以分析并把它们表示为因果图之问的关系图。
4)把因果图转换为判定表。
5)将判定表的每一列拿出来作为依据'设计测试用例。
图2 用因果图法设计测试用例的步骤
案例:以变压器制造业ERP管理软件中产前模块,工艺路线划分的程序进行用例设计。工艺路线按工序分为加加工工艺路线和装配工艺路线。
判定表驱动测试
判定表能是一种针对存在条件、动作关系或者因果关系的特性测试用例的设计方法。
判定表的建立步骤:
1)确定规则的个数,例如,有n个条件,那么决策表中就有2n个规则,(每个条件为,F,或T)。
2)列出所有的条件桩和动作桩。
3)填人条件项。
4)填入动作项,得到初始判定表。
5)简化判定表,合并相似规则。
场景法
ERP软件是大都是用事件来控制流程的,事件触发时的情景便形成了场景,
测试用例设计步骤:如图3所示。
1)根据说明,描述出程序的基本流及各项备选流,如图3所示。
2)根据基本流和备选流生成不同的场景。
3)每一个场景生成相应的测试用例。
4)对生成的测试用例进行审查,去掉多余的,再为每一个测试用例确定测试数据值。
图3 场景法的基本流和备选流
功能图法
功能图法是黑盒和白盒混合用例的设计方法。
试用例的设计步骤
1)生成局部测试用例:在每个状态中,通过因果图生成局部测试用例
2)生成测试路径:利用规则生成从初始状态到最后状态的测试路径。
3)合成测试用例:合成测试路径与功能图中每个状态的局部测试用例。其结果是初始状态到最后状态的—个状态序列,以有每个状态中输人数据与对应输出数据的组合。
4)采购用条件构造树测试用例的合成算法。
错误推测法
测试用例的设计原则:
首先,列举出程序中所有可能的错误和容易发生错误的特殊情况,根据可能出现的错误情况选择测试用例,其次测试人员要站要用户的角度。考虑他们要输入的信息,而不管这些信息看起来是合法的输入还是非法的输入。
正交试验设计方法
测试用例的设计步骤:
1)提取功能说明,构造因子——状态表
2)加权筛选,生成因素分析表
3)利用正交表构造测试数据集:提取功能说明。构造因子——状态表:加权筛选,生成因素分析表;利用正交表构造测试数据集。
案例:在ERP管理系统中,人事模块中员工信息的查询功能。员工姓名、员工编号身份证号
1)首先考虑用等价划分类,边界值共用的方法设计用例。用错误估算法补充用例。
2)如果程序业务流程很清晰,应考虑主要采用场景法设计用例。
3)如果程序中有详细的因果关系,应一开始就考虑用因果图法,然后根据因果图导出判定表。
4)如果是文件配置类型的测试,应考虑用功能图法。
5.结束语
文中对复杂的ERP系统进行分析基础上。结合目前的测试现状,提出关于功能测试内容、用例的设计流程、方法和技术,保证了系统业务流程,软件功能的准确实现,而且此测试方案在变压器制造行业的ERP管理系统中,得以充分应用,为软件的验收评估和成功实施打下了坚实的基础。
本文转自d1net(转载)