软件兼容性测试
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
软件兼容性测试
1软件兼容性与软件兼容性测试
兼容性问题,即应用程序在不同的环境中,是否会因接口、函数的不同而发生错误的问题。
1.1软件兼容性
软件兼容性是指某个软件能稳定地工作在某操作系统/平台之中,就说这个软件对这个操作系统/平台是兼容的,再就是在多任务操作系统中,几个同时运行的软件之间如果能稳定地工作,就说这几个软件之间的兼容性好,否则就是兼容性不好。
另一种情况是软件共享的数据,几个软件之间无需复杂的转换,即能方便地共享相互间的数据,也称为兼容。因此,软件兼容性是衡量软件好坏的一个重要指标。从这个意义上看,软件兼容性不良就是软件推广的最大阻碍,例如在微软历史上花费人力财力最多的Vista系统,发布了半年之久依然是叫好不叫座,据说原因之一是软件兼容性最为用户所诟病。
1.2软件兼容性测试
软件兼容性测试是指测试软件在特定的硬件产台上、不同的应用软件之间、不同的操作系统平台上、不同的网络等环境中是否能很好地运行的测试。简单的说,兼容性测试是指测试某新开发的软件在某一特定环境下与各种软件的协调性,软件之间能否很好的运作。例如,会不会有相互不良的影响,还有软件和硬件之间能否发挥很好的效率工作,会不会影响或导致系统的崩溃等。
1.3配置测试与软件兼容性测试
配置测试是指验证在不同的硬件配置和软件配置下,应用程序能否正常工作。配置测试的目的是保证软件在其相关的硬件上能够正常运行,而兼容性测试主要
是测试软件能否与不同的软件正确协作。
软件兼容性测试(Software Compatibility Testing)是指检查软件之间是否能够正确地进行交互和共享信息。其工作的目标是保证软件按照用户期望的方式进行交互。
2软件兼容性测试的内容
软件兼容性测试的主要内容:
1.操作系统/平台的兼容性
2.应用软件的兼容性,例如framework、flash等
3.浏览器之前的兼容性
4.数据库之间的兼容性
5.其他方面,例如操作系统语言、传输协议、代理服务器、防火墙、自身
产品集成
2.1操作系统/平台的兼容性
市场上有很多不同的操作系统类型,最常见的有Windows、Unix、Macintosh、Linux等。应用软件的最终用户究竟使用哪一种操作系统,取决于用户系统的配置。这样,就可能会发生兼容性问题,同一个软件可能在某些操作系统下能正常运行,但在另外的操作系统下可能会运行失败。因此,理想的软件应该具有平台无关性。
当然,有些软件只是针对某一系列的操作系统平台来开发的,不存在跨平台的需求。但同一操作系统也有多个版本,例如Windows系统也有不同的系列版本号,如Windows 2000 /XP/Vista等,他们之间可能也有许多不同的组件属性。因此,有些软件可能需要在不同操作系统平台上重新编译才可运行,有些软件需要重新开发或改动较大才能在不同平台运行。因此,在软件发布之前,需要在各种操作系统下对应用软件进行兼容性测试。
自行安装多种平台和模拟应用环境进行测试,但缺点是难以覆盖所有平台。一个软件产品的开发成功,不仅仅是编写完为使用者提供服务功能的程序而已,
更重要的是能在用户环境中可靠的运行。因此,软件程序编写工作的完成,其实只是完成了开发任务中的一半,对软件进行模拟用户环境进行兼容性测试其重要性不亚于对程序本身的开发。
2.2应用软件的兼容性
主要考察两项内容:一是软件运行需要哪些应用软件支持。二是判断与其他常用软件一起使用,是否会造成其他软件运行错误或本身不能正确实现其功能。
2.3浏览器之间的兼容性
现在好多应用软件都应用B/S结构,它们的客户端都使用浏览器。因此,浏览器是Web客户端最核心的构件,但来自不同厂商的浏览器对Java、JavaScript、ActiveX、plug-ins或HTML规格都有不同的支持。例如,ActiveX是Microsoft的产品,是为Internet Explorer而设计的,JavaScript是Netscape的产品,Java是Sun 的产品等。另外,框架和层次结构风格在不同的浏览器中也有不同的显示,甚至根本不显示。不同的浏览器对安全性和Java的设置也不一样。所以,测试不同厂商、不同版本的浏览器对某些构件和设置的适应性,也是软件兼容性测试的重点之一。
2.4数据库之间的兼容性
现在很多软件尤其是ERP、CRM等软件都需要数据库系统的支持,对此类软件应考虑对不同数据库平台的支持能力,如从BD2平台替换到MSSQL平台时,软件是否可直接挂接,或者提供相关的转换工具。还有新旧数据转换的是否存在问题,软件是否提供新旧数据转换的功能。例如,当软件升级后可能会定义新的数据格式或文件格式,这就涉及到对原有格式的支持及更新,原有用户记录在新格式下是否依然可用等。另外,还需要测试转换过程中数据的完整性与正确性。
2.5其他
例如操作系统语言、传输协议、代理服务器、防火墙、自身产品集成
3Web兼容性测试
Web兼容性测试主要是针对不同的操作系统平台,浏览器,以及分辨率进行的测试。
3.1操作系统兼容性测试
常见的操作系统有windows,Unix,Linux等,对于普通用户来讲,最常用的是windows操作系统。windows操作系统宝航windows XP,windows 2003,vista,win2000/NT,windows9x等等。用户使用操作系统的类型,直接决定了我们操作系统平台兼容性的操作系统平台数量,进行操作系统平台的兼容性测试的主要目的就是保证我们的待测试项目在该操作系统平台下能正常运行。
对于一些特殊项目(比如定制项目),可以指定某一类型的操作系统版本,这些都应该在需求规格说明书中指明,针对这些指明的操作系统版本必须进行兼容性测试。
大部分的其他项目,是不指定操作系统版本的,针对这样的项目,我们应当针对当前的主流操作系统版本进行兼容性测试,在确保主流操作系统版本兼容性测试的前提下在对非主流操作系统版本进行测试,尽量保证项目的操作系统版本的兼容性测试的完整。
3.2浏览器兼容性测试
浏览器是web系统中对核心的组成构件,来自不同厂家的浏览器对javascript、ActiveX或不同的HTML规格有不同的支持。即使是同一厂家的浏览器也存在不同的版本的问题。不同浏览器对安全性和java的设置也不一样。
目前最为常用的浏览器为ie6 ie7 但由于操作习惯的问题,还有相当一部分用户喜欢使用腾讯的TT,以及firefox浏览器,这些浏览器同样也存在各个版本的问题。这个对于web系统来讲是一个相当大的挑战。
对于一些特殊项目(比如定制项目),可以指定某一类型的浏览器(包括版本),这些都必须在需求规格说明书中指明。针对这些指明的浏览器必须进行兼容性测试。但大部分的项目,是不能指定浏览器的,针对这样的项目,那么我们