Testar ações agendadas do processo e eventos de retomada de fluxo com Apex

Para ajudá-lo a fornecer mais cobertura de teste para automações nos bastidores, o método do Apex stopTest executa ações agendadas pendentes dos processos e retoma os fluxos que estão aguardando um evento de retomada com base em tempo. Anteriormente, testes do Apex podiam iniciar processos e fluxos de iniciados automaticamente, mas não podiam validar ações agendadas nem se um fluxo era retomado.

Onde: Essa alteração se aplica ao Lightning Experience e ao Salesforce Classic nas edições Enterprise, Performance, Unlimited e Developer.

Como: O método stopTest marca o ponto de término do teste no código de teste. Quando stopTest é executado, todos os processos assíncronos são executados de maneira síncrona.

Para testes do Apex que acionam processos de mudança de registro (Criador de processos integrado), o método stopTest executa ações programadas para qualquer data, mesmo que o grupo de critérios inclua várias agendas. Para testes do Apex que acionam processos de eventos (Criador de processos integrado), publique o evento e use o método Test.getEventBus().deliver() para iniciar o processo. Use o método stopTest para executar ações programadas associadas.

Para testes do Apex que acionam fluxos inicializados automaticamente com elementos de pausa, o método stopTest retoma o fluxo e executa os elementos restantes. Para cada elemento de Pausa que está aguardando em um evento de retomada baseado em tempo, o fluxo retoma e executa todos os elementos ao longo do caminho.

Atualizações relacionadas para desenvolvedores

Apex
Método alterado em System.Test: stopTest()