我试图为一个简单的bean编写单元测试,这个bean在我的程序中用来验证表单。bean使用@component
进行注释,并具有一个使用
@Value("${this.property.value}") private String thisProperty;
我想为这个类中的验证方法编写单元测试,但是,如果可能的话,我希望在不使用属性文件的情况下这样做。我的理由是,如果我从属性文件中提取的值发生了变化,我希望这不会影响我的测试用例。我的测试用例测试的是验证值的代码,而不是值本身。
有没有一种方法可以在我的测试类中使用Java代码来初始化一个Java类,并在该类中填充spring@Value属性,然后使用它进行测试?
我确实发现这个怎么说好像很接近,但还是用了一个属性文件。我宁愿都是Java密码。
如果可能的话,我会尝试在没有spring上下文的情况下编写这些测试。如果您在没有spring的情况下在您的测试中创建这个类,那么您就可以完全控制它的字段。
要设置@value
字段,可以使用SpringsReflectionTestUtils
-它有一个方法setfield
来设置私有字段。
@see javadoc:ReflectionTestutils.SetField(java.lang.Object,java.lang.String,java.lang.Object)
问题内容: 我正在尝试为程序中用来验证表单的简单bean编写单元测试。Bean带有注释,并具有使用初始化的类变量 我想为此类中的验证方法编写单元测试,但是,如果可能的话,我希望在不利用属性文件的情况下这样做。我这样做的原因是,如果我从属性文件中提取的值发生更改,我希望这不会影响我的测试用例。我的测试用例正在测试验证值的代码,而不是值本身。 有没有一种方法可以在测试类中使用Java代码来初始化Jav
所以,我的问题是,我正在尝试为我的应用程序进行单元测试。我有两个服务,我们叫它们Foo和Bar,Foo只是Bar的代理。 因此,Foo服务的路由器如下所示: 向Bar服务发出请求的处理程序如下所示: 当我这样写测试时: 它永远冻结了......嗯,我想这是因为它周围的一些协程魔法,但是因为我在这方面还是新手,我不明白这里到底发生了什么。有什么帮助吗?
问题内容: 这是我的java类: 这是单元测试: 测试失败,因为没有任何人注入。我应该如何正确处理这种情况?是否存在最佳实践? 问题答案: 如果没有像Spring这样的容器(或诸如基于Spring的Unitils之类的容器),则必须手动注入实体管理器。在这种情况下,您 可以 将以下内容用作基类:
我在自定义对象上有一个简单的“插入后”触发器来更新picklist值。基于某些IF条件,我正在更新picklist值,这在webservice或UI手动插入中运行良好,但当我为其编写单元测试用例时,picklist值总是返回null。选择列表值取决于插入记录后的触发器执行。我没有控制选取列表值。我正在创建测试数据,它将返回除picklist值之外的所有字段的值。是否需要显式设置值?
第一个问题:如何注入模拟(或真实?)HttpServletResponse在我对CXF JAX-RS服务endpoint进行单元测试期间? 我们的服务是如何设置的示例(注意我没有控制/权限来更改非测试结构): 测试类: 我可能在这里做错了几件事,但是我希望我只需要在我的自定义调用器中加入正确的“魔法”,以便正确地向我的endpoint注入HttpServlet响应。我要注意的是,在我没有注入上下文
我有这个文本文件: 我的观点是: 我希望将每一行与每列相匹配(first_row-first_column,SEND_ROW-SEND_COLUMN等)我哪里出错了?我的代码如下: