CN102043709A - 软件测试系统 - Google Patents

软件测试系统 Download PDF

Info

Publication number
CN102043709A
CN102043709A CN2009101975506A CN200910197550A CN102043709A CN 102043709 A CN102043709 A CN 102043709A CN 2009101975506 A CN2009101975506 A CN 2009101975506A CN 200910197550 A CN200910197550 A CN 200910197550A CN 102043709 A CN102043709 A CN 102043709A
Authority
CN
China
Prior art keywords
software
module
test
testing
testing module
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN2009101975506A
Other languages
English (en)
Inventor
张春艳
马海霞
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sanda University
Original Assignee
Sanda University
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Sanda University filed Critical Sanda University
Priority to CN2009101975506A priority Critical patent/CN102043709A/zh
Publication of CN102043709A publication Critical patent/CN102043709A/zh
Pending legal-status Critical Current

Links

Images

Landscapes

  • Debugging And Monitoring (AREA)

Abstract

本发明揭示了一种软件测试系统,用于测试一软件,该测试系统包括单元测试模块、集成测试模块、整体测试模块和兼容测试模块。单元测试模块分别测试软件中的每一个功能模块;集成测试模块对于通过单元测试模块的测试的功能模块进行组装形成模块组,集成测试模块对模块组进行测试,集成测试单元测试软件的功能模块的接口;整体测试模块对于通过集成测试模块的测试的模块组进行组装形成完整的软件,整体测试模块对软件整体进行测试,整体测试模块调用一组测试用例对软件进行测试;兼容测试模块测试软件与其他应用程序的兼容性。采用本发明的技术方案,提出了一种能全面执行软件测试的测试系统,能有效地对软件进行测试。

Description

