使用StrutsSpringTestCase测试框架报错

简介:

使用StrutsSpringTestCase 测试框架报错:

Xml代码   收藏代码
  1. org.springframework.beans.factory.BeanDefinitionStoreException: IOException parsing XML document from class path resource [struts.xml]; nested exception is java.net.ConnectException: Connection timed out: connect  
  2.     at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.doLoadBeanDefinitions(XmlBeanDefinitionReader.java:408)  
  3.     at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBeanDefinitions(XmlBeanDefinitionReader.java:334)  
  4.     at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBeanDefinitions(XmlBeanDefinitionReader.java:302)  
  5.     at org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:174)  
  6.     at org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:209)  
  7.     at org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:180)  
  8.     at org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:243)  
  9.     at org.springframework.test.context.support.AbstractGenericContextLoader.loadContext(AbstractGenericContextLoader.java:81)  
  10.     at org.apache.struts2.StrutsSpringTestCase.setupBeforeInitDispatcher(StrutsSpringTestCase.java:39)  
  11.     at org.apache.struts2.StrutsTestCase.setUp(StrutsTestCase.java:208)  
  12.     at junit.framework.TestCase.runBare(TestCase.java:139)  
  13.     at junit.framework.TestResult$1.protect(TestResult.java:122)  
  14.     at junit.framework.TestResult.runProtected(TestResult.java:142)  
  15.     at junit.framework.TestResult.run(TestResult.java:125)  
  16.     at junit.framework.TestCase.run(TestCase.java:129)  
  17.     at junit.framework.TestSuite.runTest(TestSuite.java:255)  
  18.     at junit.framework.TestSuite.run(TestSuite.java:250)  
  19.     at org.junit.internal.runners.JUnit38ClassRunner.run(JUnit38ClassRunner.java:84)  
  20.     at org.eclipse.jdt.internal.junit4.runner.JUnit4TestReference.run(JUnit4TestReference.java:50)  
  21.     at org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38)  
  22.     at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:467)  
  23.     at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:683)  
  24.     at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:390)  
  25.     at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:197)  
  26. Caused by: java.net.ConnectException: Connection timed out: connect  

 依赖:

Xml代码   收藏代码
  1. <dependency>  
  2.             <groupId>org.apache.struts</groupId>  
  3.             <artifactId>struts2-spring-plugin</artifactId>  
  4.             <version>2.3.1</version>  
  5.         </dependency>  
  6.   
  7. <!-- Struts JUnit Plugin -->  
  8.         <dependency>  
  9.             <groupId>org.apache.struts</groupId>  
  10.             <artifactId>struts2-junit-plugin</artifactId>  
  11.             <version>2.3.15.3</version>  
  12.         </dependency>  

 测试类:

Xml代码   收藏代码
  1. package com.jn.test;  
  2. import org.apache.struts2.StrutsSpringTestCase;  
  3. import org.junit.Test;  
  4. import org.springframework.mock.web.MockHttpServletRequest;  
  5. import org.springframework.mock.web.MockHttpSession;  
  6. import org.springframework.web.context.request.RequestContextHolder;  
  7. import org.springframework.web.context.request.ServletRequestAttributes;  
  8.   
  9. import com.opensymphony.xwork2.ActionProxy;  
  10. import com.shop.jn.action.user.UserLoginAction;  
  11. public class StrutsTest  extends StrutsSpringTestCase{  
  12.       
  13.   
  14.     private ActionProxy proxy = null;  
  15.     private UserLoginAction loginAction = null;  
  16.   
  17.     @Override  
  18.     protected String[] getContextLocations() {  
  19.         return new String[] {"struts.xml", "aop.xml","beans.xml","goods_beans.xml","supermarket_beans.xml","upload_beans.xml","user_beans.xml"};  
  20.     }  
  21.   
  22.     /**  
  23.      * Spring与Struts集成的情况 Test method for  
  24.      * {@link com.springstrutsdemo.action.LoginAction#execute()}.  
  25.      *   
  26.      * @throws Exception  
  27.      */  
  28.     @Test  
  29.     public void testExecute() throws Exception {  
  30. //      request.setParameter("user.name", "age");  
  31. //      request.setParameter("user.age", "12");  
  32. //      request.setParameter("user.address", "北京市海淀区首钢国际大厦");  
  33. //      request.setParameter("user.telephone", "10010");  
  34.         MockHttpServletRequest request = new MockHttpServletRequest();  
  35.         MockHttpSession session = new MockHttpSession();  
  36.         request.setSession(session);  
  37.         RequestContextHolder.setRequestAttributes(new ServletRequestAttributes(request));  
  38.           
  39.           
  40.         request.setParameter("user.username", "aa");  
  41.         proxy = getActionProxy("/user/login");  
  42.         loginAction = (UserLoginAction) proxy.getAction();  
  43.   
  44.         String result = proxy.execute();  
  45. //      String result=executeAction("/user/login")  
  46.         assertEquals("success", result);  
  47.         System.out.println("in test:user=" + loginAction.getUser());  
  48.     }  
  49.   
  50. }  

根据错误信息,是在读取struts.xml时报错.

解决方法:修改struts.xml为:

Java代码   收藏代码
  1. <?xml version="1.0" encoding="UTF-8" ?>  
  2. <!DOCTYPE struts PUBLIC  
  3.         "-//Apache Software Foundation//DTD Struts Configuration 2.3//EN"  
  4.         "./com/struts-2.3.dtd">  
