博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
SFDC_03(覆盖率)
阅读量:6615 次
发布时间:2019-06-24

本文共 1551 字,大约阅读时间需要 5 分钟。

有时候,我们写完controller之后要求测试代码的覆盖率。

下面写个简单的例子。

1 public with sharing class CL_00_action { 2     public String getId{set;get;} 3     public list
uList{set;get;} 4 public String println(){ 5 String a = 'hello'; 6 String b = 'today'; 7 String c = a +' '+ b; 8 return c; 9 }10 public list
selectUser(){11 uList = [ SELECT Id, Name FROM A_NO_1__c where Id =:getId ];12 if(uList.size()==0){13 return null;14 }15 return uList;16 }17 18 }
View Code

接下来的步奏是写一个测试类。

1 @isTest 2  public class CL_00_testAction { 3     static testMethod void test1(){ 4         Test.startTest(); 5         CL_00_action cls = new CL_00_action(); 6         cls.println(); 7         Test.stopTest(); 8     } 9     @isTest10     static void test2(){11         CL_00_action cls = new CL_00_action();12         A_NO_1__c  u = new A_NO_1__c (13             name  = 'test'14         );15         16         insert u;17         18         cls.getId = u.id;19         Test.startTest();20         cls.selectUser();21         Test.stopTest();22     }23 }

@isTest是必须写的,这样控制台才能识别,

测试的时候测试内容是Test.startTest();和Test.stopTest();之间的方法。
我要测试的类里有两个方法,第一个println()方法只要直接调用就可以,

第二个startTest();方法要求数据库里有数据才可以被检索出来,所以要自己先造数据,插入数据库才可以成功测试。此时这条数据并不是真正的写到数据库里,测试完就没有了。测试的具体步骤如下。

 

 

 

 这就是步骤了,如果你想看你的代码里哪些代码被执行双击荧光色部分,蓝紫色的部分是跑到的,红色是没有。

如果在标1 的比方有错误可按照步奏排查。

 

 

 有一些常见错误,你要插入的数据是否允许被写入(常见为ID,name),是否有些必须写入项,没有写。

这两种方法是一样的。

 

转载于:https://www.cnblogs.com/panxing/p/5584018.html

你可能感兴趣的文章
在VirtualBox中的CentOS 6.3下安装VirtualBox增强包(GuestAd...
查看>>
Java开发中的23种设计模式详解(转)
查看>>
我的友情链接
查看>>
组策略18招
查看>>
关于Android中的数据存储
查看>>
Tomcat配置日志生产功能
查看>>
js的自执行函数
查看>>
移植Qt与Tslib到X210开发板的体会
查看>>
Nginx + webpy 和FastCGI搭建webpy环境
查看>>
new static 跟 new self 区别
查看>>
PLSQL Develope连接oracle数据库配置
查看>>
使用JdbcTemplate过程中使用到多个参数和like模糊
查看>>
解决eclipse中无法删除Tomcat服务器中的项目,报maven is required and cannot be removed from the server错误情况...
查看>>
修改页面JS 360浏览器
查看>>
尚学linux课程---3、linux网络说明
查看>>
Git 跟 GitHub 是什么关系?
查看>>
String.split()方法
查看>>
IE6下jQuery选中select的BUG
查看>>
Tensorflow在win10下的安装(CPU版本)
查看>>
嵌入式平台做深度学习算法,不可不重视的4件事
查看>>