2.2 验证、评审和改进代码
RuleChecker 用所选的规则对源代码进行验证。指出所有不符合编程规则的代码,并提出改进源代码的解释和建议。 RulrChecker通过文本编辑器直接访问源代码并指出需要纠正的位置。
Audit 将被评价的软件与规定的质量模型进行比较,用图形形式显示软件质量的级别,因此,质量人员可以把精力集中到需要修改的代码部分。对度量元素和质量模型不一致的地方作出解释并提出纠正的方法。
对软件质量的详细分析, Audit 可用各种图形表示:
· 应用系统的体系结构——调用图显示过程和函数之间的关系。评审应用系统的设计;
· 每个过程和函数的逻辑结构——控制流图显示算法的逻辑路径。用图形表示评审函数的复杂性;
· 与质量模型的一致性——Kiviat图和饼图使质量等级与所选择的参考之间的一致性更加可视化。
3. LOGISCOPE 用于测试阶段
3.1 定义测试准则
在软件测试阶段,最重要的是保证代码的所有路径都被充分的覆盖 [4,5] 。只有那些,经过充分测试的软件才是可信的。特别是高可靠性的软件。
为保证测试的有效性,必须客观地定义可量化的准则和策略以判断何时结束测试阶段。
LOGISCOPE推荐对指令(IB)、逻辑路径(DDP)和调用路径(PPP)的覆盖测试。此外对安全-关键软件还提供了MC/DC的覆盖测试[5]。
3.2 测试的有效性
TestChecker 产生每个测试的测试覆盖信息和累计信息。用直方图显示覆盖比率,并根据测试运行情况实时在线更改。随时显示新的测试所反映的测试覆盖情况。
TestChecker 允许所有的测试运行依据其有效性进行管理。用户可以减少那些用于非回归测试的测试。
3.3 测试的优化
在测试阶段的第一步,执行的测试是功能性(黑箱)测试。其目的是检查所期望的功能是否已实现。在测试初期,覆盖率会迅速增加。象样的测试工作一般能达到 70%的覆盖率。但是,要提高此比率是十分困难的。主要是由于测试用例覆盖了相同的测试路径。这时,需要对测试策略做一些改变。执行结构化(白箱)测试, 即,要检测没有执行过的逻辑路径,定义新的测试用例覆盖这些路径。
在执行测试期间,当测试策略改变时,综合的运用 TestChecker 检测关键因素以提高效率。将TestChecker与Audit配合使用能够帮助用户分析未测试的代码。
用户可以显示所关心的代码,并通过对执行未覆盖的路径的观察得到有关的信息。信息以图形(控制流图)和文本(伪代码和源文件)的形式提交,并在其间建立导航关联。
TestChecker 管理系统声明新的测试、生成有关文档、定义启动命令、以及自动执行的方法。
4. LOGISCOPE 用于维护阶段
人们广泛的认识到应用系统的维护费用与开发费用基本相等。经验表明50%的软件维护时间化在对结构、逻辑和运行的理解上。
LOGISCOPE可以大大的减少对未知系统的理解所需的时间。
Audit 将应用系统的框架以文件形式(部件文件间的关系)和调用图的形式(函数和过程间的关系)可视化。
函数的逻辑结构以控制流图的形式显示。在控制流图上选定一个节点,即可得到相对应的代码。
行分析,不同层次间的导航,促进对整体的理解。
文章来源于领测软件测试网 https://www.ltesting.net/