问题标签 [spring-junit]
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.
unit-testing - SpringJUnit4ClassRunner - 为每个测试重新加载上下文,即使使用了相同的上下文
这是我们单元测试的基类:
所有单元测试都扩展了这个类。
当我在 Eclipse 中本地运行测试时(使用 Run As > Unit Test),测试运行大约 5 秒,因为所有测试共享相同的上下文并且它只加载一次。
但是,当我使用 mvn 测试目标运行它们时,大约需要 5 分钟。查看日志后,我看到每次测试都在加载应用程序上下文。我们在 Jenkins CI 服务器上运行它需要同样的时间(5 分钟)。
不知道发生了什么。在 spring 文档中,它声明即使使用 maven 也应该重用 appContext,但这里不是这种情况。
任何帮助,将不胜感激。
更新: 我在打开调试标志的情况下运行 mvn,我看到每个测试都生成了一个新的 JVM:
分叉命令行: cmd.exe /X /C "java -Xverify:none -jar S:\git\picaxo21\picaxo\picaxoService\target\surefire\surefirebooter8169952914558366417.jar S:\git\picaxo21\picaxo\picaxoService\target\ surefire\surefire8550033206398936560tmp S:\git\picaxo21\picaxo\picaxoService\target\surefire\surefire_05655453605766528120tmp"
分叉命令行: cmd.exe /X /C "java -Xverify:none -jar S:\git\picaxo21\picaxo\picaxoService\target\surefire\surefirebooter4002024477779069323.jar S:\git\picaxo21\picaxo\picaxoService\target\ surefire\surefire6735432532690834115tmp S:\git\picaxo21\picaxo\picaxoService\target\surefire\surefire_17783676008756503456tmp"
分叉命令行: cmd.exe /X /C "java -Xverify:none -jar S:\git\picaxo21\picaxo\picaxoService\target\surefire\ 7874269889863176184.jar S:\git\picaxo21\picaxo\picaxoService\target\ surefire\surefire2050758518148174678tmp S:\git\picaxo21\picaxo\picaxoService\target\surefire\surefire_27591156970671336255tmp"
我正在使用 forkCount=1 和 reuseForks=true 所以我不确定为什么会这样。任何线索?
父 POM:
hsqldb - Junit HSQLDB - 用户缺少权限或找不到对象 - THIS_.oh-ordnbr
当我的列名包含连字符“-”时出现异常
模式定义:这是用于创建模式的查询。
错误如下:
有人可以帮我解决这个问题吗?
java - 带有会话对象的 Spring Junit - 在控制器中不可见
简单测试类具有以下内容:
..
Controller 类具有以下内容:
问题:为什么会话没有 FOO?什么不见了?..
java - 如何模拟 getNamedParameterJdbcTemplate()
我正在尝试模拟扩展 NamedParameterJdbcDaoSupport 的 DAO 实现类
这是我的 DAO 界面的样子:
这就是我的实现类的方式:
我想要实现的是编写一个模拟测试用例来模拟调用的行为
所以我想实现类似的东西
我找不到这方面的任何信息。有人可以指导我。这个怎么做?
java - 使用 Spring-Junit4 未在 HsqlDb 中运行本机查询
我的 DAO 中有一个查询 Oracle 数据库的方法,它在应用程序中运行良好。但是对于测试,我们使用 Hsqldb 并使用 Spring-junit 进行测试。相同的方法在测试期间返回错误,因为据我所知 HSQL 不支持子查询,所以我得到:
引起:org.hsqldb.HsqlException:意外令牌:需要启动:)
你能帮我谈谈在这种情况下如何进行吗?是否可以使用 Spring 模拟此方法以不真正进行调用,但通过配置给我一些预定义的结果?
任何建议都将非常受欢迎!
这是方法:
java - windows环境下删除文件失败
我在windows环境下工作。
在我的tearDown()
方法中,deleteSucceeded
返回 false。
文件永远不会被删除,尽管它位于所需的位置。
奇怪的是:
在 unix 环境中,相同的代码运行良好。
见下课:
更新:
我分析了这个错误,发现问题出在其他地方。
当我在调试模式下运行测试时,控件转到以下代码块:
这发生在调用delete()
方法之后。
笔记:
我的文件没有在其他任何地方打开,因此delete()
调用不会像在 Windows 环境中那样删除它。
错误日志:
java - Spring jUnit 测试属性文件
我有一个 jUnit 测试,它有自己的属性文件(application-test.properties)和它的 spring 配置文件(application-core-test.xml)。
其中一种方法使用由 spring config 实例化的对象,即 spring 组件。类中的成员之一从我们的主要属性文件 application.properties 派生其值。通过 jUnit 访问此值时,它始终为空。我什至尝试将属性文件更改为指向实际的属性文件,但这似乎不起作用。
这是我访问属性文件对象的方式
java - 如何使用 AssertJ 检查一个属性值计数的对象列表?
就像我添加了 200 个对象作为 true 即 isChanges 值,剩下的都是 false 出 1000 个;它会变成 300 赞。
那么如何使用assertJ检查wheather列表是否包含200个对象isChange值是否为真
spring - 使用 Spring JPA 进行单元测试 - @Autowired 不起作用
我有一个单元测试和一个助手类。不幸的是,Helper 类的自动装配不起作用。它在 MyTest 类中运行良好。
我想避免使用 setter,因为我有 10 个这样的对象,并且不同的测试有不同的对象。那么让@Autowired 在 Helper 类中工作需要什么?谢谢!
java - Java Spring MVC - java.lang.NoClassDefFoundError: javax/servlet/ServletContext
我正在尝试为我的 Java Spring 应用程序编写一些 JUnit 测试,但我不断收到此错误java.lang.NoClassDefFoundError: javax/servlet/ServletContext
。
测试类:
pom.xml:
AppConfig.java
异常跟踪:
这是我第一次编写 JUnit 测试,所以我不知道你们是否需要额外的信息。如果是这样,我很乐意提供他们:)