基础改造——软件升级测试:软件升级测试是保证支持应用运行的软件都被正确地安装或迁移。
  客户数据不能丢——数据库迁移测试:目的在于保证旧的数据库数据结构,数据库中加密的及没有加密的客户数据都被正确地迁移过来。内容:数据库数据结构和数据的迁移。
  功能点不能少——应用程序迁移测试:验证应用程序迁移流程和结果的正确性。内容:确保应用的配置信息被正确地迁移,确保新版本应用的功能模块被自动地加载到迁移之后的应用系统中,确保应用服务器旧版本的配置信息被正确迁移到新的应用系统中,确保Web服务器旧版本的配置信息被正确迁移到新的应用系统中。
  子系统迁移测试:验证这些子模块的迁移步骤和迁移程序的正确性。
  集成系统迁移测试:验证应用软件本身和其他应用作为一个集成系统在完成迁移后,能正常工作。
  客户定制化迁移测试:测试客户在旧版本环境上根据自身业务要求的需要进行定制的程序,是否被正确地迁移到新系统的版本。
  功能测试:验证迁移之后的应用系统功能的完整性和正确性。一种是贯穿整个迁移过程的管道数据功能测试,另一种是在完成了迁移的应用系统上的功能回归测试。
  性能测试:比较迁移之后的应用系统的性能测试结果和旧版本的性能测试结果,期望结果是没有性能的下降,性能指标对于客户而言是可以接受的。
  迁移扩展性测试:针对大数据量和大型应用的测试,保证应用和数据迁移能够在可以接受的时间内正确完成。
  水平迁移测试与垂直迁移测试的区别
  垂直迁移测试和水平迁移测试不是相互独立的,水平迁移测试主要运用于垂直迁移框架中的数据库迁移测试和应用迁移测试。水平迁移测试与垂直迁移测试的主要区别在于前者需要涉及多个应用系统环境的比较。水平迁移测试是垂直迁移测试的必要补充,垂直迁移测试主要对整个应用的一个从底向上的完备的考量,而水平迁移测试主要是考虑数据库和应用程序迁移前后的比较。
  水平迁移测试
  新版本数据结构验证:验证数据结构首先需要将数据结构按照类型以一定的格式倒入一个文件中以进行比较验证,如XML文件。
  商业数据验证:包括所有商业事务处理相关的数据。
  应用配置信息验证:保证迁移后应用配置文件的正确性和一致性。
  水平迁移测试的各个部分相对独立,对于数据库和应用可以分开进行验证,但它们又都是垂直迁移测试流程中不可或缺的一环。
  垂直迁移测试与水平迁移测试的比较
  垂直迁移测试是水平迁移测试的基础,只有完成了垂直迁移测试中的数据库迁移或应用程序迁移才能进行水平迁移测试。
  水平迁移测试能在早期发现问题,无须等待整个迁移流程结束后再开始。
  水平迁移测试更多地关注数据的准确性,垂直迁移测试更多地关注系统的整体功能、性能等的迁移是否成功。
  水平迁移测试相对复杂,需要比较不同版本数据库之间数据、配置文件等内容。垂直迁移测试只需要一套迁移环境。
  其他迁移测试内容
  兼容测试:目的在于确保以前的地版本上部署的经客户定制过的应用所依赖的一些因素能够正常地提供服务,而使客户的定制应用不受影响,从而客户无须重新构建或部署他们的应用。影响兼容性因素主要有:开发框架升级,API的不兼容性,行为的变化。
  迁移文档测试:目的在于保证迁移文档的质量,确保客户能够遵循正确的迁移文档完成客户应用系统的迁移工作。
  真实客户环境测试:迁移测试重要的验证方式,对于保证迁移测试的正确性,特别是对于性能方面的验证是非常必要的。
  迁移安全性测试:在迁移环境上进行文件权限验证及敏感数据检查。
  选择迁移测试平台
  确定迁移路径和平台支持矩阵表,合并罗列所有测试配置组合,识别优先级进行筛选。
  选择测试用例组
  基本测试用例组包括迁移测试的主要流程的测试用例:软件升级测试、数据库迁移测试、应用程序迁移测试、子系统迁移测试、客户定制化迁移测试、功能验证测试。
  扩展测试用例组:集成系统测试
  高级测试用例组:迁移扩展测试、真实客户数据应用测试、迁移环境上的功能回归测试和性能回归测试。
  基本测试用例组的测试在所有的配置组合上都得测试,但在每个测试阶段,可以涵盖不同的测试用例。
  扩展测试用例组主要涵盖和应用相关的集成软件的迁移,根据实际需求选择测试或者不测。
  高级测试用例组测试也是根据具体的测试要求单独计划,只需要选择部分平台组合进行测试。
  总结
  迁移是从旧版本的系统环境到新版本的系统迁移,迁移场景如下:
  在测试环境上进行迁移和迁移测试:
  · 完成服务器升级测试
  · 安装新版本的应用系统并部署一个测试用的应用环境:一方面通过启用测试应用系统,验证应用的一些简单功能和业务流程来保证新版本的应用没有问题,另一方面,测试应用系统创建的数据库和应用可以作为水平迁移测试的比较对象,是水平迁移测试验证的基准。
  · 迁移数据库并完成数据库迁移测试
  · 迁移应用并完成应用迁移测试
  在开发环境上进行迁移和迁移测试:
  · 客户定制化迁移测试
  · 将开发环境上迁移之后的客户定制化程序部署到完成了迁移的测试环境上
  · 在迁移之后测试环境上进行功能测试和性能测试
  · 在确保上一步功能测试和性能测试都正确的前提下,开始进行生产环境的迁移测试
  为了将客户应用宕机的影响降到低,生产环境的迁移分为以下几步:
  · 在保持旧版本生产环境运行的情况下,根据客户的资源状况选择软件升级方案
  · 安装新版本的应用产品
  · 迁移应用
  · 将完成迁移的客户定制化程序部署到新的生产环境中
  · 停止旧版本的应用系统的对外服务,完成生产环境数据库的迁移
  · 启用新版本的应用
  · 在迁移之后的应用系统上进行功能测试和性能测试