运维开发网

ant – 使用依赖于环境变量的代码进行单元测试

运维开发网 https://www.qedev.com 2020-05-10 13:51 出处:网络 作者:运维开发网整理
我们暴露了一小组环境变量来控制我们的应用程序行为.应用程序代码在 java中. (环境变量可能是邪恶的,但在这种特殊情况下有目的) 单元测试的最佳方法是什么?如何创建环境变量,将其设置为不同的值并重复调用测试? 目前的解决方案是在junit任务中使用env元素.例如下面 <env key="BASE_PLUGINS_FOLDER" value="c:/temp"/> 代码为测试设置环境变量. (仅
我们暴露了一小组环境变量来控制我们的应用程序行为.应用程序代码在 java中. (环境变量可能是邪恶的,但在这种特殊情况下有目的)

单元测试的最佳方法是什么?如何创建环境变量,将其设置为不同的值并重复调用测试?

目前的解决方案是在junit任务中使用env元素.例如下面

<env key="BASE_PLUGINS_FOLDER" value="c:/temp"/>

代码为测试设置环境变量. (仅当fork模式设置为true时才有效)

这意味着我必须在ant构建文件中创建多个测试部分,并在其他地方测试相应的.这可能很快变得无法管理.

我觉得可能有更好的方法,这完全是一个junit-java代码.不确定如何.

您应该封装检索这些变量的方式.它不仅允许您更改传递它们的方式(env变量,系统属性,配置文件等…),而且它也将更加可测试.

然后,您可以定义两个不同的实现:一个实际读取环境(您在生产中使用),另一个您可以在Java中自己指定这些值(您在测试中使用).

0

精彩评论

暂无评论...
验证码 换一张
取 消