大型软件的测试方法

发表于:2010-6-01 12:28

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:搜宝网    来源:51Testing软件测试网采编

  进行大型软件项目开发时,一定会遇到各个功能的测试问题,设计一个好的解决方法往往能够起到事半功倍的效果。本文以计算机图形学软件工程项目为例,设计出一个简单的测试方案。

  一个大的工程往往是由若干个功能串联起来的,每个功能最好都要有相应的测试代码,而图形学工程最好的测试方法是将算出的结果显示出来。如果直接将大量的测试代码加到模块中,代码就会显得比较臃肿难看,影响了程序可阅读性。如果测试完就立刻删掉这些测试的代码又很危险,因为测试代码在未来很长一段时间内,都可能会被再次用到。

  很多测试代码都拥有一定的相似性,本文所涉及到的测试代码主要分为两个大的步骤:一个是运行驱动,另外一个是显示。因而,抽取出测试接口Test就包含了这样两个纯虚方法(C++语言)。

class Test
{
public:
 virtual void Run()=0;
 virtual void Render()=0;
};

  各个不同功能的测试块都要继承这个接口,例如在我的解决方案里就设计出了很多个测试实例类型:

 1:  class ModuleDzy;
 2:  class TestToothPca:public Test
 3:  {
 4:  public:
 5:   TestToothPca(ModuleDzy* module);
 6:   void Run();
 7:   void Render();
 8:  private:
 9:   ModuleDzy* module_;
10:   MeshModel* tooth_;
11:  };

 1:  class Snaxel;
 2:  class ModuleDzy;
 3:  class Contour;
 4:  class TestBoundary:public Test
 5:  {
 6:  public:
 7:   TestBoundary(ModuleDzy* module);
 8:   void Run();
 9:   void Render();
10:  private:
11:   ModuleDzy* module_;
12:   MeshModel* tooth_;
13:   std::vector<Segment3f> cross_;
14:   Snaxel* boundary_[30];
15:   Contour* contour_;
16:  };

《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号