java – 是否存在JUnit测试的标准结构?通常优先考虑每次测试多少个断言?
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了java – 是否存在JUnit测试的标准结构?通常优先考虑每次测试多少个断言?,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1374字,纯文字阅读大概需要2分钟。
内容图文
![java – 是否存在JUnit测试的标准结构?通常优先考虑每次测试多少个断言?](/upload/InfoBanner/zyjiaocheng/820/05db91daed4c439cb67f84b6a81ff43f.jpg)
我将通过一个例子更好地解释这个:
想象一下,我有一个函数接收一个X整数数组和一个包含起始位置的额外整数,它计算从该位置开始的数组中10个数字的平均值,但如果数组没有,则忽略0值并返回-1000000从起始位置到结尾包含10个或更多值:
public double calculateAverage(ArrayList<Integer>, int startingPosition){
//functionLogic
return myAverage;
}
我是单元测试的新手,但我建议在这里做以下测试:
>使用20个整数列表和5作为起始位置进行测试. (应该将10个数字的平均值从5返回到14)
>使用20个整数列表和15作为起始位置进行测试. (应返回-1000000)
>使用9整数列表进行测试. (无论起始位置如何,都应返回-1000000)
>使用20整数进行测试,其中一半数字为0,并且5为起始位置. (应该返回5到14之间的数字的平均值而不计算0).
>使用20整数进行测试,其中一半的数字是0和15作为起始位置. (应返回-1000000)
这些测试可能还不够,或者太多,或者只是糟糕的测试,请随时评论任何改进,因为我相信大多数人都比我更了解单一测试.
我的问题:
我是否必须编写5种不同的JUnit测试函数?用5个断言只写1个更好吗?或者我以2和3组的形式潜水(例如)?
这里推荐的款式是什么?
谢谢大家的耐心等待.
解决方法:
相当广泛,但我认为“非正式”的共识是绝对限制测试中的断言数量.
换句话说:你喜欢许多小测试而不是几个大测试.
推理:单元测试的核心思想是帮助您理解(然后修复)失败的根本原因.当您在一个测试方法中有多个断言或“测试”时,您会花费您的第一分钟来了解测试失败的确切位置.
将其与仅包含两行或三行的测试(一些设置后跟“执行”,然后是验证/断言步骤)进行比较.
除此之外:那里有很多好材料,例如javacodegeeks.
内容总结
以上是互联网集市为您收集整理的java – 是否存在JUnit测试的标准结构?通常优先考虑每次测试多少个断言?全部内容,希望文章能够帮你解决java – 是否存在JUnit测试的标准结构?通常优先考虑每次测试多少个断言?所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。