java - 在 Eclipse 中为所有 JUnit 测试设置环境变量

标签 java eclipse junit

我正在尝试设置一些使用数据库的单元测试。我想在开发人员的计算机上而不是在生产数据库上使用测试数据库。我现在采用的方法是在连接到数据库时检查环境变量,如果该变量存在则连接到本地而不是生产环境。

我可以通过运行配置在 Eclipse 中设置环境变量,但我希望在运行 JUnit 测试时发生这种情况(以防万一)。

这在 Eclipse 中可行吗?

最佳答案

为什么不将数据库连接注入(inject)到需要测试的逻辑中,在启动代码中处理环境变量(通常不需要单元测试)?

在测试中使用环境变量通常表明配置在您的代码 IME 中发生得太深。在可能的情况下,我发现通过依赖注入(inject)构建包含所需一切的对象要好得多,将代码与确定注入(inject)内容的配置代码分开。

关于java - 在 Eclipse 中为所有 JUnit 测试设置环境变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3472538/

相关文章:

java - Maven:用于手动测试的源文件夹

java - 如何将字符串与匹配组进行匹配以提取值?

java - 有没有办法计算一个单词在字符串中重复的次数?

java - 如何获取 Lucene(5.3) 生成的特定术语的位置

Java远程调试: maven 2. 2.1

java - JUnit 测试 : how to test results from a Thread

JUnit - 如果超时如何使测试用例通过?

java - 为什么我的 stub 方法返回 null?

java - Eclipse 自动添加继承文档来覆盖

eclipse - 如何在 Eclipse 包资源管理器中查看分层包结构