2017-01-13 3 views
-1

아래 코드에서 assertArrayHasKey()와 assertEquals()의 차이를 자세히 설명하며이 두 가지 기능을 assertArrayHasKey()와 assertEquals()내가 단위 테스트 읽고 있던

앉아서 그들 사이의 차이를 설명해주십시오을 포함하십시오 아래 코드의 맥락에서.

// Test all basic required params were set 
    $options = $getReportInstance->getOptions(); 
    $this->assertArrayHasKey('AWSAccessKeyId', $options, "Option AWSAccessKeyId doesn't exit"); 
    $this->assertEquals(self::APP_ACCESS_KEY, $options['AWSAccessKeyId'], "AWSAccessKeyId was not set correctly!"); 
    $this->assertArrayHasKey('SignatureMethod', $options, "Option SignatureMethod doesn't exist"); 
    $this->assertEquals(
     self::SIGNATURE_METHOD, 
     $options['SignatureMethod'], 
     "SignatureMethod was not set correctly!" 
    ); 
+0

가 될 수이 당신에게 도움이 http://stackoverflow.com/questions/10254180/difference-between-assertequals-and-assertsame-in-phpunit –

+0

실제로 내가 assertArrayHasKey, AssertEquals & AssertSame하지만 난 사이의 차이를 알고 그것을 알아낼 수 없었습니다. 왜 이런 코드가 쓰여졌습니까? 어쨌든 도움을 주셔서 감사합니다. –

+0

@SulemanAkram 어쩌면 여러분은 *이 코드를 작성한 사람에게 물어 봐야할까요? –

답변

0

배열에 입력 한 키 값이있는 경우 assertArrayHasKey가 어설 션됩니다. 값이 있습니까?

값이 예상 한 값과 같으면 assertEquales가 어설 션합니다. 가치가 맞습니까?

그래서 그들은 둘 다 다른 것을 테스트합니다. 첫 번째 테스트는 값이 있으면 테스트하고 두 번째 테스트는 값이 예상 한 것과 같은지 테스트합니다.

+0

Gotcha !!!! 감사 :) –