问题标签 [servletunit]

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 投票
2 回答
1246 浏览

jsp - 使用 ServletUnit 测试 JSP 的示例

谁能给我举个例子来说明如何使用 ServletUnit 来测试 JSP 的?我需要调用 registerServlet() 吗?如果是这样,我应该通过什么类名?

0 投票
4 回答
376 浏览

scala - 是否可以使用 Scala 2.7.7 中的清单捕获特征的类型参数?

我正在 Scala 中编写一个 ServletUnitTest 特征来为ServletUnit提供一个方便的 API 。我有类似以下的想法:

这段代码没有按书面形式编译,但希望我的意图很清楚。有没有办法做到这一点(有或没有清单)?

0 投票
2 回答
803 浏览

java - 如何使用仅包含 xml 内容的请求对 servlet 进行单元测试

我正在尝试对 java WFS Web 服务实现进行单元测试。该服务可以接受包含 KVP 参数的请求,例如: http: //www.someserver.com/wfs&SERVICE=WFS&VERSION=1.1.0&REQUEST=GetFeature&TYPENAME=InWaterA_1M

或者它也可以接受包含 XML 片段的请求,例如

我正在使用 ServletUnit 测试 KVP 方式,这很简单:

我不知道如何为 XML 类型的请求创建相应的请求。有任何想法吗?除非绝对必要,否则我宁愿不必使用另一个测试框架库。

0 投票
1 回答
413 浏览

servletunit - 使用 HttpUnit 和 ServletUnit 测试 Web 应用程序

我是一个非常天真的程序员,期待使用 Fitnesse + (HttpUnit/ServletUnit) 测试我的 Web 应用程序。这个想法是完整地测试动作/表示层,我不打算测试/断言收到的最终 HTML 响应,而是我有兴趣在我的动作代码将响应转发到 JSP 时测试数据。有没有办法我可以做到这一点?. 当我收到包含最终 HTML 的响应时使用 HttpUnit,我可以做得更好并在 httpresponseobject 上进行测试吗?此外,使用 HttpUnit 与 ServletUnit 之间到底有什么区别,我的意思是,对于哪种测试行为,一个人会选择一个人而不是另一个人?

我会很感激帮助。

0 投票
0 回答
134 浏览

testing - HttpUnit 不尊重 web.xml 中的加载启动

我仍在尝试了解 httpunit 类体系结构的工作原理,但我遇到了一个问题,即当我使用 ServletRunner 时,我没有看到 web.xml 中的“加载启动”指令得到遵守。有没有一种标准的方法来完成这项工作,或者这是一个错误?

这是我用来尝试获得工作示例的一些概念验证代码:

0 投票
0 回答
579 浏览

java - 我们如何使用 ServletUnit 对转发到 JSP 的 servlet 进行单元测试

我有一个将请求/响应转发到 JSP 的 servlet,但我不断收到异常

