单元测试void如何写(单元测试主要测试函数内部的接口,数据结构,

http://www.itjxue.com  2023-02-18 19:03  来源:未知  点击次数: 

单元测试的代码编写

 多数讲述单元测试的文章都是以Java为例,本文以C++为例,后半部分所介绍的单元测试工具也只介绍C++单元测试工具。下面的示例代码的开发环境是VC6.0。 class CMyClass

{

public:

int Add(int i,int j);

CMyClass();

virtual ~CMyClass();

private:

int mAge; //年龄

CString mPhase; //年龄阶段,如少年,青年

};

建立对应的测试类CMyClassTester,为了节约编幅,只列出源文件的代码:

void CMyClassTester::CaseBegin()

{

//pObj是CMyClassTester类的成员变量,是被测试类的对象的指针,

//为求简单,所有的测试类都可以用pObj命名被测试对象的指针。

pObj = new CMyClass();

}

void CMyClassTester::CaseEnd()

{

delete pObj;

}

测试类的函数CaseBegin()和CaseEnd()建立和销毁被测试对象,每个测试用例的开头都要调用CaseBegin(),结尾都要调用CaseEnd()。 接下来,我们建立示例的产品函数:

int CMyClass::Add(int i,int j)

{

return i+j;

}

和对应的测试函数:

void CMyClassTester::Add_int_int()

{

}

把参数表作为函数名的一部分,这样当出现重载的被测试函数时,测试函数不会产生命名冲突。下面添加测试用例:

void CMyClassTester::Add_int_int()

{

//第一个测试用例

CaseBegin();{ //1

int i = 0; //2

int j = 0; //3

int ret = pObj-Add(i,j); //4

ASSERT(ret == 0); //5

}CaseEnd(); //6

} 第1和第6行建立和销毁被测试对象,所加的{}是为了让每个测试用例的代码有一个独立的域,以便多个测试用例使用相同的变量名。

第2和第3行是定义输入数据,第4行是调用被测试函数,这些容易理解,不作进一步解释。第5行是预期输出,它的特点是当实际输出与预期输出不同时自动报错,ASSERT是VC的断言宏,也可以使用其他类似功能的宏,使用测试工具进行单元测试时,可以使用该工具定义的断言宏。

示例中的格式显得很不简洁,2、3、4、5行可以合写为一行:ASSERT(pObj-Add(0,0) == 0);但这种不简洁的格式却是老纳极力推荐的,因为它一目了然,易于建立多个测试用例,并且具有很好的适应性,同时,也是极佳的代码文档,总之,老纳建议:输入数据和预期输出要自成一块。

建立了第一个测试用例后,应编译并运行测试,以排除语法错误,然后,使用拷贝/修改的办法建立其他测试用例。由于各个测试用例之间的差别往往很小,通常只需修改一两个数据,拷贝/修改是建立多个测试用例的最快捷办法。

要进行单元测试的方法是void类型,怎么单元测试

主要方法:等价类法,因果图法,边界值法,状态转换法。UI界面测试主要是界面的嵌套加载、布局等,单元测试的方法有:模块接口测试(主要的)、局部数据结构测试 、 路径测试 、异常处理测试、函数,类,模块的边界值测试。测试需求分析:根据不

单元测试用例该怎么写

首先我们需要先下载相应的 JUnit 相关的 JAR 包,下载的过程可以去 JUnit 的官方网站,也可以直接通过 Maven 资源仓库来完成。

使用简单的 @Test 注解实现我们的测试方法的编写和执行

准备工作做好之后,接下来我们就可以开始尝试编写壹个简单的测试代码了。首先,我们编写了壹个 Calculator 类,并提供五个方法分别完成加减乘除以及求平方的运算。代码如下:

package net.oschina.bairrfhoinn.main;

public class Calculator {

public void add(int n){

result += n;

}

public void substract(int n){

result -= n;

}

public void multiply(int n){

result *= n;

}

public void divide(int n){

result /= n;

}

public void square(int n){

result = n * n;

}

public int getReuslt(){

return result;

}

public void clear(){

result = 0;

}

private static int result;

}

Java怎样单测void类型的方法

是测试方法是否运行 or 方法运行是否正确 or 是否修改了传入的对象

直接写一个测试类

/**

*测试对象的void方法

*/

public class TestMethod() {

//初始化对象

//调用对象的void方法

}

(责任编辑:IT教学网)

更多

推荐JSP教程文章