SFDC_03(覆盖率)

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

下面写个简单的例子。

 1 public with sharing class CL_00_action {
 2     public String getId{set;get;}
 3     public list<A_NO_1__c > 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<A_NO_1__c> 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 }

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

 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     @isTest
10     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),是否有些必须写入项,没有写。

这两种方法是一样的。

时间: 2024-10-11 01:37:00

SFDC_03(覆盖率)的相关文章

软件测试不再黑盒— threadingtest带来第二代白盒覆盖率技术

软件测试不再黑盒- threadingtest带来第二代白盒覆盖率技术 穿线测试对于测试界的一个重大创新在于,在白盒测试理论出现数十年以后,上海零一拼装信息技术有限公司结合在测试理论方面十余年的潜心研究,率先提出了第二代覆盖率技术,这绝对不是一个口号,而是ZOA真正对于白盒测试的理解以及对于标准第三方测试服务的深度理解经过数年的基础研究以及2年有余的研发而推出的达到商用标准的技术.现在先让我们温习下经典的测试理论: 1.测试方法论 黑盒功能测试法 黑盒功能测试法, 是把要测试的软件看成一个 "黑

spring && Cobertura && maven &&junit 单元测试以及测试覆盖率

1. 目的: junit 单元测试,Cobertura   测试覆盖率报告 项目目录结构 2. maven 配置 <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://mave

使用coverage工具统计python单元测试覆盖率

Coverage简介 Coverage是一种用于统计Python代码覆盖率的工具,通过它可以检测测试代码对被测代码的覆盖率如何.Coverage支持分支覆盖率统计,可以生成HTML/XML报告. 官方文档:http://coverage.readthedocs.org/en/latest/ 获取地址:http://pypi.python.org/pypi/coverage 也可以通过easy_install或pip安装:easy_install coverage. 安装后在Python27\Sc

如何保证测试的覆盖率

如何保证测试的覆盖率 一.首先测试需求分析要全面. 测试需求分析分两步: 1.测试需求的获取 需求的来源: 显式需求: (1)原始需求说明书 (2)产品规格书 (3)软件需求文档 (4)有无继承性文档 (5)经验库 (6)通用的协议规范 隐式需求:用户的主观感受,市场的主流观点,专业人士的评价分析 2,需求的分析 ,产生测试需求文档 将不同的需求来源划分成一个个需求点,针对每一点进行测试分析: (1)界定测试范围 (2)利用各种测试设计的方法产生测试点 在测试方法方面,可做如下注意: 其一,分析

测试覆盖率插件cobertura-maven-plugin

maven的测试覆盖率插件集成,首先修改工程的pom.xml文件,添加cobertura-maven-plugin插件,如下: 1.环境准备 ? 1 2 3 4 5 6 7 8 9 10 11 12 13 <project>     ...     <reporting>         <plugins>             <plugin>                 <groupId>org.codehaus.mojo</gr

Maven单元测试报告及测试覆盖率

 对junit单元测试的报告:类似这样的结果 ------------------------------------------------------- T E S T S ------------------------------------------------------- Running com.cn.qin.actionTest.UserActionTest sdffsdfsdf Tests run: 1, Failures: 0, Errors: 0, Skipped: 0,

基于覆盖率的精准测试

精准测试是根据代码变更来选择用例的测试策略,用于回归测试.它有利于缩小用例范围,提高执行效率,降低问题定位时间,支持持续集成的极速门禁和冒烟测试.精准测试要求代码的自动化覆盖率比较高,且用例间无依赖. 基于覆盖率的精准测试,布布扣,bubuko.com

[Tommas] 测试用例覆盖率(三)

三.测试数据的设计 每一个测试思路最终都要转化成具体的数据才能来执行.关于测试数据设计的方法也不外乎那几种,就不再赘述了.此处单就一些经常易犯的错误,提出一些注意点,作为用例数据设计时的参考: 1.尽量避免可能出现歧义测试结果的数据:即你设计的数据必须能唯一正确地反映出你所希望测试的结果.比如一组测试数据,有可能得到结果A或结果B,此时单用此数据来测试预期结果为A的用例,那明显就产生了歧义. 2.对于不便具体列示的数据,则必须详细描述其各项特性:有时我们在设计用例时为节约时间,不一定要到具体的一

单元测试覆盖率统计

参考http://www.cnblogs.com/turtle-fly/archive/2013/01/09/2851474.html 1.下载安装gcov/lcovgcov生成覆盖率数据lcov数据统计 2.编译gcc -g -pipe -m64 -fpic -DLINUX -fprofile-arcs -ftest-coverage 3.链接三条任选一个执行即可$ gcc --coverage$ gcc -lgcov$ gcc -fprofile-arcs 4.运行程序,会生成覆盖数据 5.