软件自动化测试实例分析

发表于:2014-12-01来源:uml.org.cn作者:不详点击数: 标签:
软件测试是对创造力和智力非常有挑战性的任务。测试一个大型软件需要的智能要超过设计这个程序的智能。软件在它发行之前应当通过彻底的测试,以保证它的可靠性和功能性,不

  软件测试是对创造力和智力非常有挑战性的任务。测试一个大型软件需要的智能要超过设计这个程序的智能。软件在它发行之前应当通过彻底的测试,以保证它的可靠性和功能性,不幸的是,测试工程师要覆盖一个大型程序的所有情况会感到太麻烦和太费时。确实,软件的每个部分如能被分别测试到,同时一些指定的路径也能被测试,这对总的软件质量的保障是非常有效的。

  一般的说,没有测试覆盖分析工具,软件在发行前仅有50%的源程序被测试过。在差不多有一半源代码没有被测试的情况下,大量的故障(bug)随软件一道被发行出去。在这种情况下,软件的质量、性能和功能不可能得到保障。此外,什么时候测试结束?或是否要对该程序作进一步的测试?对于测试工程师和测试管理人员来说是不知道的,通过引进测试覆盖的概念,问题就可以得到解决。

  项目测试管理

  1.帮助软件管理者准确地测算开发组的效率的,通过提供多层分析,包括系统/文件/类/函数的能力。

  2.提供管理人员测算工程开发进度与质量分析的能力,允许在被生成的类继承图和函数调用图上,直接反显所有在规定的日期或一个小组/单个员工完成的模块,在这些图上带有覆盖在每个类/函数框上以条形图方式显示的相关质量信息,比如大小、复杂性、数据性能、代码测试覆盖等。

  3. 结合软件系统质量分析能力和系统开发管理能力,提供给管理人员的带有质量数据的有关开发效率和工程开发进度信息总是即时的和精确的,因为它们是直接从源代码得来的第一手信息。

  测试计划

  软件系统不仅变得越来越庞大,但是也变得越来越复杂。复杂的代码是很难阅读、理解和修改的;必须化更多的精力去测试、维护和再测试。测试复杂性分析能帮助软件工程师容易并精确地去计划他们的测试活动。 提供系统级复杂性分析和过程级复杂性分析去精确地测量复杂性,帮助工程师更好地计划他们的测试活动。帮助工程师更好估计和使用测试复杂性度量,为满足不同层次的测试覆盖的要求,必需提供:块测试复杂性、分支测试复杂性、段测试复杂性、条件-判定测试复杂性、条件-段测试复杂性。测试复杂性的值取决于用于记录对应的测试覆盖数据的插装点的点数

  软件测试是对创造力和智力非常有挑战性的任务。测试一个大型软件需要的智能要超过设计这个程序的智能。软件在它发行之前应当通过彻底的测试,以保证它的可靠性和功能性,不幸的是,测试工程师要覆盖一个大型程序的所有情况会感到太麻烦和太费时。确实,软件的每个部分如能被分别测试到,同时一些指定的路径也能被测试,这对总的软件质量的保障是非常有效的。

  一般的说,没有测试覆盖分析工具,软件在发行前仅有50%的源程序被测试过。在差不多有一半源代码没有被测试的情况下,大量的故障(bug)随软件一道被发行出去。在这种情况下,软件的质量、性能和功能不可能得到保障。此外,什么时候测试结束?或是否要对该程序作进一步的测试?对于测试工程师和测试管理人员来说是不知道的,通过引进测试覆盖的概念,问题就可以得到解决。

  项目测试管理

  1.帮助软件管理者准确地测算开发组的效率的,通过提供多层分析,包括系统/文件/类/函数的能力。

  2.提供管理人员测算工程开发进度与质量分析的能力,允许在被生成的类继承图和函数调用图上,直接反显所有在规定的日期或一个小组/单个员工完成的模块,在这些图上带有覆盖在每个类/函数框上以条形图方式显示的相关质量信息,比如大小、复杂性、数据性能、代码测试覆盖等。

  3. 结合软件系统质量分析能力和系统开发管理能力,提供给管理人员的带有质量数据的有关开发效率和工程开发进度信息总是即时的和精确的,因为它们是直接从源代码得来的第一手信息。

  测试计划

  软件系统不仅变得越来越庞大,但是也变得越来越复杂。复杂的代码是很难阅读、理解和修改的;必须化更多的精力去测试、维护和再测试。测试复杂性分析能帮助软件工程师容易并精确地去计划他们的测试活动。 提供系统级复杂性分析和过程级复杂性分析去精确地测量复杂性,帮助工程师更好地计划他们的测试活动。帮助工程师更好估计和使用测试复杂性度量,为满足不同层次的测试覆盖的要求,必需提供:块测试复杂性、分支测试复杂性、段测试复杂性、条件-判定测试复杂性、条件-段测试复杂性。测试复杂性的值取决于用于记录对应的测试覆盖数据的插装点的点数。

原文转自:http://www.uml.org.cn/Test/test121901.htm