Salesforce将强大的内置功能与创建您自己的低代码功能的灵活性相结合。 但正如任何经验丰富的开发人员都会告诉你的那样,构建应用程序是很容易的部分。真正的挑战是确保它们不会随着时间的推移而崩溃,并拥有强大的保护措施,让您能够继续构建和试验,而不必担心失败。
这就是为什么测试,尤其是自动化测试如此重要。测试是实现数字化转型的一个关键方面。无论公司规模如何,如果团队不强调测试,他们将无法实现所需更改的速度和可靠性。
有兴趣了解更多关于团队如何管理测试流程的信息,Copado 调查了超过 275 名 Salesforce 专业人士,他们分享了他们团队在测试方面的优势和劣势的详细信息。以下是一些重要的收获:
41% 的团队没有时间在每次发布之前测试每个更改。
92% 的人因测试不足而遇到生产问题。
84% 仍然至少部分依赖手动测试。
51% 的组织拥有 25 多个全职 QA 资源(20% 拥有 100 多个资源)。
与商业测试自动化相比,95% 的手动测试的总拥有成本更高。
常见的测试挑战
测试需要在多个级别进行,从单元测试到跨系统 UI 测试。Salesforce 单元测试很有帮助,但 Salesforce开发人员的单元测试文化远比其他语言(如 Ruby)弱。
Salesforce 要求将 75% 的单元测试代码覆盖率部署到生产环境,但由于直到最近持续集成在 Salesforce 上并不常见,大多数 Salesforce 开发人员并没有完全意识到这些测试的重要性。因此,通常会看到满足 75% 阈值但提供很少或根本没有实际保护的草率测试。
UI 测试在 Salesforce 上也很棘手,尤其是在他们的新 UI Lightning 上。出于安全和性能目的,Lightning 使用影子 DOM(文档对象模型),但这使得 Selenium 等依赖 DOM 的工具变得困难。
底层 DOM 也可能会在没有警告的情况下更改,即使实际系统正常工作,也可能导致测试失败。这意味着 Salesforce 的 UI 测试工具需要内置重要的智能。
Salesforce 还经常与ServiceNow、SAP和Oracle Financials等其他系统集成。这意味着测试工具需要能够测试所有连接的系统,以确保端到端的功能。
作为一个低代码平台,Salesforce 开发可以非常迅速地进行。底层 Salesforce 平台也每年更新 3 次。这些更快的软件周期意味着更多的更改和更新,如果您没有进行良好的测试,那么这些更改和更新会在未来造成不受欢迎的意外。
系统行为还可能取决于系统中的基础数据。因此,测试数据管理很重要,尤其是在使用 Salesforce CPQ、Veeva 和 nCino 等基于 Salesforce 构建的复杂应用程序时。
最后,Salesforce 旨在为低编码人员提供动力。这意味着理想情况下,测试工具也应该易于非编码人员使用。
Salesforce 测试的一些趋势
随着 Salesforce 在范围和复杂性方面的成熟,组织需要为高质量的跨云定制做好准备,并验证跨其他技术和平台的第三方集成。
我们调查中的团队 (41%) 表示他们没有足够的时间在发布前充分测试所有更改。我们的分析表明,由于项目时间紧迫,团队在交付功能方面感到压力,而且开发时间比预期的要长。
结果,测试最终被搁置了。团队经常未能给予测试应有的尊重,并将其降级到 sprint 的末尾,而不是遵循测试驱动的开发或其他转移质量的方法。
早期的低代码测试
随着每家企业将其基础设施迁移到云端,像 Salesforce 这样的低代码平台将继续主导数字领域。在这些平台上构建的速度和易用性是无与伦比的,但它们需要强大的测试以确保更改不会破坏现有系统。
低代码平台仍处于测试的早期阶段。根据 Salesforce 对其专业人员的研究,大多数团队仍然主要依靠人工。但是DevOps的兴起和变革的加速意味着自动化测试是当今数字业务的下一个前沿。
标签:
版权声明:本文由用户上传,如有侵权请联系删除!