junit.framework.AssertionFailedError:抛出异常。com.meterware.httpunit.HttpNotFoundException:HTTP 请求错误:404 java.lang.ClassNotFoundException:org.apache.jasper.servlet.JspServlet [http://localhost/site-search/search-results.jsp] at junit.framework .Assert.fail(Assert.java:47)

因此,我尝试将 JSP 注册到已注册到 Servlet Runner 的模拟 web.xml 中,但随后出现以下异常。

org.xml.sax.SAXException:节点 <servlet> 没有名为 <servlet-class> 的子节点

在我看来,Servlet Unit 没有办法测试 servlet 是否转发到特定的视图/JSP。即使我尝试使用 <jsp-file> 而不是 <servlet-class> 在 web.xml 中注册 JSP,Servlet Unit 似乎也不喜欢那样。我看到的所有示例都只是输出到 PrintWriter 的简单 servlet。有没有人能够成功测试通过 ServletUnit 转发/重定向到 JSP 的 servlet?

谢谢,

胡安

0 投票
1 回答
442 浏览

java - 使用 registerServlet 方法时收到多个语法错误

我正在尝试使用 ServletUnit 来测试 servlet,特别是名为 SignedNotesServlet.java 的 java 文件来实现 JUnit 单元测试。该测试类与 SignedNotesServlet.java 位于同一目录中。我正在使用 Eclipse。

但是,我无法为作为 ServletUnit 和 HttpUnit 的一部分的 registerServlet 方法编写正确的语法。我还没有运行程序。我收到的错误是

令牌上的语法错误,应改为 FormalParameter

令牌“类”的语法错误,应为标识符

标记的语法错误,错误的构造

令牌“SignedNotesServlet”的语法错误,FormalParameterList 无效

这是我的代码:

我想我使用http://tinyurl.com/ku7huss中的说明正确地将 jar 文件添加到构建路径中。我使用http://tinyurl.com/b55fn作为我的主要参考,但也在查看网络上的几个 registerServlet 示例(我无法发布这些链接以供参考,因为我需要 10 个声誉才能发布超过 2 个链接) . 我不完全确定可能出了什么问题,因为我基本上是从第二个网站复制粘贴并做出(我认为的)适当的更改。

我还认为“SignedNotesServlet”可能有问题,因为错误中有四引号,我删除了它们,但它仍然没有解决,而且我认为这无论如何都不是正确的语法,基于关于例子。

0 投票
1 回答
489 浏览

jsp - 使用Httpunit和Servlet单元测试在servlet中包含jstl代码的jsp页面

我正在尝试使用 httpunit servlet runner 测试以下 servlet 代码。除了包含 jstl 的 jsp 页面之外,这里一切都很好。

如果我尝试测试上面的代码,它会给出以下异常,但 servlet 在本地服务器中工作正常。

HTTP 请求错误:500 org.apache.jasper.JasperException:绝对 uri: http: //java.sun.com/jsp/jstl/core无法在 web.xml 或使用此应用程序部署的 jar 文件中解析 [ http://localhost/contextParam/tenantmgr/listTenant]

注意:我的 ListTenant.jsp 有 jstl 代码,如果我删除 jstl 代码,测试工作正常。

请帮助我使它工作。

0 投票
0 回答
188 浏览

java - ServletUnit RequestDispatcher forward() / include() 方法 AbstractMethodError

我正在做一个带有 servlet 的 java web 应用程序,我想编写一些测试来检查它的功能(例如授权表)。我没有使用任何框架,只是在 Eclipse 中使用 tomcat 7.0 裸 java

我在尝试测试授权输入时遇到了错误。该应用程序将检查登录密码对,然后使用 RequestDispatcher.forward() 或 RequestDispatcher.include() 方法进行重定向。但是在执行它们时,它会抛出以下堆栈跟踪错误:

第一个块表示中央控制器 (Dispatcher) servlet 在调用已引发 AbstractMethodError 的方法时捕获的调用错误。第二个和第三个是关于那个错误的。

测试方法的代码如下:

我怎样才能摆脱这个错误?有解决方法吗?我是否应该使用其他一些 servlet 测试方法?另外请不要建议特定于框架的测试工具,例如 strutstest,我想要一个针对裸 Java Web 应用程序的实际解决方案。

更新:作为对@JekinKalariya 的回应——我之前有一个 JasperException。它抱怨文件不在 /WEB-INF 文件夹中,但由于我的项目结构,它们都在 /WebContent/WEB-INF 中。我很沮丧,因为我刚刚复制了整个文件夹。做傻事。我删除了它,现在我回到了那个 JasperException。

更新:现在,我做了一些研究并找到了关于这个问题的一些答案。虽然对我不起作用。我还发现了将目标运行时更改为 J2EE Preview 的建议,这引发了另一种异常:

com.meterware.httpunit.HttpNotFoundException:HTTP 请求错误:404 java.lang.ClassNotFoundException:org.apache.jasper.servlet.JspServlet [ http: //localhost/WEB-INF/jsp/auth.jsp]