软件测试系统
技术领域
本发明涉及计算机技术,尤其涉及软件测试技术。
背景技术
如今,信息技术的飞速发展,软件在社会生活的方方面面发挥着日益重要的作用。软件测试是伴随着软件的产生而产生的。其发展史大致可分为四个阶段:
第一阶段:随着计算机的诞生——在软件行业发展初期就已经开始实施软件测试,但这一阶段还没有系统意义上的软件测试,更多的是一种类似调试的测试。测试是没有计划和方法的,测试用例的设计和选取也都是根据测试人员的经验随机进行的,大多数测试的目的是为了证明系统可以正常运行。
第二阶段:20世纪50年代后期到20世纪60年代,各种高级语言相继诞生,测试的重点也逐步转入到使用高级语言编写的软件系统中来,但程序的复杂性远远超过了以前。尽管如此,由于受到硬件的制约,在计算机系统中,软件仍然处于次要位置。软件正确性的把握仍然主要依赖于编程人员的技术水平。因此,这一阶段软件测试的理论和方法发展比较缓慢。
第三阶段:20世纪70年代以后,随着计算机处理速度的提高,存储器容量的快速增加,软件在整个计算机系统中的地位变得越来越重要。随着软件开发技术的成熟和完善,软件的规模也越来越大,复杂度也大大增加。因此,软件的可靠性面临着前所未有的危机,给软件测试工作带来了更大的挑战,很多测试理论和测试方法应运而生,逐渐形成了一套完整的体系,培养和造就了一批批出色的测试人才。
第四阶段:如今在软件和IT行业产业化发展的大趋势下,人们对软件质量,成本和进度的要求也越来越高,质量的控制已经不仅仅是传统意义上的软件测试。传统软件的测试大多是基于代码运行的,并且常常是软件开发的后期才开始进行,但大量研究表明,设计活动引入的错误占软件开发过程中出现的所有错误数量的50%~65%。因此,越来越多的声音呼吁,要求有一个规范的软件开发过程。而在整个软件开发过程中,测试已经不再只是基于程序代码进行的活动,而是一个基于整个软件生命周期的质量控制活动,贯穿于软件开发的各个阶段。
对于软件测试来说,基于不同的立场,存在着两种完全不同的测试目的。从用户的角度出发,普遍希望通过软件测试暴露软件中隐藏的错误和缺陷,以考虑是否可以接受该产品。从软件开发者的角度出发,则希望成为表明软件产品中不存在错误的过程,验证该软件已正确地实现了用户的要求,确立人们对软件质量的信心。于是,软件测试的目的包括以下三点:
(1)测试是程序的执行过程,目的在于发现错误,不能证明程序的正确性,仅限于处理有限种的情况。
(2)检查系统是否满足需求,这也是测试的期望目标。
(3)一个好的测试用例在于发现还未曾发现的错误;成功的测试是发现了错误的测试。
从不同的角度,可以把软件测试技术分成不同种类。
(1)从是否需要执行被测软件的角度分类:从是否需要执行被测软件的角度,可分为静态测试(Static Testing)和动态测试(Dynamic Testing)。顾名思义,静态测试就是通过对被测程序的静态审查,发现代码中潜在的错误。它一般用人工方式脱机完成,故亦称人工测试或代码评审(Code Review);也可借助于静态分析器在机器上以自动方式进行检查,但不要求程序本身在机器上运行。按照评审的不同组织形式,代码评审又可分为代码会审,走查以及办公桌检查,同行评分4种。对某个具体的程序,通常只使用一种评审方式。
动态测试的对象必须是能够由计算机真正运行的被测试的程序。它分为黑盒测试和白盒测试。
(2)从软件测试用例设计方法的角度分类:从软件测试用例设计方法的角度,可分为黑盒测试(Black-Box Testing)和白盒测试(White-Box Testing)。
黑盒测试是一种从用户观点出发的测试,又称为功能测试,数据驱动测试和基于规格说明的测试。若测试用例的设计是基于产品的功能,目的是检查程序各个功能是否实现,并检查其中的功能错误,则这种测试方法称为黑盒。黑盒测试方法主要有等价类划分、边值分析、因-果图、错误推测等,主要用于软件确认测试。“黑盒”法着眼于程序外部结构、不考虑内部逻辑结构、针对软件界面和软件功能进行测试。“黑盒”法是穷举输入测试,只有把所有可能的输入都作为测试情况使用,才能以这种方法查出程序中所有的错误。实际上测试情况有无穷多个,人们不仅要测试所有合法的输入,而且还要对那些不合法但是可能的输入进行测试。
白盒测试基于产品的内部结构来进行测试,检查内部操作是否按规定执行,软件各个部分功能是否得到充分利用。白盒测试又称为结构测试,逻辑驱动测试或基于程序的测试。即根据被测程序的内部结构设计测试用例,测试者需事先了解被测试程序的结构。
发明内容
本发明提出一种软件测试系统,用于测试一软件。
根据本发明,该软件测试系统包括单元测试模块、集成测试模块、整体测试模块和兼容测试模块。
单元测试模块分别测试软件中的每一个功能模块;集成测试模块对于通过所述单元测试模块的测试的功能模块进行组装形成模块组,集成测试模块对模块组进行测试,集成测试单元测试所述软件的功能模块的接口;整体测试模块对于通过集成测试模块的测试的模块组进行组装形成完整的软件,整体测试模块对软件整体进行测试,整体测试模块调用一组测试用例对所述软件进行测试;兼容测试模块测试软件与其他应用程序的兼容性。
该软件测试系统还包括用例数据库,保存对软件进行整体测试时使用的测试用例。
其中的兼容测试模块测试软件与操作系统的兼容性。
采用本发明的技术方案,提出了一种能全面执行软件测试的测试系统,能有效地对软件进行测试。
附图说明
图1揭示了根据本发明的一种软件测试系统的结构图。
具体实施方式
参考图1所示,本发明提出了一种软件测试系统,用于测试一软件,该软件测试系统包括:单元测试模块10、集成测试模块11、整体测试模块12、兼容测试模块13、用例数据库14。
单元测试模块10分别测试软件中的每一个功能模块。单元测试模块10负责测试执行的开始阶段。单元测试模块10的测试对象是每个单元。测试目的是保证每个模块或组件能正常工作。单元测试模块10主要采用白盒测试方法,检测程序的内部结构。
集成测试模块11,耦合到单元测试模块10,集成测试模块11对于通过单元测试模块10的测试的功能模块进行组装形成模块组,集成测试模块11对模块组进行测试,集成测试单元11测试软件的功能模块的接口。集成测试模块11进行的测试也称组装测试。在单元测试模块10的测试的基础上,对已测试过的模块进行组装,进行集成测试。测试目的是检验与接口有关的模块之间的问题。集成测试模块11主要采用黑盒测试方法。
整体测试模块12,耦合到集成测试模块11,整体测试模块12对于通过集成测试模块的测试的模块组进行组装形成完整的软件,整体测试模块12对软件整体进行测试,整体测试模块调用一组测试用例对所述软件进行测试。在一个实施例中,整体测试模块12从用例数据库14中调取所需要使用的测试用例。用例数据库14耦合到整体测试模块12,保存对软件进行整体测试时使用的测试用例。
兼容测试模块13,测试软件与其他应用程序的兼容性。在一个实施例中,兼容测试模块13主要是测试软件与各种主流的操作系统之间的兼容性。
采用本发明的技术方案,提出了一种能全面执行软件测试的测试系统,能有效地对软件进行测试。

