【发布时间】:2021-04-23 20:16:00
【问题描述】:
我有一些代码需要环境变量才能正确运行。但是当我运行我的单元测试时,它一旦到达那个点就会爆炸,除非我专门在终端中导出变量。我正在使用 Scala 和 sbt。我的代码是这样的:
class something() {
val envVar = sys.env("ENVIRONMENT_VARIABLE")
println(envVar)
}
如何在我的单元测试中模拟它,以便在调用 sys.env("ENVIRONMENT_VARIABLE") 时返回一个字符串或类似的东西?
【问题讨论】:
-
我会在单独的服务中包装检索环境变量并在测试时模拟它
-
如果无法包装现有代码,可以更改 UnmodifiableMap System.getenv() 进行测试。
标签: scala unit-testing environment-variables