Salesforce中的示例分析

今天就跟大家聊聊有关Salesforce中的示例分析,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。

专注于为中小企业提供做网站、网站制作服务,电脑端+手机端+微信端的三站合一,更高效的管理,为中小企业冷水滩免费做网站提供优质的服务。我们立足成都,凝聚了一批互联网行业人才,有力地推动了上千多家企业的稳健成长,帮助中小企业通过网站建设实现规模扩充和转变。

接触过Salesforce 工作的小伙伴们应该知道,Salesforce 虽然一直说提倡无代码开发,尽量使用标准功能来实现需求,但是有时我们仍然不可避免的的会要去写一些代码.

     使用标准功能的话,Salesforce会自己负责代码的质量;

     对于自定义的一些功能的话,Salesforce为了确保我们的代码不会在生产中的任何情况下中断,也制定了一套自己的衡量标准,比如:

     Salesforce的程序的代码覆盖率必须达到75%时,才可以进行部署

     一般的Apex Code,就像那些出现在Trigger里,出现在Controller里的代码,
    测试类都很好写,就按照
    1. 准备测试数据
    2. 执行业务逻辑(功能)
    3. 断言执行结果
    按套路打就行了。

   (温馨提示: 望小伙伴们每次写完程序,记得在测试类里面测试到位啊,有漏了的点的话,下次改完程序再测试的时候难度将会有所增加,所以为了方便他人,同时也为了自己的方便,因及时修改测试类)

  小喵记得有一次改测试类,结果发现测试类跟程序 之间差好几个版本,因此只能花时间慢慢一步步的测┭┮﹏┭┮

 所以为了方便,还是希望小伙伴们修改完程序,及时把测试类修改到最新版本.

除此之外,另一些apex code,需要特别的测法。 Salesforce作为CRM系统,无法避免的要与其他系统进行数据交互。 大部分情况,我们只需要把salesforce的标准集成文档和权限已经配置妥当的账号,提供给对方就好, 但是,当我们需要将业务封装起来的时候,就需要自己建WebService。

  下面小喵简答说一下编写测试类的一些要点 :

   1.必须以@isTest注解开始类,然后只有Salesforce会把这个类当作测试类。

   2.将测试类保持为私有的,最佳实践是将测试类命名为原始类或触发器名称+‘test’,例如 : 程序为 CampaignController ----> 测试类为 CampaignControllerTest

   3.测试类的方法必须是static、void,并且必须使用testMethod关键字。 例如 :

static testMethod void 方法名(){
   //方法体
}

   4.在实际测试运行之前,准备需要存在的测试数据。现在每天有多种创建测试数据的技术,例如,setup方法、静态资源等 . 

   5.使用 Test.startTest() 和 Test.stopTest()  以确保代码的实际测试使用一组新的调控器限制进行。这些方法帮助您在实际的测试代码执行之前重置调控器限制。

   6.一旦测试代码在 Test.startTest() 和 Test.stopTest() ,则必须使用assert语句来测试实际代码是否正确执行并按预期给出结果。举个例子,我们正在测试这本书的价格是否定在90美元。如果这个assert语句返回false,那么您的测试类将失败,并且会让您知道代码中存在不正确的地方,您需要修复原始代码。

   7.在理想情况下,我们应该在测试类中编写多个方法,很少有方法应该测试我们的肯定用例,其他方法应该测试我们的否定测试用例。

   8.@TestVisible作用是访问类的私有变量,如一些内部类或私有变量需要访问或者给值时;

   9.小伙伴们可以通过在测试方法中通过System.assertEquals() OR Sysetm.assert() OR System.assertNotEquals() 来验证变量 的预期结果 与实际结果是否相符,如果不成立的话,则会提示失败,并说明原因

  Example :

System.AssertException : Assertion Failed : Expected: 1 , Actual: 0

//预期 是 1, 实际 是 0

   10.可以通过runAs 模拟不同用户操作

看完上述内容,你们对Salesforce中的示例分析有进一步的了解吗?如果还想了解更多知识或者相关内容,请关注创新互联行业资讯频道,感谢大家的支持。


网站标题:Salesforce中的示例分析
文章路径:http://pwwzsj.com/article/jjeijo.html