gpt4 book ai didi

java - 将数据文件转换为 JUnit 的 Java 静态类常量

转载 作者:行者123 更新时间:2023-11-28 20:45:45 26 4
gpt4 key购买 nike

我已经为我的应用程序编写了几个 JUnit 类,但我现在想将我的测试数据(现在是硬编码的)从代码中分离到一个纯数据文本文件/属性文件/xml/任何东西。

因此我可以轻松地提供各种测试数据而无需修改我的 JUnit。

我正在考虑将它们放在一个文本文件中,并在我的 JUnit 套件的最开始使用解析器对其进行解析,并将所有数据转换为 Java 静态类常量,以便我可以轻松地在任何地方引用它在我的 JUnit 中。

public final class TestDataConstants {

public static final String username = "xbeta";
public static final String password = "test123!";
public static final String authToken = "f17bf9c8-9d38-47af-a053-210130cac6f7";
...
}

现在我知道我可以很容易地为此编写一个解析器,但我要问过去有经验的人两个问题

  1. 什么格式最好,应该使用什么格式来存储这些测试数据?
  2. 有哪些方法可以将这些测试数据文件转换为 Java 静态类?就像使用 Java 即时生成 Java 代码一样。

提前致谢。

最佳答案

一种方法是使用 .properties 文件,然后在测试开始时将其作为资源加载。

例如,

测试.properties:

test.username=xbeta
test.password=test123!
test.authToken=f17bf9c8-9d38-47af-a053-210130cac6f7

然后在您的测试中,您可以使用类似下面的方法访问数据,假设 test.properties 文件在您的类路径中:

// note, the .properties is removed in the call to .getBundle
ResourceBundle testProperties = ResourceBundle.getBundle("test");
String username = testProperties.getString("test.username");
String password = testProperties.getString("test.password");

关于java - 将数据文件转换为 JUnit 的 Java 静态类常量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10842400/

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