问题标签 [struts2-junit-plugin]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
738 浏览

java - 如何在 struts 单元测试中测试文件上传?

在 Struts 2 中,我可以request.setParameter()用来测试正常的表单提交。但是,如何测试上传文件?是否有等效的request.setParameter()方法可以让您将文件作为参数值传递?

我的操作也有一个setFile()方法,我可以在调用之前使用它来设置文件actionProxy.execute(),但是,如果请求中没有文件,这样做不会重置我的文件的值吗?

0 投票
1 回答
397 浏览

struts2 - Struts2 Junit4 tests accumulate JSON responses with every action execution

I've written a few Junit4 tests, which looks like this :

Both actions return JSON results and executeAction javadoc says :

Seems like it's unable to handle JSON results and hence, the second action execution shows accumulated result, such that result_for_second_action= result1 concatenate result2

Is there a solution to get the executeAction() return the actual JSON response, rather than concatenating JSON responses from all previous executions.

0 投票
1 回答
2184 浏览

maven - ActionContext.getContext().getParameters() 在 StrutsJUnit4TestCase 期间返回 null

我正在通过 maven 运行 JUnit 测试,其中正在测试一个 struts 操作 java 方法,该方法进行以下调用:

这是“TokenHelper.java”中的方法:

此方法的第一行是返回null

下一个 LOC,“params.containKey(...)”抛出 NullPointerException,因为“params”为空。

当这个动作被正常调用时,它运行良好。但是,在 JUnit 测试期间,会出现此空指针。

我的测试类如下所示:

在我切换到使用 StrutsJUnit4TestCase 之后,ActionContext.getContext() 至少不再为空。

知道为什么 .getParameters() 返回 null 吗?

0 投票
1 回答
556 浏览

struts2 - 为 Struts2 创建与数据库相关的 JUNIT 测试用例

我正在使用 struts2-junit-plugin 为 struts2 Web 应用程序编写测试用例,我的问题是在我的操作类中有一些与数据库相关的查询,它们使用数据源(jndi)我如何在我的测试用例中模拟它。

编辑

在这个测试中,我正在设置远程用户。

在 IndexAction (implements PrincipalAware) 我有这个

在我运行测试时,在 index ation principalProxy 中为空。

0 投票
1 回答
1173 浏览

java - Struts2 JUnit ActionContext 对象

StrutsActionContext正在null测试中。

使用 Struts2 JUnit 插件我有以下测试:

两个相关的类如下:

我正在尝试"application"ActionContext.HashMap

值是在测试中设置的,但是一旦代码在BaseAction值中执行,则null. 这里有类似的问题(链接),但在我的情况下答案不正确。

是否有不同ActionContext的被创造?如果是这样,如何将变量传递给BaseAction

0 投票
1 回答
1417 浏览

struts2 - StrutsSpringJUnit4TestCase freemarker 结果“找不到名称的模板”

我们一直在尝试使用StrutsSpringJunit4TestCasefor Struts2,但是当我们运行一个基本测试时,我们得到一个"Template not found for name"我们知道存在的文件的错误:

调度程序#sendError:500

似乎测试用例没有找到文件,src/main/webapp/因为适当的文件确实存在于:`src/main/webapp/WEB-INF/content/errors/error.ftl

我们需要做些什么来指导 Struts2 或测试在哪里可以找到 freemarker 模板?

样品测试:

全栈跟踪:

0 投票
1 回答
1446 浏览

spring - 测试Struts2时如何设置弹簧活动配置文件

在测试一个独立的 spring 环境时,我们可以这样做:

在使用 spring 集成测试 Struts 2 时,我们可以使用:

但是如何在此处设置活动弹簧配置文件?

0 投票
1 回答
1051 浏览

spring - 我正在测试的操作中的 bean 没有符合条件的 bean

我在eclipse上做一个项目,使用tomcat、maven、spring、hibernate和struts。我们有 2 个应用程序:包含所有 bean(服务)的核心和带有操作视图等的 web。

我对服务进行了 JUnit 测试,并决定尝试对 Actions 进行一些测试。这是我正在尝试做的一个例子:

行动

测试

配置

每次我尝试启动此测试时,我都会遇到此错误ActionProxy proxy = super.getActionProxy("/modif/register");

org.springframework.beans.factory.BeanCreationException:创建名为“web.action.A”的bean时出错:注入自动装配的依赖项失败;嵌套异常是 org.springframework.beans.factory.BeanCreationException:无法自动装配字段:public core.service.ExampleService web.action.A.exampleService;嵌套异常是 org.springframework.beans.factory.NoSuchBeanDefinitionException:没有为依赖项找到类型为 [core.service.ExampleService] 的合格 bean:预计至少有 1 个 bean 有资格作为此依赖项的自动装配候选者。依赖注解:{@org.springframework.beans.factory.annotation.Autowired(required=true)}

不管我打电话给哪个 bean,我都收到了这个错误。它们都在核心应用程序和我的操作中工作,我什至可以在我的测试中直接调用它们而不会出现任何错误,但每次我尝试启动测试时它都会失败。

有谁知道什么可能引发这个异常?

0 投票
1 回答
526 浏览

struts2 - 无法使用 Struts2-Junit-Plugin 执行任何 StrutsTestCase,动作方法为空

首先很抱歉,如果我解释得不够清楚,我会尽力做到最好。最近我从 C/C# 切换到 Java,我有点不知所措。

我正在开发一个使用 Struts2+Hibernate 的项目(我没有使用 Spring);这个想法是使用 struts2-JUnit-plugin 来测试动作。

我遵循了 strut2-junit-plugin 教程但没有成功,经过大量研究并尝试了所有可能的解决方案,但我找不到好的解决方案。

“问题”(因为我不确定这是否是一个问题......)我遇到的是,当我尝试运行 StrutsTestCase 时,在设置期间:

当调用dispatcher = initDispatcher(dispatcherInitParams)时, dispatcherInitParams为 null 并抛出以下堆栈跟踪:

在此之后,即使我得到了错误,我也可以继续测试,例如,以下测试:

第二个问题是调用时似乎找不到动作:

ActionProxy 代理 = getActionProxy("/UpdatePassword.action");

它在 getActionProxy 中抛出异常:

此时String 方法为 null 并且以下调用正在引发异常:

ActionProxy proxy = config.getContainer().getInstance(ActionProxyFactory.class).createActionProxy( namespace, name, method, new HashMap(), true, false);

在我放弃之前有什么想法吗?

谢谢!

0 投票
1 回答
45 浏览

struts2 - 在 Struts1.x 应用程序中使用 struts2-junit-plugin jar

我正在开发 struts 1.x 应用程序,需要在其中实现 junit 4 测试用例。我有 struts2-junit-plugin jar 用于使用 StutsTestCase 为 Action 类创建测试用例。这可能吗 ?使用 struts2-junit jars 的 Struts 1.x 应用程序。当我尝试运行测试用例时,它给出错误 - InitializationError 当我检查失败跟踪时 - 它显示 java.lang.noclassdeffounderror org/springframework/core/io/resourceloader

任何人都可以帮我解决问题。是使用 junit jar 版本还是在 struts 1 应用程序中使用 struts2 jar。或者我需要添加更多内容或任何其他错误。请帮忙

提前致谢