Claims (3)

1.一种软件测试系统,用于测试一软件,其特征在于,包括:
单元测试模块,单元测试模块分别测试所述软件中的每一个功能模块;
集成测试模块,对于通过所述单元测试模块的测试的功能模块进行组装形成模块组,所述集成测试模块对模块组进行测试,所述集成测试单元测试所述软件的功能模块的接口;
整体测试模块,对于通过集成测试模块的测试的模块组进行组装形成完整的软件,所述整体测试模块对软件整体进行测试,所述整体测试模块调用一组测试用例对所述软件进行测试;
兼容测试模块,测试所述软件与其他应用程序的兼容性。
2.如权利要求1所述的软件测试系统,其特征在于,还包括:
用例数据库,保存对软件进行整体测试时使用的测试用例。
3.如权利要求1所述的软件测试系统,其特征在于,所述兼容测试模块测试所述软件与操作系统的兼容性。
CN2009101975506A 2009-10-22 2009-10-22 软件测试系统 Pending CN102043709A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN2009101975506A CN102043709A (zh) 2009-10-22 2009-10-22 软件测试系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN2009101975506A CN102043709A (zh) 2009-10-22 2009-10-22 软件测试系统

Publications (1)

Publication Number Publication Date
CN102043709A true CN102043709A (zh) 2011-05-04

Family

ID=43909860

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2009101975506A Pending CN102043709A (zh) 2009-10-22 2009-10-22 软件测试系统

Country Status (1)

Country Link
CN (1) CN102043709A (zh)

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102279796A (zh) * 2011-08-25 2011-12-14 北京神州绿盟信息安全科技股份有限公司 一种软件兼容性测试的方法和设备
CN103593279A (zh) * 2012-08-13 2014-02-19 百度在线网络技术(北京)有限公司 一种系统测试的方法和装置
CN103853659A (zh) * 2012-12-06 2014-06-11 阿里巴巴集团控股有限公司 浏览器兼容性的检测方法及装置
CN103885873A (zh) * 2012-12-20 2014-06-25 上海明想电子科技有限公司 一种自动化集成测试的方法
CN104572440A (zh) * 2014-11-07 2015-04-29 深圳市腾讯计算机系统有限公司 一种测试软件兼容性的方法和装置
CN105912463A (zh) * 2016-05-20 2016-08-31 东信和平科技股份有限公司 基于mp300设备的智能卡协议自动测试系统和方法
CN107688533A (zh) * 2017-07-25 2018-02-13 上海壹账通金融科技有限公司 应用程序测试方法、装置、计算机设备和存储介质
CN108009079A (zh) * 2016-10-27 2018-05-08 株式会社理光 测试单元源代码和功能源代码的方法和装置
CN108334448A (zh) * 2018-01-22 2018-07-27 泰康保险集团股份有限公司 代码验证方法、装置及设备
CN113760771A (zh) * 2021-09-14 2021-12-07 中国农业银行股份有限公司 集成测试用例的执行方法及装置

