我现在正在我的第二个Force.com版本中工作,因此在平台上发布产品方面有相当多的经验(已经看到了4个不同的产品版本,其中包括3个版本版本和1个包含另一个版本更新)。
如果可能的话,
- 应该尝试删除用户需要执行的任何安装前/安装后步骤。这听起来很难,而且确实如此,但这是人们不采用某一产品的最大原因。它的想法是,它是快速和容易安装,一次点击,和任何额外的努力,减少用户的体验。确保您的系统是独立于数据的,这是解决您所提到的数据安全问题的一个很好的方法,显然您可以提供一个顾问来完成升级工作。一个明智的想法可能是列出所有受产品安装影响的对象和字段,然后在安装之前检查customer。我还想说,在沙箱中安装并进行几周的用户测试可以突出您将来可能遇到的任何问题,非常effectively.
- It并不是真的,不能实现单元测试之外的完全测试自动化,而且实际上非常简单。关键是拥有必要的框架设置。因此,您将有一个存储代码的中央版本控制系统(关键的敏捷部分)。然后创建一个脚本,以便在提交代码时,它在SFDC上运行一个安装,运行所有测试并返回报告。然后,您可以获得这个脚本来运行一组顶级类,或者上传一组CSV文件,以便将数据与运行功能的更完整的顶点测试一起放入,或者使用selenium运行来执行一组测试。然后,您也可以使用这个测试数据和脚本来为销售人员创建演示环境。
- --调控器和后台处理限制--有点紧,但它们一直在增加。也许您应该与Heroku集成或类似地进行一些更大的外部处理?我要说的是,我认为它总体上提高了编程能力,让你思考自己在做什么,以及做这件事的最佳方式。这将带来更愉快的最终用户体验。批处理顶级作业区域是完成此处理的好方法,您可以使用异步作业对象报告向用户运行的状态。
希望这对你有帮助,给你一个不同的视角!
保罗