Unit testing 在这个代码示例中,不可测试意味着什么?

Unit testing 在这个代码示例中,不可测试意味着什么?,unit-testing,testing,tdd,integration-testing,Unit Testing,Testing,Tdd,Integration Testing,我需要分析一个代码后,发挥一个代码,看看我是否有充分的覆盖面。报告的某些部分如下所示: game->errorCode = ERROR_NO_MEMORY; #pragma RVS justification( "COV_STATEMENTS", "not testable"); } else {

我需要分析一个代码后,发挥一个代码,看看我是否有充分的覆盖面。报告的某些部分如下所示:

    game->errorCode = ERROR_NO_MEMORY;                      
    #pragma RVS justification( "COV_STATEMENTS", "not testable");                       
}                       
else {                      
    /* Initialize platform */       
    game->errorCode = platformInit(game);
    if (game->errorCode == ERROR_NONE) {            
        /* If platform was correctly initialized, start the game */     
        startGame(game);        
    } else {                
        #pragma RVS justification( "COV_MCDC", "1:game->errorCode == ERROR_NONE", "not testable");
        #pragma RVS justification( "COV_DECISIONS", "not testable");                
    }

他们说“不可测试”是什么意思?它是不能涵盖的代码的一部分吗?如果是,原因是什么?

之所以使用“不可测试”一词,是因为,从正确性测试的角度来看,如果无法确定输出是否正确,或者必须花费大量时间来确定,那么执行测试将毫无益处。

在这种特殊情况下,“不可测试”用于告知覆盖率分析工具(RVS)在覆盖率报告中不应考虑某一代码段

从代码的角度来看,我会说这段代码看起来绝对是可测试的——它要求测试能够控制
platformInit
返回的内容(在单元测试或集成测试中测试这段代码是否更有意义是另一个问题)。因此,关于各分支机构“不可测试”的陈述是错误的——但此处的目的不是给出关于可测试性的真实陈述,目的是尽管该分支机构未被各测试涵盖,但不应对覆盖报告中的结果产生负面影响