有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java IDEA结构化搜索方法末尾的匹配代码

我试图找到这样的方法:

@Test
public void testStuff()
{
    doStuff();
    doOtherStuff();

    mockery.assertIsSatisfied();
}

目标是删除mockery.assertIsSatisfied()。我不能只删除它的所有调用,因为有时它在一个方法的中间或在循环的末尾,在那里似乎是合理的。当然,我们正在使用JUnit @Rule来自动调用它,因此在每次测试结束时使用它是多余的

我认为这将是正确的模板:

@Test
public void $testMethod$() throws Exception
{
    $Statements$;    // configured this as 1..many
    mockery.assertIsSatisfied();
}

这与400多种方法中的两种方法相匹配。随机选取该方法的其他一些用法,我发现其他用法也应该与该模式匹配。(我不知道匹配的块之间有什么共同点。它们都是try块,但一些不匹配的块也是。)

那么正确的方法是什么呢

Edit:我刚刚注意到我在这个上面硬编码了一个throws Exception,所以我在没有它的情况下重新执行了搜索,结果为0。以防有人怀疑


共 (1) 个答案

  1. # 1 楼答案

    (目前)不可能使用裸方法作为模式。要搜索一个方法,您需要用如下类将其包围:

    class $Class$ {
        @Test
        public void $testMethod$() // 1..unlimited
        {
            $Statements$;    // 1..unlimited
            mockery.assertIsSatisfied();
        }
    }
    

    确保该方法也配置了1。。无限,或者每个类只能找到一个方法