社区
研发管理
帖子详情
谁能告诉我单元测试(UT)的原则
ichyw
2001-08-23 03:37:14
我觉得在真正的工程项目中,UT的作用有限。
请问:
1。全局变量多的程序是不是不容易作UT
2。对A函数做UT,而在A函数里调用B函数,现在要测试B函数调用失败的情况,
请问能否另外写一个C函数来代替B函数
int C()
{
return -1;
}
但是B函数里其它的操作被取消了,这有可能改变系统的正常流程,使测试变得
没有意义,怎麽办?
...全文
306
2
打赏
收藏
谁能告诉我单元测试(UT)的原则
我觉得在真正的工程项目中,UT的作用有限。 请问: 1。全局变量多的程序是不是不容易作UT 2。对A函数做UT,而在A函数里调用B函数,现在要测试B函数调用失败的情况, 请问能否另外写一个C函数来代替B函数 int C() { return -1; } 但是B函数里其它的操作被取消了,这有可能改变系统的正常流程,使测试变得 没有意义,怎麽办?
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
2 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
FireKylin
2001-08-23
打赏
举报
回复
1.UT与全局变量多没有直接关系,因为你做的是测试一个单元。但是全局变量多意味着你的
模块耦合性强,即使每个单元都没有问题了,也可能因为函数间协调不好出现问题。这样的
问题有时候表现出来会很怪异。
2.一般来说,Unit本身无法直接运行,都需要main函数。notyy的分析我也很赞同,你的b函数
一定是更改了某些全局变量。这样的话,你可以在main函数的开头把这些全局变量先赋上
期望的值,然后写一个函数名与B相同,函数体与你说的C相同的函数。这样做控制非常灵活,
可以任意修改测试数据(那些全局变量和B函数的返回值)。当然这些也不是一成不变的,
因为程序是多种多样的,具体问题还得具体分析。
我所说的用于UT的main函数和b函数通常称为桩函数。
notyy
2001-08-23
打赏
举报
回复
什么样的项目是真正的工程项目?呵呵。
1、全局变量多有可能预示设计上有些问题。单元测试实际上就是一次模拟对被测试的方法的调用,如果全局变量会影响到这个调用,那可能真的要好好考虑考虑。
2、a函数调用b函数。先对b函数做单元测试,然后对a函数做单元测试。
你举的例子里说明b函数里有些方法操作了一些全局变量,并且这些全局变量控制着正常的流程。
先想想有没有办法改变这种情况,优化一下设计。然后,既然你是测试b失败的情况,当然可能有b里的所有操作都失败的情况。
其实就你所描述的情况,很需要对b做很详细的测试。
工作多年后我更了解了
UT
的重要性
对于有经验的开发写
单元测试
是非常有必要的,并且对自己的代码质量以及编码能力也是有提高的。
单元测试
可以帮助减少bug泄露,通过运行
单元测试
可以直接测试各个功能的正确性,bug可以提前发现并解决,由于可以跟断点,所以能够比较快的定位问题,比泄露到生产环境再定位要代价小很多。同时充足的
UT
是保证重构正确性的有效手段,有了足够的
UT
防护,才能放开手脚大胆重构已有代码,工作多年后更能发现
UT
的重要。
单元测试
在敏捷的开发理念中,覆盖全面的自动化测试是添加新特性和重构的必要前提。
单元测试
在软件开发过程中的重要性不
Go
单元测试
基本介绍
单元测试
(Unit Tests,
UT
) 是一个优秀项目不可或缺的一部分,是对软件中的最小可测试部分进行检查和验证。在面向对象编程中,最小测试单元通常是一个方法或函数。
单元测试
通常由开发者编写,用于验证代码的一个很小的、很具体的功能是否正确。
单元测试
是自动化测试的一部分,可以频繁地运行以检测代码的更改是否引入了新的错误。特别是在一些频繁变动和多人合作开发的项目中尤为重要。你或多或少都会有因为自己的提交,导致应用挂掉或服务宕机的经历。
unittest
单元测试
框架详解
单元测试
是一项对技术要求很高的工作,只有白盒测试人员和软件开发人员才能胜任。但用
单元测试
框架做
单元测试
却十分简单,而且
单元测试
框架不仅可以用来做
单元测试
,它还适用于不同类型的「自动化」测试。 1.提供测试用例组织和(批量)执行 在 Python 中,我们编写的代码可以定义类、方法和函数,那么如何定义一条「测试用例」?如何灵活地控制这些「测试用例」的执行顺序?
单元测试
框架会
告诉
我们。 2.提供丰富的断言方法 当我们进行功能测试时,测试用例需要有预期结果。当测试用例的执行结果与预期结果不一致时,判定测试用例
【编码心得】
单元测试
的那些事
单元测试
是指对软件中的最小可测试单元(如函数、方法、类等)进行隔离测试的过程。这些单元在测试过程中被单独运行,以确保它们的行为符合预期。
单元测试
是软件开发中最低级别的测试活动,旨在发现模块内部存在的各种错误。在做
单元测试
时,为了隔离外部依赖,确保这些依赖不影响验证逻辑,我们经常会用到 Fake、Stub 与 Mock。1. Fakes(伪对象)Fakes是那些包含了生产环境下具体实现的简化版本的对象。它们不是完整的生产实现,但会采取一些捷径,拥有生产代码的简化版本。
软件测试——测试用例的编写
测试用例要素构成 用例ID 字符和数字组合成的字符串,用例编号应具有唯一性、易识别 系统测试 产品编号-ST-系统测试项名-系统测试子项名-XXX 集成测试 产品编号-IT-集成测试项名-集成测试子项名-XXX
单元测试
产品编号-
UT
-
单元测试
项名-
单元测试
子项名-XXX 用例标题 简单描述,需要用概括的语言描述用例的出发点和关注点,
原则
上每个用例的标题不能重复 所属项目 当前测试用例所在测试大类、被测试需求、被测模块、被测单元等 系统测试用例测试项目 软件需求项 集成测试用例测试
研发管理
1,268
社区成员
28,284
社区内容
发帖
与我相关
我的任务
研发管理
软件工程/管理 管理版
复制链接
扫一扫
分享
社区描述
软件工程/管理 管理版
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章