Cited By (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102279796B (zh) * 2011-08-25 2014-04-16 北京神州绿盟信息安全科技股份有限公司 一种软件兼容性测试的方法和设备
CN102279796A (zh) * 2011-08-25 2011-12-14 北京神州绿盟信息安全科技股份有限公司 一种软件兼容性测试的方法和设备
CN103593279B (zh) * 2012-08-13 2018-02-02 百度在线网络技术(北京)有限公司 一种系统测试的方法和装置
CN103593279A (zh) * 2012-08-13 2014-02-19 百度在线网络技术(北京)有限公司 一种系统测试的方法和装置
CN103853659A (zh) * 2012-12-06 2014-06-11 阿里巴巴集团控股有限公司 浏览器兼容性的检测方法及装置
CN103853659B (zh) * 2012-12-06 2017-01-18 阿里巴巴集团控股有限公司 浏览器兼容性的检测方法及装置
CN103885873A (zh) * 2012-12-20 2014-06-25 上海明想电子科技有限公司 一种自动化集成测试的方法
CN104572440A (zh) * 2014-11-07 2015-04-29 深圳市腾讯计算机系统有限公司 一种测试软件兼容性的方法和装置
CN105912463A (zh) * 2016-05-20 2016-08-31 东信和平科技股份有限公司 基于mp300设备的智能卡协议自动测试系统和方法
CN105912463B (zh) * 2016-05-20 2019-03-26 东信和平科技股份有限公司 基于mp300设备的智能卡协议自动测试系统和方法
CN108009079A (zh) * 2016-10-27 2018-05-08 株式会社理光 测试单元源代码和功能源代码的方法和装置
CN107688533A (zh) * 2017-07-25 2018-02-13 上海壹账通金融科技有限公司 应用程序测试方法、装置、计算机设备和存储介质
CN108334448A (zh) * 2018-01-22 2018-07-27 泰康保险集团股份有限公司 代码验证方法、装置及设备
CN108334448B (zh) * 2018-01-22 2021-07-09 泰康保险集团股份有限公司 代码验证方法、装置及设备
CN113760771A (zh) * 2021-09-14 2021-12-07 中国农业银行股份有限公司 集成测试用例的执行方法及装置

Similar Documents

Publication Publication Date Title
CN102043709A (zh) 软件测试系统
Sullivan et al. Software assurance by bounded exhaustive testing
Ahamed Studying the feasibility and importance of software testing: An Analysis
Lachmann et al. Delta-oriented test case prioritization for integration testing of software product lines
Briand A critical analysis of empirical research in software testing
US6449750B1 (en) Design verification device, method and memory media for integrated circuits
Alenazi et al. SysML modeling mistakes and their impacts on requirements
Alferidah et al. Automated software testing tools
Oster Feature model-based software product line testing
US6691078B1 (en) Target design model behavior explorer
CN107622017A (zh) 一种通用自动化软件测试的解析方法
CN102043711A (zh) 软件系统辅助测试装置
Behnam et al. In-circuit mutation-based automatic correction of certain design errors using SAT mechanisms
Wiederseiner et al. An open-source tool for automated generation of black-box xunit test code and its industrial evaluation
Lawanna The theory of software testing
Braspenning et al. A model-based integration and testing method to reduce system development effort
EP3608786B1 (en) Systems and methods of requirements chaining and applications thereof
Valueian et al. Constructing automated test oracle for low observable software
Gupta et al. Test driven software development technique for software engineering
Rexhepi et al. Software testing techniques and principles
CN102023855A (zh) Erp软件测试用例产生系统
Kamsties et al. An empirical investigation of the defect detection capabilities of requirements specification languages
Singh et al. The review: Lifecycle of object-oriented software testing
Parnas The use of mathematics in software quality assurance
Bis et al. Verification of Functional Fault Models and the Use of Resource Efficient Verification Tools

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C02 Deemed withdrawal of patent application after publication (patent law 2001)
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20110504