计算机模块化软件系统中实现自动化单元测试的方法

文档序号:6438482阅读:259来源:国知局
专利名称:计算机模块化软件系统中实现自动化单元测试的方法
技术领域
本发明涉及计算机软件领域,特别涉及模块化软件系统测试技术领域,具体是指一种计算机模块化软件系统中实现自动化单元测试的方法。
背景技术
城市交通管理平台如今越来越强大,功能也越来越多,并且给城市道路交通带来了方便和快捷,在城市交通管理平台中单元测试起了重大的作用,测试质量的提高,平台的实用性,可靠性,准确性就有了保障。同样在测试质量中单元测试起到了地基性的作用,有了坚固地基,才能盖起高质量的高楼大厦,单元测试就是在交通管理平台最初开发编写时进行测试的一个阶段,就好比我们在建造一所高楼时,已经打好地基,我们要进行反复测试该地基是否可以使用,并没有安全隐患,并且盖好后是否可以支撑一定高度的楼层,同样,单元测试在平台开发编写时反复测试一个编写好的模块,是否有Bug,并保证这个模块能支撑起城市交通管理平台的大厦。在没有单元测试的时代,开发者大多数的错误都是通过操作交通管理平台页面的时候发现的。当发现一个错误的时候,会根据异常抛出的地点来确定是哪段代码出现了问题。但是大多数时候,开发者不会所有方法中都使用Try块去处理异常(这一也是低效的)。因此一旦发现一个异常通常都是最顶层代码抛出的,但是错误往往又是在底层很深层次的某个对象中出现的。当开发者找到了这个最初抛出异常的方法的时候,可能无法得知这段代码到底是哪里出了问题。只能逐行代码的去查找,一旦这个方法中使用的某个对象在外部有注册事件或者有其他的操作正在与当前方法同步进行,那么就更难发现错误真正的原因了。

发明内容
本发明的目的是克服了上述现有技术中的缺点,提供一种能够有效验证代码的行为和开发者所期望的一致、保证代码质量和可维护性及可扩展性、操作过程快捷方便、工作性能稳定可靠、适用范围较为广泛的计算机模块化软件系统中实现自动化单元测试的方法。为了实现上述的目的,本发明的计算机模块化软件系统中实现自动化单元测试的方法如下:该计算机模块化软件系统中实现自动化单元测试的方法,其主要特点是,所述的方法包括以下步骤:(I)系统新建测试项目方案;(2)系统在该测试项目方案中添加新的第一测试程序集命名,并添加相应的第一测试类;(3)系统在该第一测试程序集中添加引用,加入动态链接库;
(4)系统在该测试项目方案中添加新的第二测试程序集命名,并添加相应的第二测试类;(5)系统在该第二测试程序集中添加引用;(6)系统添加持久化类;(7)系统在该测试项目方案中添加新的第三测试程序集命名,并添加所映射的文件;(8)系统在该测试项目方案的配置文件中加入测试配置信息;(9)系统在该测试项目方案中添加引用,并将数据库驱动程序加入第二测试程序集和第一测试程序集中;(10)系统产生测试用例;(11)系统在第二测试程序集中添加测试用例所对应的类代码;(12)系统编译该测试项目方案,并进行运行,得到测试结果。该计算机模块化软件系统中实现自动化单元测试的方法中的动态链接库为NUnit.Framework, dll 动态链接库。该计算机模块化软件系统中实现自动化单元测试的方法中的第二测试程序集为会话管理器SessionManage。该计算机模块化软件系统中实现自动化单元测试的方法中的第二测试类为会话工厂 SessionFactory。该计算机模块化软件系统中实现自动化单元测试的方法中的添加持久化类,包括以下步骤:(61)在数据库中定义表结构和相应的字段名称和字段类型;(62)系统将该表结构生成相应的映射类。该计算机模块化软件系统中实现自动化单元测试的方法中的模块化软件系统为交通管理平台软件系统。采用了该发明的计算机模块化软件系统中实现自动化单元测试的方法,由于单元测试在整个的模块化软件系统测试过程中是最基本的测试,而且单元测试是相对廉价而简单的技术,从而能够证明某段代码的行为和开发者所期望的一致,而且使得代码更加完美、功能更完善、保证代码质量、保证代码的可维护性和可扩展性,使得操作过程快捷方便,工作性能稳定可靠,适用范围较为广泛。


