51Testing软件测试论坛

 找回密码
 (注-册)加入51Testing

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 2684|回复: 1
打印 上一主题 下一主题

[讨论] 关于自动化单元测试技术的一些疑问

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2011-12-19 16:21:35 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 trjianjianjiao 于 2011-12-19 16:30 编辑

我现在在做的一个项目让我有一些苦恼的地方。项目的方向是针对C语言的自动化单元测试框架,那它的核心有两个,一个是单元测试,一个是测试用例的自动生成。有两点是我想得很绕线的。我们项目的核心,即测试用例自动生成(完全的自动生成,输入是被测函数,输出是测试用例和覆盖率),有没必要?目前我知道的单元测试框架都是提供自动化的测试执行框架,程序员自己添加测试用例、进行程序验证,然后系统会给出覆盖率等等信息。第二个问题是,既然项目是要做测试用例的自动生成,那可行性怎么样?因为属于偏研究型的项目,我看过一些论文,很多论文专门针对指针、循环,我也有在书上看到说,符号分析的难点在于指针的别名和数组的引用,ms很多问题也没有很好的解决方案,大多是能解决某些问题。而且也没找到有哪个项目说做到了完全的测试用例自动生成。之前有看CUTE,静态分析与符号执行相结合的测试用例生成,也只是对指针支持的比较好。而我现在的项目大boss的要求是一个完整的产品,我疑惑的是,能做到吗?
     总结来说,就是完备的测试用例的自动生成1程序员需要吗,有意义吗?2可行吗?
     第一次发帖,对整个论坛还不熟悉,如果帖子没发对地方,还希望告知一声。真心希望大家能帮我解解惑。谢谢。
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
回复

使用道具 举报

该用户从未签到

2#
发表于 2011-12-23 10:25:22 | 只看该作者
关于用例的自动生成,关键不是技术,而是价值。例如:

int func(int a, int b)
{
    return a-b;
}

这是一个加法函数,把加号写成了减号,这种最简单代码中的最简单错误,你自动生成一亿个用例也是测不出来的,实现了百分之一亿的覆盖又有什么用?

一句话,工具不可能自动了解代码的功能,因此,自动用例的价值是极有限的,只能发现崩溃,超时之类的极端错误。
回复 支持 反对

使用道具 举报

本版积分规则

关闭

站长推荐上一条 /1 下一条

小黑屋|手机版|Archiver|51Testing软件测试网 ( 沪ICP备05003035号 关于我们

GMT+8, 2024-11-8 04:35 , Processed in 0.074543 second(s), 27 queries .

Powered by Discuz! X3.2

© 2001-2024 Comsenz Inc.

快速回复 返回顶部 返回列表