我在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
答案 0 :(得分:32)
确保你的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。
出于好奇,JUnits是否在日食之外运行?就像使用mvn install
或任何构建目标一样,Ant将运行JUnits
答案 1 :(得分:4)
编写一个简单的测试用例,看看Eclipse是否正常工作。如果可以运行简单的测试用例,请检查您的测试用例,尤其是导入类。
或试试“跑步” - > “运行配置”,将“测试类”填入“TeamTest
”(完整的类名)。然后点击“运行”,看看会发生什么......
答案 2 :(得分:2)
答案 3 :(得分:0)
我遇到了同样的问题并验证了所有设置(上述)都很好。 pom.xml 中的一个小改动(从 2.5.0-M2 到 1.5.21.RELEASE)解决了我的问题(如下)。这我能够始终如一地重新创建。
STS 详细信息 版本:3.9.0.RELEASE 内部版本号: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>
答案 4 :(得分:-1)
确保使用Junit作为测试框架,而不是像TestNg那样涵盖Junits目的的大部分内容。