标签:字符 版本 越界 输入数据 关系 指标 管理 基准测试 矩阵
选择20
填空20
判断20
简答20
设计20
按测试阶段分类:
单元测试
单元测试中的驱动程序指调用被测程序的模块。
桩程序指调用的程序。
集成测试
集成测试的测试计划通常在概要设计的阶段完成。
集成测试包含自底向上,自顶向下两种基础方式。前者需要写驱动,后者需要写桩。
系统测试
性能测试
性能测试指为了发现系统性能问题或获取系统性能相关指标而进行的测试。根据不同的测试目的分为
1、 性能验证测试:验证系统是否达到事先已定义的系统性能指标、能否满足系统的性能需求
2、 性能基准测试:在系统标准配置下获得有关的性能指标数据,作为将来性能改进的基准线
3、 性能规划测试:多种特定环境下,获得不同配置的系统的性能指标,从而决定在系统部署时采用什么样的软硬件配置
4、容量测试:系统容量可以看作系统性能指标之一
常见的有负载测试、压力测试、可靠性、稳定性等测试。
负载方式如教材图6-6
验收测试
按是否看见源代码测试:
白盒测试:
逻辑覆盖
语句覆盖:使程序中的每个可执行语句至少被执行一次
判定覆盖(分支):每个判断的取真分支和取假分支至少经历一次
条件覆盖:每个判断中每个条件的可能取值至少满足一次
判定-条件覆盖:所有条件可能取值至少执行一次,同时,所有判断的可能结果至少执行一次
条件组合覆盖等:使得程序中每个判断的所有可能的条件取值组合都至少出现一次
基本路径测试
路径覆盖:设计所有的测试用例,来覆盖程序中的所有可能的执行路径。
黑盒测试:
等价类划分法
边界值分析法:
边界值分析法就是在某个输入输出变量范围的边界上,验证系统功能是否正常运行的测试方法(黑盒)
决策表法
决策表(判定表)法是借助表格方式完成对输入条件的组合设计,以达到完全组合覆盖的测试效果。(黑盒)
由条件桩和动作桩组成。一般步骤为:
1、列出所有条件桩和动作桩;
2、填入条件项;
3、填入动作项,指定初始判定表;
4、简化合并相似规则或者相同动作
??按是否执行代码测试:
按目的测试:
性能测试
压力测试
功能测试
功能测试主要是按照产品规格说明书来检验被测试的系统是否满足各方面功能的使用要求
可靠性测试
灾难恢复性测试
安全性测试
安全测试中,基于漏洞的测试是指从软件内部出发找到的安全缺陷。
漏洞指软件内部的安全性问题,威胁是软件外部的安全性问题
兼容性测试
兼容性测试是指软件之间能否正确地交互和共享信息。多版本时,包含以前版本内容是向前兼容,包含未来版本是向后兼容
回归测试
安装测试
验收测试
验收测试是指性能测试完成,上市之前这个阶段进行的测试,其中需要客户参与
软件国际化是软件工程,完成软件国际化之后才能完成软件本地化
I18N指软件国际化,L10N指软件本地化。
软件本地化是对原始语言(例如,英文)开发的软件进行语言转换和工程处理,生成不同语言版本的技术。
“国际化软件测试”的内容分为“软件国际化测试”和“本地化软件测试”,“软件国际化测试”是“国际化软件测试”的子集。
国际化软件测试首先要经过软件国际化测试,等到本地化软件开发出来后,再进行本地化软件测试。
软件国际化测试的对象是采用国际化方法进行设计的软件,例如英文的Word 2003。 测试的环境是各种不同语言的操作系统,例如简体中文、繁体中文、德语、日语等的Windows 操作系统。
自动化测试指由计算机系统或软件工具、程序来承担并自动执行。
自动化测试不能完全代替手工测试
软件质量保证中包含了软件测试
β测试指软件开发公司组织各方面的典型用户在日常工作中实际使用β版本
单元测试中常见的缺陷:
空指针保护
数据格式化异常
字符串或数组越界错误
资源不合理使用
不当使用synchronized导致系统性能下降
获得的外部数据在使用时,通常要考虑到是否为空,是否符合需求格式,是否符合长度要求等等。即在使用equals,包装类转换,数组和字符串长度、synchronized时,需要注意
软件测试管理体系中,TPI next由关键域,级别,测试成熟度矩阵,检查点,改进建议构成。
关键域指软件测试过程的各个方面,通过对不同方面的评估,测试过程的优缺点都变得清晰,这些方面为关键域
级别指每个关键域所处的状态,即对关键域的评估结果
测试成熟度矩阵指关键域各个等级和总体测试过程成熟度等级的映射关系
检查点指为了客观决定各个关键域的级别而提供的度量工具
改进建议指检查点为我们发现的问题
待测试代码:
public int add(int a,int b)
{
return a+b;
}
测试代码:
public class TestAAA {
static int[] cases; //被beforeClass赋值,由静态使用静态。测试用例
int[] results; //由before赋值。预期结果
@BeforeClass
public static void setCases() {
cases = new int[]{1,3,-1,-3,1,-3,-1,3};
}
@Before
public void before(){
results = new int[]{4,-4,-2,-2};
}
@Test //单元测试的主体
public void testAdd(){
Calc c = new Calc();
for (int i = 0;i<cases.length; i+=2 ){ //两个一组进行加法
//断言判断运行结果和预期结果
Assert. assertEquals(c.add(cases[i],cases[i+1]),result[i/2]);
}
}
}
基本路径组分析方法:1、先画出流程控制图;2、计算环复杂度;3、写出基本路径,和环复杂度数量相等。
常见流程控制图
标签:字符 版本 越界 输入数据 关系 指标 管理 基准测试 矩阵
原文地址:https://www.cnblogs.com/songcubi/p/14920920.html