软考复习-软件工程04-系统测试

系统测试

目的:以最少的人力和时间发现潜在的各种错误和缺陷。
基本原则

  1. 尽早并不断地进行测试。以便于在各个开发阶段发现问题,解决错误,消除隐患,降低风险。
  2. 专人执行,避免由开发小组人员进行测试,保证测试客观性。
  3. 设计测试方案时,要在确定输入参数,并预期正确情况下的输出结果的情况下进行测试。
  4. 在设计测试用例时,除了设计合理的输入以预测结果外,也应设计不合理的输入并预期结果。
  5. 在测试程序时,除去验证程序完成任务时进行的必要操作外,也要注意程序在完成任务时进行的不必要操作。
  6. 严格按照测试计划进行操作,避免测试的随意性。
  7. 妥善保管测试计划,测试用例,测试结果,方便软件进行维护。
  8. 设计测试用例时,注意测试用例的可重复性。

测试过程

  1. 制定测试计划。
  2. 编制测试大纲。
  3. 根据大纲设计和生成测试用例。
  4. 实施测试。
  5. 生成测试报告。

测试方法

测试方法分为静态测试和动态测试。

静态测试

被测程序不再机器上运行,而是采用人工检测和计算机辅助静态分析的手段对程序进行检测。

动态测试

通过运行程序发现错误,分为黑盒测试和白盒测试。

黑盒测试

也称为功能测试,在完全不考虑软件内部结构和特性的情况下,测试软件的外部特性。主要为了发现功能完整性,界面准确性,输入输出正确性,数据结构,数据库访问是否存在异常,性能是否能接受,初始化和终止时是否正常等问题。
常用的黑盒测试技术:
等价类划分
将程序的输入域划分为若干等价类,然后从每个等价类中选一个代表数据作为测试用例,使每一个数据在同类中具有代表性,从而实现用较少量数据去的较好的测试结果的目的。
在等价类划分时,应注意两种情况:有效等价类与无效等价类。
边界值分析
输入边界值比中间值而言更容易发生错误,因此可以用边界值分析来补充等价类划分的测试用例设计技术。
错误推测
基于经验和直觉推测程序中可能存在的各种错误,从而针对性的设计测试用例的方法。
因果图
从自然语言描述的规格说中找出输入条件和输出改变,通过因果图转换为判定表。

白盒测试

也称为结构测试,根据程序的内部结构和逻辑来式设计测试用例,对程序的路径和过程进行测试,检查是否满足设计需求。
白盒测试原则

  1. 程序模块中的所有独立路径至少执行一次。
  2. 在所有的逻辑判断中,取“真”和“假”的两种情况至少都能执行一次。
  3. 每个循环都在边界条件下各执行一次。
  4. 测试程序内部数据结构有效性。

常用白盒测试:
逻辑覆盖
逻辑覆盖考察用测试数据运行被测程序时对程序逻辑的覆盖程度,主要的逻辑覆盖有:

  1. 语句覆盖:指选择足够的测试数据,使被测试程序中的每条语句至少执行一次。对程序执行逻辑的覆盖很低。
  2. 判定覆盖:也称分支覆盖,设计足够的测试用例,使得被测程序中的每个判定表达式至少获得一次“真”和一次“假”值。
  3. 条件覆盖:指构造一组测试用例,使每一判定语句中的每个逻辑条件的各种可能的值至少满足一次。
  4. 判定/条件覆盖:指设计足够的测试用例,使判定中每个条件的所有可能取值(真和假)至少出现一次,每个判定本身的判定结果(真和假)至少出现一次。
  5. 条件组合覆盖:设计足够的测试用例,使得每个判定中各个可能值的组合都至少出现一次。
  6. 路径覆盖:指覆盖被测试程序中所有可能的路径。

循环覆盖
执行足够的测试用例,使得循环中的每个条件都得到验证。
基本路径测试
在程序控制流程图的基础上通过分析控制流程图的环路复杂性,导出基本可执行路径集合,从而设计测试用例。

发布了5 篇原创文章 · 获赞 0 · 访问量 105

猜你喜欢

转载自blog.csdn.net/qq_38891385/article/details/104689194
今日推荐