软件测试基本概念-概述
1 软件缺陷
1.1 什么是软件缺陷?
软件未达到产品说明书中已经标明的功能;
软件出现了产品说明书中指明不会出现的错误;
软件未达到产品说明书中虽未指出但应当达到的目标;
软件功能超出了产品说明书中指明的范围;
软件测试人员认为软件难以理解、不易使用,或者最终用户认为该软件使用效果不良。
继续阅读 »
软件测试基本概念-白盒测试
又称结构测试、逻辑驱动测试、程序员测试
1 逻辑覆盖法
1.1 语句覆盖
原理
如果语句中有错误,仅靠观察不执行可能发现不了.
定义
语句覆盖就是设计若干个测试用例,运行被测程序,使得每一可执行语句至少执行一次。
继续阅读 »
软件测试基本概念-黑盒测试
1 测试用例设计概念
1.1 测试用例的定义与特征
1.1.1 定义
测试用例是为特定的目的而设计的一组测试输入、执行条件和预期的结果。
测试用例是执行的最小实体。
1.1.2 特征
最有可能抓住错误的;
不是重复的、多余的;
一组相似测试用例中最有效的;
既不是太简单,也不是太复杂。
1.2 设计测试用例的基本准则
1.2.1 测试用例的代表性
能够代表并覆盖各种合理的和不合理的、合法的和非法的、边界的和越界的以及极限的输入数据、操作和环境设置等。
1.2.2 测试结果的可判定性
即测试执行结果的正确性是可判定的,每一个测试用例都应有相应的期望结果。
测试结果的可再现性
即对同样
继续阅读 »
软件测试基本概念-单元测试
1 概念
1.1 定义
单元测试又称模块测试,是最小单位的测试,其依据是详细设描述,对模块内所有重要的控制路径设计测试用例,以便发现模块内部的错误。
单元测试多采用白盒测试技术,系统内多个模块可以并行地进行单元测试。
继续阅读 »
软件测试基本概念-过程
1 制定测试计划
1.1 制定计划
1.1.1 本阶段的主要工作内容
对需求规格说明书的仔细研究
将要测试的产品分解成可独立测试的单元
为每个测试单元确定采用的测试技术
为测试的下一个阶段及其活动制定计划
继续阅读 »
软件测试基本概念-策略
1 静态测试与动态测试
1.1 静态测试
1.1.1 定义
静态测试不实际运行软件,主要对软件的编程格式、结构等方面进行评估。
可以有人工进行,充分发挥人的逻辑思维优势,也可以借助软件工具自动进行。
继续阅读 »
单元测试代码自动生成工具
1 AST Tester
http://www.atatech.org/articles/3530
集团的,已经没有人维护了。
2 Randoop
https://code.google.com/p/randoop/
用了下eclipse的插件,只能随机生成测试用例。没有diea插件,言屌
继续阅读 »
单元测试工具对比
1 Junit or TestNg
TestNG和JUnit是针对Java语言的两个比较常用的测试框架。JUnit出现的比较早,但是早期的JUnit 3对测试代码有非常多的限制,使用起来很不方便,后来的JUnit 4得到很大的改进。TestNG的出现介于JUnit 3和JUnit 4,但是TestNG在很多方面还要优于JUnit 4。下面从整体上对TestNG和JUnit 4进行比较全面的比较。
1.1 TestNG与JUnit的相同点:
使用annotation,且大部分annotation相同。
都可以进行单元测试(Unit test)。
都是针对Java测试的工具。
继续阅读 »
8月上胖记
感觉“胖”这个字不错,半个月。
技术博文
八月的第一周写了一个软件测试的系列博文。从概念写到实战,当写到实战部分的单元测试时,卡克了。原因是之前的博文只是把以往学过的东西做了一个汇总,而实战部分才是这几天学习的总结。单元测试确实是有很多问题等待解决,这几天一直在寻找一个快速进行单元测试的方法。其实能想到解决方案也通俗,要么自动化生成单测代码,要么用更合适的语言,快速书写单测的用例。第一种方案,我找了一些工具,但发现各自有各自的问题。于是转战第二种方案,倒是发现了一些不错的工具。
继续阅读 »