




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
目录
1CC1测试概述..........................................................3
1.软件测试SoftwareTesting.......................................................................................................3
2.术语Terminology......................................................................................................................3
3.一些对比...................................................................4
lec2单元测试UnitTesting.............................................................................................5
1.概述......................................................................5
2.JUnit............................................................................................................................................6
lec3白盒测试..........................................................6
lec3.1图论与结构化覆盖...........................................................6
1.GraphinTesting软件测试的图...............................................6
2.Path路径..................................................................8
3.GraphCoverageCriteria图覆盖准贝U....................................................................................9
4.StructuralCoverage结构化覆盖..............................................10
5.ControlFlowGraphandItsCoverage控制流图及其覆盖........................11
lec3.2主路径和基本路径覆盖......................................................17
1.PrimePathCoverage主路径覆盖.............................................17
2.BasicPathCoverage基本路径覆盖..........................................19
lec3.3数据流覆盖和事件流覆盖....................................................21
1.DataFlow数据流.........................................................21
2.DataFlowCoverageCriteria数据流覆盖标准................................22
3.DataFlowTesting.....................................................................................................................23
4.EventFlowGraph事件流图.................................................26
5.GUITAR.....................................................................................................................................26
6.CoverageCriteria覆盖率标准................................................26
lec3.4变异测试和缺陷测拭........................................................26
1.MutationTesting变异测试..................................................26
2.Fault-basedTesting基于缺陷的测试..........................................28
lec3.5逻辑覆盖...................................................................30
1.LogicCoverage逻辑覆盖...................................................30
2.MC/DC.......................................................................................................................................32
lec4自动化测试......................................................33
lec5黑盒测试.........................................................34
Iec5.1随机测试...................................................................34
1.BlackboxTesting黑盒测试.......................................34
2.DiversityRandominUniformDistribution均匀分布中的随机...............34
lcc5.2等价-边界-组合测试........................................................35
1.EquivalencePartitioning等价类划分.........................................35
2.Assumptions假设Equivalence等价....................................36
3.Boundary-ValueAnalysis边界值分析.........................................38
4.CombinatorialTesting组合测试.............................................42
5.CostEffectiveTesting成本效益测试.........................................43
lec5.3缺省-约束-决策表..........................................................46
1.DefaultOptionsinTesting测试中的默认选项.................................46
2.ConstraintsinTesting测试约束..............................................46
3.DecisionTables决策表.....................................................47
lec6测试前沿专题....................................................48
丘6.1多样性.....................................................................49
1.OtherTesting.............................................................................................................................49
lec6.2测试预言与测试约简........................................................49
l.TestOracle测试预言........................................................49
2.TestSuiteReduction测试用例集约简........................................50
lec7集成与系统、验收测试、移动测试..................................52
lec7.I集成与系统................................................................52
1.系统集成的模式与方法....................................................52
2.功能测试FunctionalTesting.............................................................................................56
3.回归测试.................................................................57
4.非功能性测试............................................................57
lec7.2验收测试...................................................................61
1.验收测试的过程和主要内容................................................61
2.产品规格说明书的验证....................................................62
3.用户界面和可用性测试....................................................62
4.兼容性测试..............................................................62
5.可安装性和可恢复性测试..................................................63
6.文档测试.................................................................64
lec7.3移动应用测试..............................................................64
1.报告中发现的缺陷........................................................64
2.缺陷.....................................................................65
2
led测试概述
1.软件测试SoftwareTesting
(1)Fault,Error&Failure
SoftwareFault:Astaticdefectinthesoftware(i.e.,defect)
软件中的静态缺陷(即缺陷)
SoftwareError:Anincorrectinternalstatethatisthemanifestationofsomefault
一种不正确的内部状态,它是某些故障的表现
SoftwareFailure:External,incoirectbehaviorwithrespecttotherequirementsor
otherdescriptionoftheexpectedbehavior
关于预期行为的要求或其他描述的外部的不正确行为
Bug:informaltermforfault/failure
fault/failure的非正式术语
(2)PIEModel钳图模型
执行/可达性:必须到达程序中包含故障的一个或多个位置
感染:程序的状态一定不正确
传播:受感染的状态必须传播以导致程序的某些瑜出不正确
讨论:
测试可能无法执行故障位置
执行错误的测试可能不会产生错误
错误可能不会传播到输出
(3)练习
Isthereisafault,whichcannotberevealedbyanytest?
是否存在无法通过任何测试发现的故障?
Isitafaultornotafault?
PleaseconstructasimpleprogramP(withafault)and3tests(tl,t2,t3),s.t.
①tlexecutesthefault,butnoerror
②t2(executesthefaultand)producesanerror,butnofailure
(3)t3producesafailure
2.术语Terminology
(1)TestCase测试用例
TestCase包含:TestInputf^rData)、TestOrac\e(Expectedoutput)>Others
(Environment)
(2)Testoracle
3
给定输入的软件预期输出
测试用例的一部分
自动测试中最困难的问题:测试Oracle生成
⑶Testfixture
被测软件的一种固定状态,用作运行测试的基准;也称为测试上下文,例如:
用一组已知的特定数据加载数据库
准备输入数据以及设置/创建伪造或模拟对象
(4)Testsuite&Testscript测试套件&测试脚本
Testsuite
测试用例集
通常,这些测试用例具有相似的先决条件和配置
通常可以按顺序一起运行
用于不同目的的不同测试套件
某些平台,某些功能,性能……
Testscript
自动运行一系列测试用例或测试套件的脚本
(5)Testdriver测试驱动
可以加载测试用例集合或测试套件的软件框架
它还可以处理预期输出和实际输出之间的配置和比较
(6)Testadequacy
需要一种策略来确定何时完成了足够的工作
充分性标准:一个规则,可让我们判断某个软件的一组测试数据的充分性
example:testcoverage测试覆盖率
评估测试代码百分比的度量
声明范围
分支机构覆盖率
3.一些对比
(1)Testingvs.Debugging
Testingistorevealabugbyexecutingtestandobservingfailure.
测试是通过执行测试并观察故障来发现错误
Debuggingistofixabugbylocating,understandingandcorrectingfault.
调试是通过定位、理解和纠正错误来修复错误
(2)Verificationvs.Validation验证
Verification:对产品、服务或系统是否符合规定、要求、规范或强加条件的评估。
这通常是一个内部过程
4
Validation:产品、服务或系统满足顾客和其他确定的利益相关者的需求的保证。
它通常涉及外部客户的接受度和适用性
(3)StaticTestingvs.DynamicTesting
StaticTesting静态测试
withoutexecutingprograms不执行程序
DynamicTesting
withexecutingprograms
(4)Black-boxTestingvs.White-boxTesting
Black-boxTesting
withoutsourcecode源代码
White-boxTesting
withsourcecode
Gray-boxTesting=Black-boxTesting+White-boxTesting
lec2单元测试UnitTesting
1.概述
(1)GranularityofTesting测试粒度
单元测试:每个模块的测试
集成测试:测试模块之间的交互
系统测试:开发人员将系统作为一个整体进行测试
验收测试:由没有正式测试用例的客户根据用户需求验证系统
(2)单元测试
软件测试的基本模块
函数,类,组件
5
发现的典型问题
本地数据结构
演算法
边界条件
错误处理
(3)单元测试的作用
分而治之的方法
将系统拆分为多个单元
单独调试单元
缩小可能存在错误的地方
不追逐其他单元的错误
(4)如何做单元测试
分层构建系统
从不依赖其他的类开始
在已经测试过的类上继续测试
好处
避免编写模拟类
在测试模块时,它所依赖的模块是可靠的
(5)Unitlestframework
xUnit>JUnit
2.JUnit
⑴测试
通过测试程序自动验证
可以自己编写这样的测试程序,
或使用测试工具支持,例如JUnil
JUnit
一个简单,灵活,易于使用的开放源代码且实用的Java单元测试框架
可以处理大量的测试用例集
(2)JUnitTestSuite
测试套件:一组测试(或其他测试套件)
将测试组织到更大的测试集中
帮助自动化测试
Iec3白盒测试
lec3.1图论与结构化覆盖
1.GraphinTesting软件测试的图
6
(1)概述
图可能是计算机科学中最常用的结构
ControlFlowGraph控制流程图
(2)Graphscomefrommanysources
需求说明书、有限状态机、用例图、活动图
(3)FormalDefinitionofGraphs
AgraphGisdefinedasfollows:G=(V,E)
•V:一组有限的、非空的顶点集
V={vhv2fv3tv4}
•E:一组边(成对的顶点)
E={(vbV2)f(v2,v4),(v^v^)}
=v
•vo:一组初始顶点,V0{i}
•Vf:一组最终顶点,V厂{vj
•VoandVjaresubsetsofVV。和Vf是V的子集
(4)练习
Isasinglevertexagraph?
一个顶点是图吗?
CanEbeaninfiniteset?
7
E可以是一个无限集吗?
讨论
Multipleinitialvertices多个初始顶点
vo=伍引
Multiplefinalvertices多个最终顶点
2.Path路径
(l)Path
Path:Asequenceofvertices-[vl,v2,…,vn]路径:顶点序列
Eachpairofverticesisanedge每对顶点都是一条边
Length:Thenumberofedges长度:边的数目
Asinglevertexisapathoflength0单个顶点是长度为0的路径
Subpath:Asubsequenceofverticesinp子路径:p中顶点的子序列
(2)TestPath
测试路径:从初始顶点开始,到最终顶点结束的路径
pl=vlv2v4v5v7
p2=vlv2v4v6v7
p3=vlv3v4v5v7
p4=vlv3v4v6v7
测试路径代表测试用例的执行
一些测试路径可以由许多测试执行
某些测试路径无法通过任何测试执行
(3)TestandTestPath
path(t):测试t执行的测试路径
path(T):由测试集T执行的测试路径集
每个测试仅执行一个测试路径
8
3.GraphCoverageCriteria图覆盖准则
(1)Reach
如果存在以vl开头并以v2结尾的路径,则vl可以到达v2
如果存在一条以vl开头并以G中的顶点结尾的路径,则vl可以到达G,
v1canreachv5
v2canreachv6
v2canreachG'
V,={v4,v5,v6},E'二{(v4,v5),(v4,v6)}
Syntacticreach:Apathexistsinthegraph
语法范围:图中存在一条路径
Semanticreach:Atestexiststhatcanexecutethatpath
语义范围:存在一个可以执行该路径的测试
v2cansyntactically语法上reachv5
v2maynotsemantically语义上reachv5
⑵Cover
如果v在p中,则测试路径p覆盖顶点v
如果e在p中,则测试路径p覆盖边e
如果正在p中,则测试路径p覆盖子路径p'
若pl=vlv2v4v5v7
p1coversv5
p1coversv4v5
p1doesnotcoverv4v6
①GraphCoverage
在测试中使用的图形如下:
将软件模型开发为图形
要求测试覆盖特定的顶点、边或子路径集
②StructuralCoverage结构覆盖
在图上仅根据顶点和边定义
源代码
9
需求规格
设计图
③DataFlowCoverage
要求对图进行引用变量的注释
(3)TestCriteria测试标准
测试要求(TR):描述测试路径的属性
测试标准:定义测试要求的规则
满足度:给定一个准则C的一组测试需求TR,一组测试T满足图上的C当且仅
当对于TR中的每个测试需求,路径(T)中有一个测试路径满足测试需求TR
4.StructuralCoverage结构化覆盖
(1)VertexCoverage(VC)顶点覆盖率(VC)
当且仅当对于V中的每个语法上可到达的顶点v,在path(T)中存在一条路径p
使得p覆盖v时,测试集T满足图G上的顶点覆盖
TR包含G中的每个可ii顶点
(2)EdgeCoverage(EC)边缘覆盖率(EC)
当且仅当对于E中每个句法可到达的边e,在path(T)中存在一条路径p使得p
覆盖e时,测试集T满足图G的边缘覆盖率
TR包含G中的每个可到达边缘
⑶VCandEC
VertexCoverage:TR={vl,v2,v3}
TestPath=[vl,v2,v3]
EdgeCoverage:TR=|(vl,v2),(vl,v3),(v2,v3)]
TestPaths=[v1,v2,v3]
fv1,v3]
(4)CoveringMultipleEdges覆盖多个边
边对覆盖需要一对边
10
边对覆盖(EPC):TR包含每一条长度不超过2(含2)的可达路径,单位为G
完全路径覆盖(CPC):TR包含G中的所有路径
n路径覆盖(nPC):TR包含每个长度为n(含n)的可达路径,单位为G
VC(n=O),EC(n=l),EPC(n=2),CPC(n=oo)
(5)Subsume包含
Cl包含C2,表示为C1NC2
对于任何T,如果T满足Cl意味着T满足C2
如果nl叁.2则nlPC叁n2PC
C1>C2并不意味着满足C1的T1可以检测到由T2检测到的满足C2的任何故障
(6)StructuralCoverageExample结构覆盖率示例
VertexCoverage
TR={1,2,3,4,5,6,7「
TestPaths:[1,2,3,4,7][1,2,3,5,6,5,7]
EdeeCoverage
TR={(1,2),(1,3),(2,3),(3,4),(3,5),(4,7),(5,6),(5,7),(6,5)}
TestPaths:[1,2,3,4,7][1,3,5,6,5,7]
Edge-PairCoverage
TR={[1,23],[1,3,4],[1,3,5],[2,3,4],[2,3,5],[3,4,7],
[3,5,6],[3,5,7],[5,6,5],[6,5,6],[6,5,7]}
TestPaths:[1,2,3,4,7][1,2,3,5,7][1,3,4,7]
[1,3,5,6,5,6,5,7]
CompletePathCoverage
TestPaths:[1,2,3,4,7][1,2,3,5,7][1,2,3,5,6,5,6][1,2,3,
5,6,5,6,5,7][1,2,3,5,6,5,6,5,6,5,7]...
5.ControlFlowGraphandItsCoverage控制流图及其覆盖
(1)CodeCoverage代码覆盖率
代码覆盖率
控制流覆盖
II
声明范围
分行覆盖率
路径覆盖率
覆盖率收集工具
EclEmma
获得代码覆盖率:
一种常见的方法是将程序抽象成图形
图:通常是控制流图(CFG)
节点覆盖率:执行每条语句
边缘覆盖:执行每个分支
(2)ControlFlowGraph控制流程图
控制流图(CFG)是使用图表示法表示程序在执行期间可能遍历的所有路径
①CFG:if
②CFG:if-return
③CFG:while
12
④CFG:do
x=0;
do
{
y=f(x,y);
x=x+1;
}while(x<y);
printIn(y)
⑤CFG:for
for(x=0;x<y;x++)
y=f(x,y);
©CFG:breakandcontinue
13
x=0;
while(x<y)
{
y=f(x,y);
if(y=0)
{
break;
}elseify<0)
(
y=y*2;
continue;
)
x=x+1;
)
print(y);
⑦CFG:switch
read(c);
switch(c)
{
caseN:
y=25;
break;
case'Y':
y=50;
break;y=o;
break;
default:
y=o;
break;
}
print(y);
ControlFlowGraph
14
publicstaticvoidCSta(int[]numbers)
{.
intlength"numbers.length:
doublevar,mean.sum.varsum;
sum=0.0;
for(inti=0;i<length;i++)=
{
sum+=numbers[i];一__
}
mean=sum/(double)length;
varsum=0.0;
fur(iuli-0;i<Icuglh;i++)■
{-
varsum=varsum+((numbers[i]-mean)*(numbers[i]-mean));
}
var=varsum/(length-1.0);
System.out.println("length:"+length);
System.out.println("mean:"+mean);
System.out.println("variance:"+var);____
}
⑶CFG-basedCoverage基于CFG的覆盖范围
若x=0,a=true,b=false
①CFG-basedCoverage:StatementCoverage声明覆盖范围
测试覆盖语句的百分比
SCov=4/5=80%
②CFG-basedCoverage:BranchCoverage分支覆盖
测试覆盖的分支百分比,考虑每个条件语句的false和true分支
BCov=2/4=50%
声明覆盖分支覆盖
③CFG-basedCoverage:PathCoverage路径覆盖率
15
测试覆盖的路径百分比,考虑所有可能的程序执行路径
PCov=1/4=25%
(4)CFG-basedCoverage:Comparison
①Statement声明CoverageVS.Branch分支Coverage
如果一个测试套件达到100%的分支覆盖,那么它必须达到100%的声明覆盖
不在分支中的语句将被任何测试覆盖
所有其他语句都在某个分支中
分支覆盖严格包含声明覆盖
②Branch分支CoverageVS.Path路径Coverage
如果测试套件达到100%的路径覆盖率,则必须达到100%的分支覆盖率
所有分支组合均已覆盖,表明所有分支均已覆盖
路径覆盖严格包含分支覆盖
③总结
路径覆盖率
严格包含分支覆盖
严格包含声明覆盖
PathCoverage
I
BranchCoverage
I
StatementCoverage
(5)CFG-basedCoverage:Effectiveness有效性
16
大约65%的错误可以在单元测试中捕获
单元测试以控制流测试方法为主导
语句和分支测试在控制流测试中占主导地位
CFG-basedCoverage:Limitation
某些方面的100%覆盖率永远不能保证无bug软件
CoverageCollection:Mechanism机制
源代码已插入指令(源代码/二进制代码)
写入跟踪文件的日志代码插入到每个分支、语句等中
执行插入指令的代码时,覆盖率信息将写入跟踪文件
lec3.2主路径和基本路径覆盖
1.PrimePathCoverage主路径覆盖
(1)LoopsinGraphs图中的循环
如果一个图包含一个循环,那么它有无限多条路泾
因此,CPC是不可行的
⑵概念
①简单路径:如果没有节点出现多次,则从节点ni到nj的路径是简单的,除非
第一个和最后一个节点可能相同
没有内部循环
循环是一条简单的路径
SimplePaths:[1,2,4,1],[1,3,41],[2,4,1,2],
[24L3],[341,2].[34124],
[44,3,4],[1,2,4],[1,3,4],[2,4,1],[3,4,1],
[4,1,2],[4,1,3],[1,2],[1,3],[2,4],[3,4],[4,1],
[1L[2],[3],[4]
②主路径:一条简单路径,它不会作为任何其他简单路径的正确子路径出现
PrimePaths:[2,41,2],[2,4,1,3],[1,3,4」],
[1,2A1],[3,4,1,2],[44,3,4],[4,1,2,4],
[3,4,13]
(3)PrimePathCoverage主路径覆盖
一个简单、优雅和有限的标准,它要求执行循环和跳过循环
主路径覆盖(PPC):TR包含G中的每个基本路径
将覆盖所有长度的路径0,1…
17
也就是说,它包含节点和边覆盖
PPC不包含EPC
如果顶点v本身有一条边,EPC将需要[v,v,v,J
[V,V,V]不是素数
(4)RoundTrip
往返路径:在同一节点上开始和结束的基本路径
简单往返覆盖率(SRTC):TR包含至少一个往返路径,用于开始和结束往返路径
的G种每个可到达顶点
完全往返覆盖(CRTC):TR包含G中每个可达顶点的所有往返路径
这些条件会忽略不在往返中的节点和边
也就是说,它们不包含边对,边或顶点覆盖率
PrimePaths:[2,4,1,2],[2,4,1,3],[1,3,4」],
[1,2,4,1],[3A1,2],[4,13,4],[4,1,2,4],
[3,4,1,3]
(5)Simple&PrimePathExample
PrimePaths
[1,2,3,4,7]
[1,2,3,5,71Executeloop0times
[1,2,3,5,6]
[1,3,4,7]
[1,3,5,7]Executelooponce
[1,3,5,6]
[6,5,7]
[6,5,6]Executeloopmorethanonce
[5,6,5]
18
1T2
4H1L“,n
SimplepathsLen0_二Len3
[21r123
1L
uT,J,,声3,4]
r13]r134
LL
,,,[1,2,3,5]
[2][23]r135
L,
3:,,[1,3,4,7]
r34]r234
LL,,
4,535[1,,5,7]
[3]r2,,
5,L
r47Tr347[1,3,5,6]
LJL,,
65,7357[2,3,4,7]
[]r,,
5,6L3562,3,5,6
[7][]r,,
L
6,556523,5,7
r1I,,
L,J657
[,,
[6,5,6
Len4
[1,2,3,4,7]
[1,2,3,5,7]
[1,2,3,5,6]
⑹练习
Howtogenerateteststocoverallprimepath?
如何生成覆盖所有主路径的测试?
Aresomeprimepathsinfeasible?
一些主路径是不可行的吗?
PrimePathCoverage
TRTestPath
A.[3,4,3]i.[1,2,3,4,3,5,6,7,6,8]
B.[4,3,4]ii.[1,2,3,4,3,4,3,
C.[7,6,7]5,6,7,6,7,6,8]
D.[7,6,8]iii.[1,2,3,4,3,5,6,8]
E.[6,7,6]iv.[1,2,3,5,6,7,6,8]
F.[l,2,3,4]v.[1,2,3,5,6,8]
G.[4,3,5,6,7]
H.[4,3,5,6,8]
I.[1,2,3,5,6,7]
J.[1,2,3,5,6,8]
Primepath:themaximal-longsimplepath
主路径:最大长度的简单路径
2.BasicPathCoverage基本路径覆盖
(1)概述
McCabe提出的一种测试机制
19
分支覆盖和所有路径覆盖之间的测试标准
满足分支测试要求的测试;还测试可用于通过计算机程序构造任意路径的所有
独立路径
⑵路径
①IndependentPath独立路径
通过系统的路径仅在其包含某些顶点或边未被其他路径覆盖的情况下,才与其他
路径无关
路径1[1,23,4,5,6,8]
路径2[1,2,356,7,8]
②LinearlyIndependentPath线性独立路径
[el,e2,e3,e4,e5,e6,e7,e8,e9]
[1』,0,0,1』,。。』]
0,0,1]
11,1,0,0,1,1,1,1,1]
flj,1,1,1,1,1,1,1]
[1,1,2,2,1,1,221]
从线性代数可知,每个矩阵都有一个唯一的秩(线性独立行数),该秩小于或等于
列数
③TheNumberofLinearlyIndependentPaths线性独立路径数
线性独立路径的个数就是这个矩阵的秩
这个矩阵的秩正是图的圈复杂度
④McCabe'sBasicPathTestingMcCabe的基本路径测试
20
生成控制流程图
计算圈复杂度
选择一组基本路径
生成基本路径的测试
(3)BasicPathCoverage
publicstaticvoidCSta(int[]numbers)
intlength=numbers.length;•CC=9-8+2=3
doublevar.mean,sum,varsum;
•[ebe2»e3»c4»e5»e6»e7.e8,e9]
sum=0.0;
for(inti=0;i<length;ij)•BasicPathSet1
sumnumbers[i];•[1,1,0,0JJ,0,0J]
)
mean=sum/(double)length;•[1,1,13,1,1,0,0,1]
varsum=0.0;•[1,1,0,0,1,1,1,1,1]
for(inti=0;i<length:i—)
,BasicPathSet2
varsuni=varsum♦((numbers[i]-mean).(numbers[i]-mean));
・[1,1,0,03,1,0,0,1]
var=varsum,(Icngtli-1.0);
Systan.out.printh("laigtli:”+length);
Systan.out.println("mean:M+mean);
Systcm.out.println(、*ariancc:・』,
)[1,1,11,100,1]
LinearCombination:2*[1,1,1,1,1,1,1,1,1,0,0,1,1,0,0,1]=[1,1,2,2,1,1,2,2,1]
(4)练习
CC=9-7+2=4
BasicPathSet
所有路径测试>=BPT>=分支测试
McCabe圈复杂度
基本路径(线性独立)
lec3.3数据流覆盖和事件流覆盖
1.DataFlow数据流
(1)DataFlow
超越结构
21
目标:尝试确保正确计算和使用值
定义(加力将变量值存储到内存中的位置
用途:访问变量值的位置
Defs:def(l)={X}
def(5)={Z}
dcf(6)={Z}
Uses:use⑸={X}
use(6)={X}
defs中给出的值应至少达到一种,某些或所有可能的用途
⑵SetsofDefandUse定义和使用集
def(n)或def(e):由节点n或边e定义的一组变量
use(n)或use(e):节点n或边e所使用的变量集
⑶定义
①DUpair对:一对位置(li,lj),使得变量v在li处定义并在lj处使用
②Def-clear:如果变量v在路径中的任何节点或边上均未赋予其他值,则对于
变量v,从li到1j的路径是def-clear的
到达率:如果从li到lj相对于v有def-clear的路径,则li处的v的def到达Ij
处
③dupath:
一个简单的子路径是def-clear,和v的def到v的用法相关
du(ni,nj,v)
t从ni到nj的du路径集
du(ni,v)
t从ni开始的du路径集
2.DataFlowCoverageCriteria数据流覆盖标准
全定义覆盖率(ADC):对于每组du-pathsS=du(n,v),TR在S中至少包含一条
路径d
所有使用覆盖率(AUC):对于要使用S=du(ni,nj,v)的每组du路径,TR至少
包含S中的一条路径d
全du-paihs覆盖(ADUPC):对于每个集合S=du(ni,nj,v),TR包含S中的每
22
个路径d
3.DataFlowTesting
ControlPlowGraph控制流程图
23
publicstaticvoidCSta(int[]numbers)
(
intlength=numbers.length;
(j)doublevar,mean,sum,varsum;
/、sum=0.0;
<2/for(inti=0;i<length;i-H-)
(V^um+=numbers[i];
mean=sum/(double)length;
^varsum=0.0;
$for(inti=0;i<length;i-H-)
(5)varsum=varsum+((numbers[i]-mean)*(numbers
[i]-mean));
var=varsum/length;
(8)System.out.printin("length:“+length);
System.out.printin("mean:'+mean);
System.out.println("variance:"+var);
Variable
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 《电力拖动控制与实训》课件-电力拖动技术与实训(低压电器)
- 心外科题库简答题及答案
- 作文教学教学课件
- 明确问题的教学课件
- 物业天台清扫方案(3篇)
- 医院市场拓展方案(3篇)
- 墙面修理规划方案(3篇)
- 机械库存管理方案(3篇)
- 工厂工艺方案简单(3篇)
- 环保餐盒订购方案(3篇)
- 文史哲与艺术中的数学智慧树知到期末考试答案章节答案2024年吉林师范大学
- 信息光学智慧树知到期末考试答案章节答案2024年北京工业大学
- 《HSK标准教程1》课件
- 电大财务大数据分析编程作业3
- 诺贝尔生理学或医学奖史话智慧树知到期末考试答案2024年
- 行业分析报告模板(很全面-非常有用)
- 内分泌系统疾病教学设计教案1
- 法人变更书面催促通知合集3篇
- 广东省初级中学教育装备标准
- 售票员岗前培训
- 教科版六年级下册科学第一单元《小小工程师》教材分析及全部教案(定稿;共7课时)
评论
0/150
提交评论