Я читал модульный тест, и он содержит эти две функции
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 утверждает, что значение совпадает с ожидаемым. Является ли значение правильным?
Так что они оба проверяют что-то еще. Первый проверяет, есть ли значение, а второй проверяет, совпадает ли значение с ожидаемым.
Других решений пока нет …