salesforce - 部署 apex 类的测试问题,可能是错误的配置
问题描述
当我尝试从沙盒部署新的 apex 类时,我遇到了以下问题:
SFDCAccessControllerTest testAccessControl_runAs System.AssertException:断言失败:不应该成功,因为标准用户无法访问 Survey__c
堆栈跟踪:Class.SFDCAccessControllerTest.testAccessControl_runAs:第 58 行,第 1 列 Utilities_Test getInstance System.AssertException:断言失败:预期:,实际:xxxx。堆栈跟踪:Class.Utilities_Test.getInstance:第 18 行,第 1 列
我想这只是一个糟糕的配置,但我对 salesforce 比较陌生,不知道我可以在哪里禁用测试或更改 Survey__c 的权限,并解决实例名称的问题而不影响生产环境。
我找了类似的案例,找不到,请谁能指导我。
解决方案
没有测试的源代码很难说什么。他们是使用“标准用户”配置文件创建一个虚拟用户还是尝试查询现有用户?据我所知,您无法编辑标准配置文件,您必须克隆它们,所以我不知道您或同事将如何设法添加读取权限...但是请检查测试中提到的配置文件-> 对象权限->调查 -> 正确阅读。
也可以在不运行所有测试的情况下部署到生产环境。这有点棘手,您需要指定要运行的类,您可以跳过该单元测试。但是您选择的所有内容都需要通过规则(最低 75% 的覆盖率等)。如果您需要尽快部署到 prod,它可能会有所帮助,但您最终需要硬着头皮检查测试到底出了什么问题。
推荐阅读
- django - Django @method_decorator 从 Python 2 更改为 3?
- angular - 将现有的 ng-container 树适配为虚拟树
- c++ - ADL 和 typedef
- java - 是否可以在 List 中放置两种变量类型?
- mongodb - 查询 MongoDB 视图失败,原因是超出内存限制
- c# - 如何从 Azure API 管理中的请求正文获取原始日期时间值?
- ajax - 未使用 ajax 将参数传递给控制器
- ios - Xcode - 隐私 - 相机使用说明不会询问相机的权限
- android - 是否可以将 *.so 库用于扩展文件?
- reactjs - 使用空依赖项无法在 useEffect 中调用自定义反应钩子