Наши тесты NUNIT взаимодействуют с базой данных, работающей в отдельном контейнере Docker. Каждый тестовый класс следует за этой настройкой: < /p>
Новый экземпляр DBContext со свежей транзакцией создается в методе
< /strong> . < /li>
Транзакция переворачивается обратно в методе Teardown < /strong>
для сброса состояния базы данных. < /li>
Тесты Выполнить последовательно, чтобы убедиться, что
изоляция данных.
При выполнении индивидуально они проходят последовательно.
Когда выполняется вместе, они сбои спорадически и непредсказуемо с ошибками, такими как: < /p>
Наши тесты NUNIT взаимодействуют с базой данных, работающей в отдельном контейнере Docker. Каждый тестовый класс следует за этой настройкой: < /p> [list] [*] Новый экземпляр DBContext со свежей транзакцией создается в методе < /strong> . < /li> Транзакция переворачивается обратно в методе Teardown < /strong> для сброса состояния базы данных. < /li> Тесты Выполнить последовательно, чтобы убедиться, что изоляция данных.
При выполнении индивидуально они проходят последовательно. Когда выполняется вместе, они сбои спорадически и непредсказуемо с ошибками, такими как: < /p>
[code]Microsoft.EntityFrameworkCore.DbUpdateConcurrencyException: "The database operation was expected to affect 1 row(s), but actually affected 0 row(s)."[/code] [*][code]System.InvalidOperationException: "Sequence contains no elements."[/code] [*][code]NotFoundException: "Could not find Entity with ID."[/code] [/list] Проблема возникает только на macOS, но надежно работает на Linux.