为测试目的更改Scala配置

为测试目的更改Scala配置,scala,typesafe-config,Scala,Typesafe Config,我想在测试期间改变我的程序配置,以选择不同的数据库进行测试。我想在mongo中选择一个虚拟数据库,这样就不必担心破坏我的手动测试数据库,也不必制造类似于Ecto测试的行为。(我知道他们是通过交易实现的,但我认为放弃mongo的db就足够了 有人试过做类似的事情吗?有人能给我指出正确的方向吗 编辑: 或者我甚至可以让Scala根据输入的参数选择不同的配置文件吗?(例如,当mode=test时选择test.conf,当conf通过时选择prod.conf等等) 使用Scala配置()这是关于您的配置

我想在测试期间改变我的程序配置,以选择不同的数据库进行测试。我想在mongo中选择一个虚拟数据库,这样就不必担心破坏我的手动测试数据库,也不必制造类似于Ecto测试的行为。(我知道他们是通过交易实现的,但我认为放弃mongo的db就足够了

有人试过做类似的事情吗?有人能给我指出正确的方向吗

编辑: 或者我甚至可以让Scala根据输入的参数选择不同的配置文件吗?(例如,当mode=test时选择test.conf,当conf通过时选择prod.conf等等)


使用Scala配置()

这是关于您的配置库的,如果您或您的驱动程序使用的是非常常见的typesafe配置,您应该在
src/test/resources/application.conf
等处提供一个测试配置。如何进行测试配置?这取决于您使用的库。没有一种方法可以用于所有Scala库。您需要更精确地进行测试得到一个有用的答案。通过类型安全(lightbend?)使用scala配置许多库都在使用TypeConfig配置,您需要更精确地了解TypeConfig是如何搜索资源的。这是关于您的配置库的,如果您或您的驱动程序使用的是非常常见的typesafe配置,那么您应该在
src/test/resources/application.conf
等处提供一个测试配置。如何进行测试配置?这取决于您使用的是哪个库。所有Scala库没有一种单一的方法。您需要更加精确才能得到有用的答案。通过typesafe使用Scala配置(lightbend?)许多库都在使用TypeConfig配置,您需要更精确,并了解TypeConfig是如何搜索资源的。