C# UnitTest - Утверждает. AreEqual () не звонит, Равняется, если аргумент является нулевым

Я отправляю ответ здесь именно так, любой сталкивается с той же проблемой. То, что происходит с серверами AWS, - то, что, Они отчасти повторно развертывают Ваши коды пару раз день, и это очищает все недавно созданные файлы и загруженные файлы в Вашем проекте. Вот почему необходимо использовать облачное хранилище, если Вы хотите хранить файлы, и то же самое происходит с сессиями. По умолчанию laravel сохраняет сессии в файле и каждый раз, когда AWS повторно развертывают Ваш код, он вытирает всю текущую сессию, потому что он удаляет файл сессии. Решением является хранилище сессии где угодно, но файл. Таким образом, я использовал свою базу данных для хранения сессий и кэша. Можно сделать это

Движение к config/session.php и изменение драйвера к база данных

, После того, как выполнено

, php ремесленный ремесленник session:table

php мигрирует

, Они составят таблицу сессий в базе данных для Вас, и это должно решить проблему AWS. Точно так же, как @arun-a сказано короче говоря. Вы можете контроль эти документы сессий для большего количества информации

5
задан mafu 20 January 2009 в 07:36
поделиться

5 ответов

Ваш TestClass нарушает контракт Object.Equals. Assert.AreEqual полагается на тот контракт, вполне обоснованно.

Состояние документов (в списке требований):

  • x. Равняется (нулевая ссылка (Ничто в Visual Basic)) возвращает false.
15
ответ дан 18 December 2019 в 07:11
поделиться

При тестировании на пустые указатели не использовать Assert.AreEqual.

Необходимо использовать Assert.IsNull() для этого.

5
ответ дан 18 December 2019 в 07:11
поделиться

Первые тестовые сбои. Тест, если "t" является пустым, который не является, потому что Вы инициализировали t с новым объектом TestClass.

Второй тест, передачи, потому что t. Равняется всегда возвращает true.

Если один тест перестал работать, целый TestMethod1 отмечен, как отказавший.

1
ответ дан 18 December 2019 в 07:11
поделиться

Нет, это корректно - Вы инициализировали t к новому объекту TestClass, который не является несуществующим, таким образом, утверждение перестало работать.

1
ответ дан 18 December 2019 в 07:11
поделиться

Если я разбираюсь в Вас, это на самом деле предназначается это AreEqual(anythingButNull, null) всегда возвращайте false?

(редактирование), которым состоит в том причина, я задался вопросом, потому что тест для пустого указателя, как требуется согласно контракту Равняется, не называют когда unittesting класс. Таким образом, потому что AreEqual полагается на контракт, ему не удается проверить, выполняет ли мой класс также контракт. Таким образом, я предполагаю, что должен использовать обходное решение Assert.IsFalse(blah.Equals(null)).

0
ответ дан 18 December 2019 в 07:11
поделиться
Другие вопросы по тегам:

Похожие вопросы: