Loading [MathJax]/jax/output/CommonHTML/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >单元测试-我应该测试参数验证代码吗?

单元测试-我应该测试参数验证代码吗?
EN

Stack Overflow用户
提问于 2014-07-29 22:22:24
回答 1查看 957关注 0票数 2

我总是验证论点。我刚开始做单元测试。是否应该添加验证无效参数引发异常的测试?

例如,假设整数参数应该在3..5范围内。然后,我有一个验证,如果异常低于3或大于5,则抛出超出范围的异常,但现在我必须编写额外的两位测试用例--两个验证异常抛出值小于3和大约为5的测试用例,还有一个测试用例验证当所有参数有效时都不会抛出异常。

我被撕裂-“魔鬼和角度在我的肩膀”的情况:)。“没有人因为选择I.B.M而被解雇”逻辑上说:“有人会通过无效的论点。你已经投入了努力,通过验证参数来验证这一点。多花点功夫,为每个参数投资几个测试用例,以验证你的论点验证是否有效。”

但脚踏实地的逻辑是:“这是一个沉重的负担。验证代码本身只是一种保险。在验证中添加测试用例是浪费金钱,增加了另一层保险”。

我该怎么办?

因此,我的问题是:“,对于每个公共方法的每个参数,我是否应该编写测试用例来验证参数验证代码是否确实有效?。”

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-07-29 22:30:51

是的,你应该这样做。这正是一种非常适合于单元测试的场景:一个包含少量可能输入的小操作。

但是,对于每个参数来说,必须这样做是不同的:只对那些对它们执行了一些逻辑的人这样做。

理想情况下,您希望在测试中反映每个需求:“如果字符串为null,抛出argumentexception”应该有相应的单元测试。

我同意,这些测试编写起来很简单,但它们会给您很多安慰,让您确信您的代码的基本知识,做他们应该做的事情。他们也会非常快地写,当然,如果你只是复制它,并在需要的地方改变一些值。

验证代码是保险,但它是保险的一个重要部分:如果验证不起作用,您的程序将进入未指定的领域。确保保险有效。

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/25029987

复制
相关文章
测试需要做单元测试吗?
昨天在技术交流群里,有同学说自己还想多学点技术,打算去做单元测试,写单测代码来提升技术,然后群里的同学就测试要不要做单元测试展开了很多讨论。
老_张
2022/09/02
3880
测试需要做单元测试吗?
聊一聊,单元测试应该测试什么?
现在大公司越来越重视项目的单元测试,甚至明确要求项目的单元测试覆盖率不能低于某个值,足可见单元测试的重要性;
洋仔聊编程
2020/04/14
5860
聊一聊,单元测试应该测试什么?
单元测试-mock使用应该注意什么
Mock的概念,其实很简单:所谓的mock就是创建一个类的虚假的对象,在测试环境中,用来替换掉真实的对象,以达到两大目的:
洋仔聊编程
2019/01/28
1.9K0
单元测试-mock使用应该注意什么
Mock的概念,其实很简单:所谓的mock就是创建一个类的虚假的对象,在测试环境中,用来替换掉真实的对象,以达到两大目的:
洋仔聊编程
2020/08/02
6320
Surfire 单元测试添加 jvm参数
如果你执行过mvn test 或者执行其他maven命令时跑了测试用例,你就已经用过maven-surefire-plugin 了。maven-surefire-plugin 是maven里执行测试用例的插件,不显示配置就会用默认配置。
HoneyMoose
2023/03/29
7780
Surfire 单元测试添加 jvm参数
2018年我应该学习Java吗
我应该学习Java吗?这是一个不断出现的问题。如果你刚开始是一个开发人员,如果你已经是一个前端开发人员,或者即使你是一个。net背景的人,很多人都想知道学习Java是否是一个正确的职业/个人开发步骤。
程序你好
2018/07/23
1.1K0
2018年我应该学习Java吗
在SpringBoot单元测试中添加参数
https://github.com/baomidou/mybatis-plus/issues/4417
阿超
2022/08/21
1.9K0
JUnitParams参数化单元测试使用详解[通俗易懂]
JUnitParams(github地址:https://github.com/Pragmatists/JUnitParams)作为一个开源的单元测试框架,提供了参数化测试,Coder不需要通过构造器来设置参数,JUnitParams可以由测试方法提供参数,减少了代码量。接下来咱们就一探究竟。
全栈程序员站长
2022/07/05
3530
还做单元测试吗?【留言赠书】
后者是指对页面的每一个组件(如文本框、按钮等)进行测试,以验证它们的功能、性能和安全性,有时也被称为组件测试。
FunTester
2023/08/04
1670
还做单元测试吗?【留言赠书】
死鬼,你真的会写单元测试吗?
本文的宗旨在于通过简单干净实践的方式教会读者,如何使用 Mock 进行工程的单元测试,以便于验证系统中的独立模块功能的健壮性。
小傅哥
2023/10/25
3560
死鬼,你真的会写单元测试吗?
代码中的单元测试与集成测试
对应用程序的准确测试决定了它的性能、可用性和可靠性。虽然测试是软件开发生命周期的一个组成部分,但是没有简单的方法可以一次完成它。每个软件产品都要经过开发人员和专门的测试团队的一系列测试。执行这些测试是为了确定应用程序在暴露于不同情况时的执行或行为。
从大数据到人工智能
2022/01/19
9880
我应该删除微软帐户密码吗?
互联网时代,密码已成为生活中的必需品,每个人都有非常多密码,例如银行密码、社交账号密码、游戏账号密码等等。我们的数字生活大多数时候都依赖密码做安全保护,然而,密码本身的安全性却很差,原因主要有两方面:
神锁离线版
2021/09/23
1.6K0
我应该删除微软帐户密码吗?
【单元测试】--编写单元测试
这是一个简单的NUnit单元测试的示例,展示了如何创建测试项目,编写测试用例,运行测试以及查看测试结果。随着你的项目复杂性的增加,你可以编写更多的测试用例来确保你的代码按预期工作。
喵叔
2023/10/22
4440
单元测试_JUnit常用单元测试注解介绍及代码演示
https://pan.baidu.com/s/1OUNC0kZNduXJJLbpw76GZA
授客
2019/09/11
8850
单元测试_JUnit常用单元测试注解介绍及代码演示
Python: 调试代码和单元测试
文章背景: 最近在学习华为云在线课程Python应用篇,其中有个章节是程序调试。在代码编写过程中,需要不断地调试代码,使其满足我们的开发要求。下面首先介绍程序调试的几种方法,然后介绍单元测试。
Exploring
2022/09/20
8350
Python:  调试代码和单元测试
单元测试代码比产品代码还要多?
该文讲述了单元测试代码和产品代码之间的关系,以及进行单元测试的重要性。作者通过示例和代码展示了如何编写有效的单元测试用例,以及如何使用Mock和模拟对象来测试复杂的代码。作者强调了单元测试的重要性,并建议将单元测试代码和产品代码分离,以使代码更容易被测试和维护。
Ken Fang 方俊贤
2018/01/04
1.3K0
我对单元测试和测试驱动开发的见解
(废话想说一些:如果我们听到一个陌生的概念,不去追问它是什么,它有什么用?直接进行任务去完成这个概念描述的事,那么,我们可能很难理解我们为什么要这么做,也可能做不好。)
顾翔
2019/12/12
8210
年轻时,我不写单元测试
当我们被提出这些bug的时候,我们是二脸懵逼的,因为这不符合一个程序员的预期!!! 那么我们如何能够避免以上的问题,从而将经历投入到更多的开发(写bug)中去呢? 笔者在这里试着归纳了一下解决问题的办法
2014v
2019/11/20
8760
.NET单元测试的艺术-3.测试代码
开篇:上一篇我们学习单元测试和核心技术:存根、模拟对象和隔离框架,它们是我们进行高质量单元测试的技术基础。本篇会集中在管理和组织单元测试的技术,以及如何确保在真实项目中进行高质量的单元测试。
Edison Zhou
2018/08/20
5430
.NET单元测试的艺术-3.测试代码
点击加载更多

相似问题

单元测试,我应该修改方法参数吗?

20

我应该对每段代码进行单元测试吗?

34

我应该提取一些单元测试代码吗?

11

我应该单元测试我的JavaScript吗?

58

我应该创建单元测试基础吗?

21
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文