草庐IT

Spring整合JUnit4

全部标签

java - 我能否在启用所有日志记录和禁用所有日志记录的情况下自动执行一次 JUnit 测试用例?

我找到了解决方案,请参阅下面我自己的回答。有没有人有更优雅的?我想这样做是为了增加代码覆盖率并发现细微的错误。假设要测试以下类:publicclassFoo{privatefinalLoggerlogger=LoggerFactory.getLogger(Foo.class);publicvoidbar(){Stringparam=[..];if(logger.isInfoEnabled())logger.info("Amessagewithparameter{}",param);if(logger.isDebugEnabled()){//somecomplicatedpreparat

java - 有没有办法强制 JUnit 在任何未经检查的异常上失败,即使被吞噬了

我正在使用JUnit为没有单元测试的遗留代码编写一些更高级别的测试。大部分代码“吞噬”了各种未经检查的异常,如NullPointerExceptions(例如,仅打印堆栈跟踪并返回null)。因此,即使在较低级别代码的各个点存在级联灾难,单元测试也可以通过。有没有办法让测试在第一个未经检查的异常上失败,即使它们被吞没了?我能想到的唯一替代方法是编写一个自定义JUnit包装器来重定向System.err,然后分析输出中的异常。 最佳答案 如果您在IDE的调试器中执行测试,您可以将IDE配置为在抛出异常时中断。

java - spring-nullpointerexception- 无法访问无注释类中的 Autowiring 注释服务(或 dao)

我遇到了无法解决的问题。从我的@Controller,我可以很容易地访问我的Autowiring的@Service类并毫无问题地使用它。但是当我从一个没有注释的单独类执行此操作时,它会给我一个NullPointerException。我的Controller(工作)-@ControllerpublicclassUserController{@AutowiredUserServiceuserService;...我单独的Java类(不工作)-publicfinalclassUsersManagementUtil{@AutowiredUserServiceuserService;或@Aut

java - JUnit:同时运行测试

我对Java编程和JUnit测试还很陌生。我使用junit-4.5附带的NetBeans6.9.1(但我已将junit-4.8.2添加到我的库中)。我有许多测试类,每个类中都有许多@Test方法。当我运行一个特定的测试类时,它一次运行一个@Test方法。我还使用创建了一个测试套件@RunWith(Suite.class)@Suite.SuiteClasses(value={TestClassA.class,TestClassB.class,TestClassC.class})publicclassNewTestSuite{}它将运行我的每个测试类,并在每次运行每个@Test方法时运行。

java - Rails 类似于 Spring MVC Web 应用程序的 View

我正在计划一个Web应用程序,我目前正在评估框架。我过去用RubyonRails做过很多工作,但由于这个应用程序将依赖大量已经用Java编写的代码,并且将在ApplicationServer基础架构上运行,因此它也将使用Java。到目前为止,我查看了几个框架,而SpringMVC(3.0)看起来最适合我的计划。我喜欢与Rails相比有多少概念是相似的:前端Controller、推送View和restfulURL。但是,我仍然不确定View部分。我希望能够拥有一个(或多个)具有我网站基本结构的应用程序模板,带有Logo、页脚等。该模板将具有一些动态区域,例如导航部分等(在Railsspe

java - 如何将 Spring 组件扫描限制为仅在我的 war 中的文件?

我正在使用Spring的组件扫描在我的应用程序中查找bean。然而,当应用程序部署在我们的暂存服务器(部署了很多应用程序的JBoss5)时,性能比开发(也是JBoss5,但应用程序很少)慢得多。组件扫描耗时较长。我怀疑这是由于更大的类路径造成的?有没有一种简单的方法可以让Spring只在我的war文件中查找bean?即WEB-INF/classes和WEB-INF/lib?或者有其他解决方案吗? 最佳答案 两个提示;尽量使基本包尽可能具体:您可以在基本包属性中提供多个包,以逗号分隔。使用过滤器;检查文档here.-您可以指定要扫描的

java - CXF RESTful Client - 如何在没有 Spring 的情况下进行基本的 http 身份验证?

我熟悉使用Jersey创建RESTfulweb服务服务器和客户端,但由于classloadingissues,我正在尝试将Jersey客户端转换为CXF。我相信我想使用以HTTP为中心的客户端,但我们不使用Spring。我们需要使用基本的HTTP身份验证。userguide有这个例子:WebClientclient=WebClient.create("http:books","username","password","classpath:/config/https.xml");第一个参数不是URI字符串。它是Spring使用的格式吗?这种方法只能用于使用Spring创建WebClie

java - Spring Bean Autowiring 错误

我正在尝试在我的应用程序中实现电子邮件功能,但我不断收到Nomatchingbeanoftype[org.springframework.mail.javamail.JavaMailSenderImpl]foundfordependency:expectedatleast1beanwhichqualifiesasautowirecandidateforthisdependency.谁能指出我做错了什么?bean的xml配置是://...otherstuffEmailServiceImpl类:@ServicepublicclassEmailServiceImplimplementsEma

java - Spring MVC :How to get file path into Controller?

我有以下文件夹结构:ProjectFolder/images/someimages在同一个文件夹中ProjectFolder/WEB-INF/classes/com/xyz/hereisjavafileofcontroller.如何获取Controller中的图片路径?请帮忙。谢谢:) 最佳答案 如果它的网络上下文可能是这样的东西可能会有所帮助InputStreamis=null;is=request.getSession().getServletContext().getResourceAsStream("/images/some

java - 为什么这个 Spring AOP 切入点没有被触发?

我正在编写非常基本的基于模式的SpringAOP,这是.xmltao.zhang.Listener中的方法scream()只是打印一些文本,应该在调用方法callme()时执行。我有一个名为logger的bean,它有方法log()和callme()publicvoidlog(){callme();System.out.println("Hellofromlogger~~~~~~~~~~~~~~~~~~~");}publicvoidcallme(){System.out.println("I'mcalled");}注意callme()是由log()调用的现在我有一个每5秒调用一次log