Java 作为JUnit运行,不出现在Eclipse中-使用JUnit4

Java 作为JUnit运行,不出现在Eclipse中-使用JUnit4,java,eclipse,unit-testing,junit,junit4,Java,Eclipse,Unit Testing,Junit,Junit4,我正在尝试为我的web应用程序编写JUnit4测试,它们以前工作得很好。但是,现在当我右键单击类文件->运行方式->JUnit测试来运行测试时,我看不到该选项。我想这可能是因为一位同事在事故中提交了一些Eclipse设置/属性文件,而我的这些设置/属性文件被破坏了。我正在运行10.6.X的Mac上使用EclipseHelios 我注意到测试类上的图标从“填充”J变为“气泡”J,我不确定这是否意味着某种问题: 我已经仔细检查并确保JUnit4在我的构建路径上,并且我已经转到Eclipse->Pr

我正在尝试为我的web应用程序编写JUnit4测试,它们以前工作得很好。但是,现在当我右键单击类文件->运行方式->JUnit测试来运行测试时,我看不到该选项。我想这可能是因为一位同事在事故中提交了一些Eclipse设置/属性文件,而我的这些设置/属性文件被破坏了。我正在运行10.6.X的Mac上使用EclipseHelios

我注意到测试类上的图标从“填充”J变为“气泡”J,我不确定这是否意味着某种问题:

我已经仔细检查并确保JUnit4在我的构建路径上,并且我已经转到Eclipse->Preferences->JUnit窗格并验证是否使用了JUnit4导入

我的测试类如下所示:

@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration( { "classpath*:/resources/action-test-appconfig.xml" })
@Transactional
public class UserControllerTest extends BaseStrutsTestCase<UserController> {

    /**
     * Tests the ability of a user to change their login username
     * @throws Exception
     */
    @Test
    public void testChangeLogin() throws Exception {
@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration({“classpath*:/resources/action test appconfig.xml})
@交易的
公共类UserControllerTest扩展了BaseStrutsTestCase{
/**
*测试用户更改其登录用户名的能力
*@抛出异常
*/
@试验
public void testChangeLogin()引发异常{

感谢您的任何想法和建议。

这种J图标填充到“气泡”中意味着Eclipse不会将您的项目识别为Java项目,因此不会提供Java选项,例如作为JUnit运行


尝试将该项目作为Java项目重新导入。

问题在于您在eclipse中尝试访问和运行Java文件的方式。您应该在Java文件上看到这个空的“J”图标。这是一个类路径问题,当您单击时,实际上是从类路径访问文件

要查看Java文件,必须在类路径中添加对项目的引用,并将其移动到类路径列表的顶部


一旦您这样做了,您就应该能够运行JUnit了。

我也遇到了同样的问题,我重新启动了eclipse,并恢复了“作为JUnit测试运行”。
看起来像eclipse中的bug。

尝试在测试用例所在项目的pom.xml中添加以下依赖项:

    <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>org.springframework.test</artifactId>
        <version>3.1.1.RELEASE</version>
        <scope>test</scope>
    </dependency>

org.springframework
org.springframework.test
3.1.1.1发布
测试

对不起,我不太熟悉这样做。我应该去哪里在类路径中添加引用?@rawkfist0215好的,我会给你另一种方法,这样做:ctrl+shift+r并键入测试类的名称。如果你看到包含多个条目的列表,请尝试其他条目打开正确的java文件。正确的java文件将有一个完整的名称J图标而不是一个空图标。让我知道这个技巧是否适用于u。如果我按住ctrl+shift+r并搜索他们用填充的J图标找到的类。虽然每个类只有一个条目。用搜索打开它们似乎使RunAs->JUnit选项可用,但当我单击该选项时,它会显示“未找到JUnit测试”而空的J图标仍然存在于包资源管理器中。我通过将包含测试类的文件夹添加为构建路径中的源文件夹来解决此问题。我想这可能就是您将其添加为类路径上的引用的意思?@rawkfist0215是的,很抱歉造成混淆。如果我的回答对您有所帮助,请通过单击我答案左边的勾号来接受它。这种做法基本上可以帮助其他面临相同问题的人。我尝试从我的系统中删除该项目,从存储库中重新检查它,然后将其作为现有项目重新导入,但不幸的是,这不起作用。但Java项目究竟是什么?首先,当您你是说它不起作用,你是说你不能导入它,或者Eclipse还不能识别为Java项目?