Triggers Salesforce:CallReport触发器未触发-测试失败

Triggers Salesforce:CallReport触发器未触发-测试失败,triggers,salesforce,apex-code,Triggers,Salesforce,Apex Code,我试图对触发器部署一个小的更改,但我收到了关于另一个触发器的单元测试覆盖率不足(0%)的警告(setTitle如下所示) 对此有一个测试(请参见下文),但由于某些原因,没有考虑到这一点。此测试的定义与其他成功运行的测试类似,但在这种情况下,触发器未被调用(导致覆盖率不足的警告) 有什么想法或建议,我可以看看,如果有任何方法可以通过测试 触发测试: Call_Report__c c = new Call_Report__c(name='test cr', opportunity__c=o.id);

我试图对触发器部署一个小的更改,但我收到了关于另一个触发器的单元测试覆盖率不足(0%)的警告(setTitle如下所示)

对此有一个测试(请参见下文),但由于某些原因,没有考虑到这一点。此测试的定义与其他成功运行的测试类似,但在这种情况下,触发器未被调用(导致覆盖率不足的警告)

有什么想法或建议,我可以看看,如果有任何方法可以通过测试

触发测试:

Call_Report__c c = new Call_Report__c(name='test cr', opportunity__c=o.id);
insert c;
触发器声明:

trigger setTitle on Call_Report__c (before insert)

谢谢大家!

我认为最好的方法是尝试在目标组织中手动运行单元测试,并检查调试日志。还可以从UI手动检查功能是否仍按预期运行

一些提示:

  • (仅在部署到沙盒时适用)听起来很愚蠢你确定触发器处于活动状态吗?当您从UI或随附的元数据xml中的状态字段编辑它们时,会有一个复选框
  • 类似复选框-触发器是否有效?如果它是从同时被修改的类中调用方法,那么您将遇到问题
  • 您是否在
    Call\u Report\u c
    或测试中使用的任何先决条件(如Opportunity)上有任何最近引入的验证:
    • 字段定义中按要求标记的字段
    • 缩短了文本字段大小,但传递的字符串太长
    • 验证规则(不是在
      Call\u Report\u c
      because上),而是在Opportunity等上
  • 您能否向测试中添加一些
    system.debug()
    ,以确保您正在使用的Opportunity被创建为ok。此外-有时开发人员过于以VF为中心,不会抛出异常,而是将它们吞并并并放入VF错误消息,所以也要检查
    ApexPages.hasMessages()
  • (在那一点上越来越愚蠢的东西);)类和函数是否标记为isTest/testmethod?这是物体上唯一的触发器吗?如果在插入之前有更多的
    -您不能保证订单,可能那边有故障

  • 你好!谢谢你的详细回复,你在这里有一些很棒的想法,我会仔细看看这些想法是否有助于解决问题。感谢您的评论!