小编tur*_*ist的帖子

为java编写自定义声纳规则时如何处理assertionError

我正在使用 java 为 java 编写自定义声纳规则。我遇到了一个无法轻易修复的断言错误。我确信源代码是正确的。但测试用例无法通过。我想知道在使用 TDD 流程时我应该关心什么以及如何解决它。

public class logTCheckFile {
    private static Logger logger = Logger.getLogger(logTCheckFile.class);
    public void loggingWithID(String nonsense) throws myException{
        logger.error("errorID:20160801 this is an error");
        return;
    }

    public void loggingWithoutID(String nonsens){
        try{
            logger.error("this is an error");
        }catch(NullPointerException e){
            logger.error("what",e);
        }
        return;
    }

    public void specific(){
        logger.error("only the logger");
        try{
            logger.error("this is an error");
        }catch(NullPointerException e){
            logger.error("without an exception");
        }
        return;
    }
}
Run Code Online (Sandbox Code Playgroud)

我正在测试上面的文件,我编写了一条规则来测试未抛出的异常是否打印在记录器中。

消息是AssertionError: Unexpected at [20](这是失败堆栈跟踪的图片)

我编写的检查文件的代码如下:

public class logTCheck extends  IssuableSubscriptionVisitor {


Logger …
Run Code Online (Sandbox Code Playgroud)

java rules sonarqube

2
推荐指数
1
解决办法
1095
查看次数

标签 统计

java ×1

rules ×1

sonarqube ×1