实施的测试
对于任何企业CRM应用程序,测试在初执行项目和整个的未来开发项目中都是很重要的环节在像CRM这样的企业应用程序中,重大的CRM应用程序bug或停工期会拖累企业的运营并产生巨大的负面影响;较小的CRM应用程序bug则不断地为用户带来沮丧、摩擦和对工作的不满。遭到重大bug破坏的新应用程序启动会给CRM应用程序带来污点,并会阻碍它的采用降低你所期望获得的价值,而且这种不好的影响将持续至问题解决后的数周之中。
你可能在咨询合作伙伴的协助下一起进行CRM应用程序的初始实施和后续的增强项目,但是,测试是一项不可以完全外包的工作。你的顾问团队可以有效地执行单元测试、系统测试、集成测试和性能测试,但是,他们无法率领团队进行用户验收测试。在这项测试中,你的团队对于业务、数据和流程的知识是至关重要的。健全的验收测试需要每个CRM涉众团队的代表参加,这是CRM项目成功的关键要素。
CRM应用程序测试的类型
我们将重点介绍可能成为CRM项目一部分的各种类型的测试、它们的目的,以及如何将它们集成到你的项目中。
1、单元测试
这是由开发人员执行的针对新开发或增强的应用程序功能的一种初始测试。它是开发过程的一部分,并要在功能完善前完成。它是应用程序开发人员的一项核心职责,并且应该作为开发过程的自然组成部分包含在所有的CRM开发中。这项测试应该探索功能所有可能的逻辑分支,以确保其按照指定的设计方案中指定的那样工作。单元测试是一项孤立的测试,它不需要对不同功能之间的相互影响进行测试。
2、系统测试
一旦CRM应用程序的所有功能都开发完成,它们就会被部署到一个测试环境中,系统测试可以确保它们能够彼此协调,并在整个功能集中正常运行。单个的功能通常会彼此影响,各个功能的开发人员无法预见其影响方式,因此,测试完整的功能集是至关重要的。系统测试通常在CRM项目生命周期的构建阶段结束时进行,此时已完成了所有的功能开发和单元测试。
3、集成测试
在许多企业中,CRM应用程序都被集成到其他的业务应用程序中。集成测试时为了验证应用程序的链接运行正常,且数据从一个应用程序流向另一个应用程序,并按照需要进行正确的转换。
4、性能测试
性能测试对于那些自定义开发较少的CRM应用程序部署不太重要,但是,如果进行了大量自定义开发,性能测试则是至关重要的。大型的数据集和大量用户会对CRM应用程序性能产生意想不到的有害影响,导致响应延时和超时错误,令用户感到不满。地理上分散式的用户社区也会引发CRM应用程序的性能问题,因为国家之间的网络连接效果可能会很差,这会影响CRM客户端和服务器之间的连接。如果你的项目包含大量的自定义开发和一些数据量的不利因素,或是用户数量巨大或分布在不同地理 区域,你应该确保项目团队的项目计划中包含性能测试。
强调对自定义开发进行性能测试的主要原因在于,主流CRM应用程序供应商使用的测试用例可能包含大量的数据集或大量同步用户。在适当的硬件运行的标准应用程序可能已经经过测试,并通过了比你自己的更为严格的测试方案。相反,自定义开发则从未经过测试,有很多原因可能导致开发人员编写的代码在高负荷的情况下运行失败。
5、用户验收测试
用户验收测试(UAT)是CRM项目生命周期中一项至关重要的验证。在用户验收测试之前,所有的CRM组件都已通过单元测试和系统测试,且所有的数据都已经完成迁移。此时的测试环境与启动完成后的生产环境基本相同。用户验收测试就是演练CRM应用程序所支持的关键业务场景,以验证以下内容:
已批准的应用程序设计文档中所描述的所有功能都按照设计团队的意图运行;
应用程序按照设计和开发的那样符合项目标并已做好启用准备。
用户验收测试的一个独道之处是它由一组应用程序用户亲自执行。在此之前的所有测试都已经由技术团队完成。用户测试还有一个独特之处,那就是它无所不包的特性;应用程序功能、迁移的数据、集成和其他的应用程序领域属于用户测试的部分。