gpt4 book ai didi

java - 使用 intellij 运行时单元测试中的系统属性

转载 作者:行者123 更新时间:2023-11-30 02:05:50 26 4
gpt4 key购买 nike

我正在使用 intellij runner 运行单元测试。

在应用程序的 main 方法中,我们将 keystore 设置为以下值:

/home/oozen/workspace/wakeup/src/main/resources/Certif.p12

public void run(String... args){
System.setProperty("javax.net.ssl.keyStore", vodafoneKeystore);
System.setProperty("javax.net.ssl.keyStorePassword", vodafoneKeystorePassword);
logger.info(" **************** WakeUpApp **************** ");
logger.info("vodafoneKeystore is set to {}", vodafoneKeystore);
}

这在生产中可以正常工作。但当我使用 intellij 运行时,不在单元测试中。

在测试中,当我记录 getProperty 的结果时,我看到了我们在代码中设置的内容。

在我的测试方法的开头,我可以看到该值设置正确:

    logger.info(" ################## KEYSTORE : {}", System.getProperty("javax.net.ssl.keyStore"));

################## KEYSTORE : /home/oozen/workspace/wakeup/src/main/resources/Certif.p12

但在握手期间,我看到消息:未找到证书导致身份验证失败。

有什么想法吗?

我知道我可以使用参数运行测试:... -Djavax.net.ssl.keyStore=...但我不想..:)

此外,@Thiru 展示了一种在外部设置它的方法,但我的目标是能够从代码中设置它并能够在单元测试中依赖它。

提前致谢

最佳答案

您可以使用首选项中的路径变量来完成。

请按照以下步骤操作:

  • 打开首选项 -> 路径变量
  • 点击+图标
  • 添加属性名称和值
  • 点击“应用”

请引用下图

image

关于java - 使用 intellij 运行时单元测试中的系统属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51398719/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com