51Testing软件测试论坛

标题: 请教DSP 平台 如何做 白盒测试。 [打印本页]

作者: tohope    时间: 2009-1-14 17:31
标题: 请教DSP 平台 如何做 白盒测试。
做了两年开发,代码流程都很清楚。
只是,刚刚转到测试上来,做白盒测试,我看了几天网页,还是没明白如何在dsp上实现。
有没有哪位兄弟,做过这方面的东西。请给个提醒!
需要做什么?
怎么做?

覆盖测试到底要怎么做?代码有几十k,我测试时,如何才能做到覆盖???
接口、ISR这些函数如何处理?

问题太多太多,谢谢大家不吝赐教,回答一个也行!
作者: yamaya    时间: 2009-1-15 16:51
覆盖测试:首先画出程序的流程图,然后根据流程图画出DD路径,选取需要测试的路径(可根据判定覆盖、条件覆盖等,选择测试的强度)。然后在需要的地方插入打印信息或调试信息等。

单元测试时,函数可一个一个的测,对于接口函数,可先假定这些被调用函数都是正确的,模拟给出传入的参数,目的是是本函数(被测函数)可正确执行,也可根据需要设置参数的等价类及边界值。

说的不知道对不对,请见谅。
作者: tohope    时间: 2009-1-16 10:05
标题: 谢谢 yamaya 的关注。
谢谢,我就按照你说得做了,但是,对覆盖的实现很疑惑。
1。是不是对每个函数都要进行覆盖测试测试?
2。如下例程序:如何做白盒测试(因为系统所限,决定使用C语言、在DSP板上跑如下程序,程序是一个简单的嵌入式处理流程,在中断服务程序中接收数据,然后,处理,最后发送数据)。

这个例子,是常用的简单模型,我想做嵌入式程序中基本上都有这样的流程,不知道如何进行,全面的白盒测试,我没有做过测试,望请经验前辈,指点一二,不胜感激。



int RecFlag;
int OutputFlag;

void main(void)
{
        HwInit();                          //硬件初始化
        IntInit();                        //中断初始化

        while(1)
        {
                if(RecFlag == 1)
                {
                    DataProc();
                }

                if(OutputFlag  == 1 )
                {
                        DataOutput();
                }       
        }
}


void isr()
{
        RecData(gInArray);
        RecFlag = 1;
}       


//由gInArray 获取,处理,返回gOutArray();
void DataProc(void)
{       
    int        i ;

    if(gInArray[0] == 0)
        gOutArray[0] = 1;
    else  if(gInArray[0] == 1)
        gOutArray[0] = 2;
    else
        gOutArray[0] = 3;
   
    for(i = 0;i<sizeoflast;i++)
        gOutArray[i+1] = 0x80;

    OutputFlag  = 1 ;

}

void DataOutput(void)
{
        for(i = 0;i< SENDBUFSIZE ;i++)
        {
                writeSerialPort(gOutArray);
        }
}
作者: yamaya    时间: 2009-1-16 17:17
我觉得最基本的,可以在isr函数中分别指定不同的参数,给gInArray数组和RecFlag赋不同初值组合,从而测试main函数的不同分支。此外再加上DataProc和DataOutput函数中,i参数的不同取值(可考虑边界值),取值组合的多少依据判定覆盖、条件覆盖及你希望的测试强度。
至于是不是每个函数都要测试,我觉得在这个例子里,需要测的应该是main、DataProc和DataOutput三个函数,而且可以一并测试。

这方面接触的也不多,说的错的地方敬请指正。
作者: 独角兽妹妹    时间: 2009-6-8 17:08
我是作嵌入式测试工具的。在覆盖率这块:语句覆盖,分支覆盖,Call覆盖。
作者: majun915    时间: 2009-6-8 19:31
我只有学习 帮顶得份了 呵呵
作者: dylyq1104    时间: 2009-6-19 11:55
正在学习中,受教了




欢迎光临 51Testing软件测试论坛 (http://bbs.51testing.com/) Powered by Discuz! X3.2