请在下面的代码中详细说明 assertArrayHasKey() 和 assertEquals() 之间的区别

Please elaborate difference between assertArrayHasKey() and assertEquals() in the below code

我正在阅读单元测试,它包含这两个函数 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!"
    );

assertArrayHasKey 断言数组是否具有您输入的键值。该值是否存在?

assertEquales 断言值是否与您期望的值相同。值是否正确?

所以他们都测试了别的东西。第一个测试该值是否存在,第二个测试该值是否与您期望的值相同。