繁体   English   中英

在 Eclipse 中找不到作为 junit 测试运行

[英]can't find run as junit test in eclipse

我在 Eclipse 中创建了一个这样的测试类

@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration(locations = { "classpath:applicationContext.xml" })
@TransactionConfiguration
@Transactional
public class TeamTest extends AbstractTransactionalJUnit4SpringContextTests {

 @Test
 public void testCreate() {


  assert (true);
 }}

但是,当我单击右键单击该文件时,我没有看到作为 JUnit 运行的选项!

怎么了?

我正在使用 Eclipse 3.6

确保您的 Eclipse 环境使用 JUnit 4。JUnit 3 不使用注释(它使用旧的extends TestCase样式)

有几件事需要仔细检查:

Window > Preferences > Java > JUnit

你看到的是junit4还是junit3进口? 如果看起来不错,请确保项目本身使用的是 JUnit4 而不是 JUnit3。

Right Click on project > Properties > Java Build Path > Libraries

是否包含 JUnit4? 有什么与 JUnit 相关的吗? 如果 JUnit3 在那里,单击它并单击Remove 然后单击Add Library...并按照那里的提示再次添加 JUnit。

出于好奇,JUnit 是否在 eclipse 之外运行? 就像使用mvn install或您为 Ant 运行 JUnits 的任何构建目标一样

编写一个简单的测试用例来查看 Eclipse 是否正常工作。 如果可以运行简单的测试用例,请检查您的测试用例,尤其是导入类。

或者尝试在“运行”->“运行配置”中,将“测试类”填入“ TeamTest ”(类全名)。 然后点击“运行”,看看会发生什么......

我修复它的方法是将运行配置中的测试运行程序从默认的 Junit3 更改为 Junit4。 进行此更改后,当我右键单击测试类并展开 Run As 时,我可以看到选项 Junit 在此处输入图片说明

我遇到了同样的问题并验证了所有设置(上面提到的)都很好。 pom.xml 中的一个小改动(从 2.5.0-M2 到 1.5.21.RELEASE)解决了我的问题(如下)。 这我能够始终如一地重新创建。

STS 详细信息版本:3.9.0.RELEASE Build Id:201707061823 平台:Eclipse Oxygen (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>

<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>

确保你使用 Junit 作为你的测试框架,而不是像 TestNg 这样涵盖大部分 Junit 目的的东西。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM