Java can';在eclipse中找不到作为junit测试运行
我在Eclipse中创建了一个测试类,如下所示Java can';在eclipse中找不到作为junit测试运行,java,eclipse,junit,Java,Eclipse,Junit,我在Eclipse中创建了一个测试类,如下所示 @RunWith(SpringJUnit4ClassRunner.class) @ContextConfiguration(locations = { "classpath:applicationContext.xml" }) @TransactionConfiguration @Transactional public class TeamTest extends AbstractTransactionalJUnit4SpringContextT
@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration(locations = { "classpath:applicationContext.xml" })
@TransactionConfiguration
@Transactional
public class TeamTest extends AbstractTransactionalJUnit4SpringContextTests {
@Test
public void testCreate() {
assert (true);
}}
但是,当我右键单击文件时,我看不到作为JUnit运行的选项
怎么了
我正在使用Eclipse3.6编写一个简单的测试用例,看看Eclipse是否正常工作。如果可以运行简单的测试用例,请检查您的测试用例,尤其是导入类
或者在“运行”->“运行配置”中进行尝试,将“测试类”填写为“
TeamTest
”(完整类名)。然后单击“运行”,看看会发生什么…确保您的eclipse环境正在使用JUnit4。JUnit3没有使用注释(它使用了旧的extenstedtestcase
样式)
有几件事需要仔细检查:
Window>Preferences>Java>JUnit
您看到的是junit4
还是junit3
导入?如果看起来不错,请确保项目本身使用的是JUnit4而不是JUnit3
右键单击项目>属性>Java构建路径>库
那里包括JUnit4吗?有什么与JUnit相关的吗?如果JUnit3在那里,单击它并单击删除。然后单击添加库…
,然后按照此处的提示再次添加JUnit
出于好奇,JUnits是否在eclipse之外运行?与安装mvn
或运行JUnits的Ant的任何构建目标一样确保您使用Junit作为测试框架,而不是像TestNg那样覆盖Junit的大部分用途。我通过将运行配置中的测试运行程序从默认Junit3更改为Junit4来修复它。一旦我做了这个更改,当我右键单击测试类并展开RunAs时,我可以看到Junit选项,我遇到了相同的问题,并验证了所有设置(上面提到的)都是正确的。pom.xml中的一个小改动(从2.5.0-M2版本改为1.5.21.RELEASE)解决了我的问题(见下文)。这是我能够始终如一地重现的
STS详细信息
版本:3.9.0.0发布
构建Id:201707061823
平台:EclipseOxygen(4.7.0)
Pom.xml更改
来自
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
**<version>2.5.0-M2</version>**
<relativePath/> <!-- lookup parent from repository -->
</parent>
4.0.0
org.springframework.boot
spring启动程序父级
**2.5.0-M2**
至
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
**<version>1.5.21.RELEASE</version>**
<relativePath /> <!-- lookup parent from repository -->
</parent>
4.0.0
org.springframework.boot
spring启动程序父级
**1.5.21.发布**
指定了什么导入来加载测试注释?i、 例如,确保它是“import org.junit.Test”@Pace:“extends AbstractTransactionalJUnit4SpringContextTests”足以在Eclipse中进行测试。即使您使用的是junit 4+,如果您的测试“extends testCase”它找不到@Test annotations-删除exdends。除了chaitanyabhatt给出的答案之外-选择junit4作为整个项目的TestRunner-在java构建路径中添加junit4(根据错误@Test annotation给出的建议)