图1为本发明的计算机模块化软件系统中实现自动化单元测试的方法的流程示意图。图2为本发明的计算机模块化软件系统中实现自动化单元测试的方法的测试缺陷结果示意图。图3为本发明的计算机模块化软件系统中实现自动化单元测试的方法的测试通过结果示意图。图4为本发明的计算机模块化软件系统中实现自动化单元测试的方法中没有添加程序集Model时出错结果示意图。
图5为本发明的计算机模块化软件系统中实现自动化单元测试的方法中没有添加Npgsql驱动程序时出错结果示意图。
具体实施例方式为了能够更清楚地理解本发明的技术内容,特举以下实施例详细说明。单元测试是代码正确性验证的最重要的工具,也是交通管理平台测试当中最重要的环节。也是唯一需要编写代码才能进行测试的一种测试方法。在标准的开发过程中,单元测试的代码与实际程序的代码具有同等的重要性。每一个单元测试,都是用来定向测试其所对应的一个单元的数据是否正确。请参阅图1至图5所示,该计算机模块化软件系统中实现自动化单元测试的方法,其主要特点是,所述的方法包括以下步骤:(I)系统新建测试项目方案;(2)系统在该测试项目方案中添加新的第一测试程序集命名,并添加相应的第一测试类;(3)系统在该第一测试程序集中添加引用,加入动态链接库;该动态链接库为NUnit.Framework, dll 动态链接库;(4)系统在该测试项目方案中添加新的第二测试程序集命名,并添加相应的第二测试类;该第二测试程序集为会话管理器SessionManage,该第二测试类为会话工厂SessionFactory ;(5)系统在该第二测试程序集中添加引用;(6)系统添加持久化类,包括以下步骤:(a)在数据库中定义表结构和相应的字段名称和字段类型;(b)系统将该表结构生成相应的映射类;(7)系统在该测试项目方案中添加新的第三测试程序集命名,并添加所映射的文件;(8)系统在该测试项目方案的配置文件中加入测试配置信息;(9)系统在该测试项目方案中添加引用,并将数据库驱动程序加入第二测试程序集和第一测试程序集中;(10)系统产生测试用例;(11)系统在第二测试程序集中添加测试用例所对应的类代码;(12)系统编译该测试项目方案,并进行运行,得到测试结果。同时,该计算机模块化软件系统中实现自动化单元测试的方法中的模块化软件系统为交通管理平台软件系统。在实际使用当中,在一个城市交通管理平台中,本发明可以做许多各式各样的测试,而且这些测试也是必须的。其中的某些测试需要用户大量参与;而某些则需要有专门的质量保证小组来进行;或者需要其他的一些昂贵资源。单元测试在整个的交通管理平台测试过程中是最基本的测试,它是交通管理平台的成功,个人成功的一个不可或缺的部分,但对它,人们却又存在各式各样的误解。单元测试其实是相对廉价而简单的技术,但它能让你更高效地写出质量更好的代码。
应用单元测试方法的好与坏直接影响到交通管理平台的质量,可能就是由于代码中的某一个小错误就导致了整个平台的质量降低一个指标,或者导致更严重的后果,如果我们应用好单元测试方法这种情况是可以完全避免的。运行单元测试方法,是为了证明某段代码的行为和开发者所期望的一致。所以单元测试方法的最终目的是令代码更加完美,功能更完善。保证代码质量。保证代码的可维护。保证代码的可扩展。利用NHibernate进行数据库的增删改操作为例,本发明刚开始新建了一个程序集用来编写测试用例,在此程序集中建了一个类,具体如下:(I)新建解决方案,命名为:NHibernateTest。(2)在这个解决方案中添加新的程序集命名为DateUpdateTest并添加类DataTest0(3)在这个程序集中添加引用,将NUnit.Framework, dll添加进来。并写入如下代码:
权利要求
1.一种计算机模块化软件系统中实现自动化单元测试的方法,其特征在于,所述的方法包括以下步骤: (1)系统新建测试项目方案; (2)系统在该测试项目方案中添加新的第一测试程序集命名,并添加相应的第一测试类; (3)系统在该第一测试程序集中添加引用,加入动态链接库; (4)系统在该测试项目方案中添加新的第二测试程序集命名,并添加相应的第二测试类; (5)系统在该第二测试程序集中添加引用; (6)系统添加持久化类; (7)系统在该测试项目方案中添加新的第三测试程序集命名,并添加所映射的文件; (8)系统在该测试项目方案的配置文件中加入测试配置信息; (9)系统在该测试项目方案中添加引用,并将数据库驱动程序加入第二测试程序集和第一测试程序集中; (10)系统产生测试用例; (11)系统在第二测试程序集中添加测试用例所对应的类代码; (12)系统编译该测试项目方案,并进行运行,得到测试结果。
2.根据权利要求1所述的计算机模块化软件系统中实现自动化单元测试的方法,其特征在于,所述的动态链接库为NUnit.Framework, dll动态链接库。
3.根据权利要求1所述的计算机模块化软件系统中实现自动化单元测试的方法,其特征在于,所述的第二测试程序集为会话管理器SessionManage。
4.根据权利要求3所述的计算机模块化软件系统中实现自动化单元测试的方法,其特征在于,所述的第二测试类为会话工厂SessionFactory。
5.根据权利要求1所述的计算机模块化软件系统中实现自动化单元测试的方法,其特征在于,所述的添加持久化类,包括以下步骤: (61)在数据库中定义表结构和相应的字段名称和字段类型; (62)系统将该表结构生成相应的映射类。
6.根据权利要求1至5中任一项所述的计算机模块化软件系统中实现自动化单元测试的方法,其特征在于,所述的模块化软件系统为交通管理平台软件系统。
全文摘要
本发明涉及一种计算机模块化软件系统中实现自动化单元测试的方法,其中包括新建测试项目方案、添加第一测试程序集命名及第一测试类、在第一测试程序集中添加引用及动态链接库、添加第二测试程序集命名及第二测试类、在第二测试程序集中添加引用、添加持久化类、添加第三测试程序集命名及映射文件、在配置文件中加入测试配置信息、添加引用并将数据库驱动程序加入第二测试程序集和第一测试程序集中、产生测试用例、在第二测试程序集中添加测试用例所对应的类代码、编译测试项目方案并运行得到测试结果。采用该种自动化单元测试的方法,使得功能更完善、保证代码质量、可维护性和可扩展性,操作过程快捷方便,性能稳定可靠,适用范围较为广泛。
文档编号G06F11/36GK103106137SQ20111036213
公开日2013年5月15日 申请日期2011年11月15日 优先权日2011年11月15日
发明者党海生, 余永桂, 赵昕 申请人:上海宝康电子控制工程有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1