kotlin - Kotlin JUnit5 测试类是否应该包含包语句?
问题描述
我正在编写一个 Kotlin 程序,根据惯例src/main/kotlin/mypackage/*.kt
,每个源文件都包含package mypackage
.
我使用 IntelliJ IDEA 选项创建了一个测试类FooBarTest
,它位于src/test/kotlin/mypackage/FooBarTest.kt
. 到现在为止还挺好。
然而,令我惊讶的是,FooBarTest.kt
不包含. 这意味着它测试的东西需要使用单独的语句显式导入。package mypackage
import
IntelliJ IDEA 是否告诉我一个令人惊讶的事实,即与主源文件不同,测试源文件不应该指定包?
还是它犯了一个错误,省略了应该存在的包装声明,我应该继续package mypackage
手动输入声明?
解决方案
我认为 IDEA 犯了一个错误——或者至少,它的帮助没有那么大。
当然,测试类与测试类在同一个包中并没有真正的必要性。但根据我的经验,这很有意义:它们更容易找到,而且正如你所说,它避免了很多import
陈述。
它还使文件层次结构与包层次结构对齐。同样,虽然在 Kotlin 中没有绝对必要,但它确实使文件更容易找到并避免意外的冲突,而且我还没有找到不同的理由。
推荐阅读
- box - 将文件上传到 Box 时出现格式错误的流
- excel - VBA - 粘贴事件和撤消粘贴的最后一个动作
- php - $oQueryBuilder->getQuery()->getResult() 的问题
- python - Python脚本关闭时结束执行子进程
- c++ - 复数相除 - 条件
- android - 我可以在 android studio 的片段上使用 Firebase 吗?
- sorting - 获得shell排序通过次数的公式是什么?
- unity3d - Unity 在鼠标点处实例化对象得到错误的坐标
- c# - 在不知道结构的情况下使用 Newtonsoft.Json 解析 JSON
- nuxt.js - 在 Nuxt w/ Express 中如何在保存服务器时防止重新编译