相关文章
|
23天前
|
数据可视化 数据管理 测试技术
聊聊自动化测试框架
关于自动化测试框架的一些理解和思考总结,就是上面这些内容,提到的一些框架组件可能存在不合理的地方,仅供参考,如有更好的建议,请指出,不胜感激
25 4
聊聊自动化测试框架
|
3天前
|
Web App开发 敏捷开发 数据管理
自动化测试框架的设计与实现
【9月更文挑战第32天】在软件开发的海洋中,自动化测试如同一艘精确导航的船只,确保我们的应用程序能够在波涛汹涌的技术潮流中稳健航行。本文将带你领略自动化测试框架的设计之美,从搭建基础到功能扩展,再到维护实践,我们将一起探索如何打造一个既高效又灵活的自动化测试体系。
|
19天前
|
敏捷开发 IDE 测试技术
自动化测试框架的选择与应用
【9月更文挑战第16天】在软件开发周期中,测试环节扮演着至关重要的角色。随着敏捷开发和持续集成的流行,自动化测试成为提升软件质量和效率的关键手段。本文将探讨如何根据项目需求选择合适的自动化测试框架,并通过实际案例分析展示其在软件开发过程中的应用。我们将从单元测试、集成测试到端到端测试等多个层面,讨论自动化测试的最佳实践和常见问题解决策略。
|
9天前
|
敏捷开发 Java 测试技术
自动化测试框架的选择与应用
【9月更文挑战第26天】在软件开发的海洋里,自动化测试是那一盏指路明灯。它不仅加快了开发周期,还提升了软件质量。本文将带你探索自动化测试框架的世界,了解它们的核心特性、适用场景及如何根据项目需求做出明智选择。让我们一起启航,找到那把打开高效、稳定软件生产大门的钥匙。
|
9天前
|
敏捷开发 数据管理 测试技术
自动化测试框架的设计与实现
【9月更文挑战第25天】 本文将引导读者深入理解自动化测试框架的核心概念,并展示如何从零开始构建一个简单且有效的自动化测试框架。通过通俗易懂的语言和实际代码示例,我们将探讨测试框架设计的关键步骤、实现方法以及常见问题的解决方案。无论你是初学者还是有经验的开发者,这篇文章都将为你提供宝贵的知识和启示。
|
11天前
|
设计模式 SQL 安全
PHP中的设计模式:单例模式的深入探索与实践在PHP的编程实践中,设计模式是解决常见软件设计问题的最佳实践。单例模式作为设计模式中的一种,确保一个类只有一个实例,并提供全局访问点,广泛应用于配置管理、日志记录和测试框架等场景。本文将深入探讨单例模式的原理、实现方式及其在PHP中的应用,帮助开发者更好地理解和运用这一设计模式。
在PHP开发中,单例模式通过确保类仅有一个实例并提供一个全局访问点,有效管理和访问共享资源。本文详细介绍了单例模式的概念、PHP实现方式及应用场景,并通过具体代码示例展示如何在PHP中实现单例模式以及如何在实际项目中正确使用它来优化代码结构和性能。
|
1月前
|
存储 Java 关系型数据库
“代码界的魔法师:揭秘Micronaut框架下如何用测试驱动开发将简单图书管理系统变成性能怪兽!
【9月更文挑战第6天】Micronaut框架凭借其轻量级和高性能特性,在Java应用开发中备受青睐。本文通过一个图书管理系统的案例,介绍了在Micronaut下从单元测试到集成测试的全流程。首先,我们使用`@MicronautTest`注解编写了一个简单的`BookService`单元测试,验证添加图书功能;接着,通过集成测试验证了`BookService`与数据库的交互。整个过程展示了Micronaut强大的依赖注入和测试支持,使测试编写变得更加高效和简单。
51 4
|
1月前
|
IDE 测试技术 持续交付
Python自动化测试与单元测试框架:提升代码质量与效率
【9月更文挑战第3天】随着软件行业的迅速发展,代码质量和开发效率变得至关重要。本文探讨了Python在自动化及单元测试中的应用,介绍了Selenium、Appium、pytest等自动化测试框架,以及Python标准库中的unittest单元测试框架。通过详细阐述各框架的特点与使用方法,本文旨在帮助开发者掌握编写高效测试用例的技巧,提升代码质量与开发效率。同时,文章还提出了制定测试计划、持续集成与测试等实践建议,助力项目成功。
54 5
|
9天前
|
设计模式 测试技术 持续交付
自动化测试框架的设计与实现
【9月更文挑战第25天】本文旨在探讨如何设计并实现一个高效、可扩展的自动化测试框架,以提升软件测试的效率和质量。通过分析当前流行的测试框架特点,结合最佳实践,提出一套完整的解决方案。文章不仅涵盖框架设计的理论依据,还包括具体实现步骤和示例,帮助读者深入理解自动化测试框架的搭建过程。
|
1月前
|
测试技术 C# 图形学
掌握Unity调试与测试的终极指南:从内置调试工具到自动化测试框架,全方位保障游戏品质不踩坑,打造流畅游戏体验的必备技能大揭秘!
【9月更文挑战第1天】在开发游戏时,Unity 引擎让创意变为现实。但软件开发中难免遇到 Bug,若不解决,将严重影响用户体验。调试与测试成为确保游戏质量的最后一道防线。本文介绍如何利用 Unity 的调试工具高效排查问题,并通过 Profiler 分析性能瓶颈。此外,Unity Test Framework 支持自动化测试,提高开发效率。结合单元测试与集成测试,确保游戏逻辑正确无误。对于在线游戏,还需进行压力测试以验证服务器稳定性。总之,调试与测试贯穿游戏开发全流程,确保最终作品既好玩又稳定。
47 4
下一篇
无影云桌面