Как стать автором
Обновить
18
-1
Кулик Александр @alexs0ff

Разработчик

Отправить сообщение

Компонентные тесты на .NET 7

Уровень сложностиСредний
Время на прочтение12 мин
Количество просмотров4.5K

Всем привет! Меня зовут Александр Кулик, я .NET-разработчик из команды checkout в Тинькофф. Занимаюсь бэкенд-разработкой по интеграции платежных решений, внешних сервисов и созданию собственных разработок для B2B-сферы.

Компонентные тесты занимают нишу между E2E-тестами и интеграционным тестированием, но не следует замещать ими какой-либо из этих тестов. Они вполне самостоятельный паттерн тестирования, который можно комбинировать и с другими подходами.

В статье расскажу, как технически добиться реализации такого паттерна в среде .NET седьмой версии. Опишу основные проблемы на пути к созданию компонентных тестов и способы их решения стандартными инструментами Microsoft. 

Читать далее
Всего голосов 6: ↑6 и ↓0+6
Комментарии10

Использование Identity Server 4 в Net Core 3.0

Время на прочтение26 мин
Количество просмотров79K

Введение


На одном из моих поддерживаемых проектов недавно встала задача проанализировать возможность миграции с .NET фреймворка 4.5 на .Net Core по случаю необходимости рефакторинга и разгребания большого количества накопившегося технического долга. Выбор пал на целевую платформу .NET Core 3.0, так как, судя по утверждению разработчиков от Microsoft, с появлением релиза версии 3.0, необходимые шаги при миграции legacy кода уменьшатся в несколько раз. Особенно нас в нем привлекли планы выхода EntityFramework 6.3 для .Net Core т.е. большую часть кода, основанную на EF 6.2, можно будет оставить «как есть» в мигрированном проекте на net core.


С уровнем данных, вроде, стало понятно, однако, еще одной большой частью по переносу кода остался уровень безопасности, который, к сожалению, после беглых выводов аудита придется почти полностью выкинуть и переписать с нуля. Благо, на проекте уже использовалась часть ASP NET Identity, в виде хранения пользователей и других приделанных сбоку «велосипедов».


Тут возникает логичный вопрос: если в security часть придется вносить много изменений, почему бы сразу же не внедрить подходы, рекомендуемые в виде промышленных стандартов, а именно: подвести приложение под использование Open Id connect и OAuth посредством фреймворка IdentityServer4.

Читать дальше →
Всего голосов 21: ↑20 и ↓1+19
Комментарии5

Хранение данных в облаке Windows Azure

Время на прочтение18 мин
Количество просмотров3.7K

Введение



Среди множества вариантов хранения данных, несомненно, можно выделить новую и интересную для изучения технологию хранения информации в облаке. На данный момент существует несколько сервисов по предоставлению услуг подобного вида, их можно сосчитать на пальцах – это Amazon Web Services, Sun Cloud, Windows Azure. Каждый из этих сервисов предоставляет свои интерфейсы для доступа к данным, в этой статье я бы хотел остановиться на сервисе Windows Azure.
Даная платформа облачных вычислений предоставляет 3 вида сервисов хранения информации:
Читать дальше →
Всего голосов 8: ↑4 и ↓40
Комментарии2

Простой подход к версионированию баз данных MS SQL Server

Время на прочтение8 мин
Количество просмотров11K

Простой подход к версионированию баз данных MS SQL Server



Предисловие.

Очень часто в прикладных программах возникает необходимость использовать современные базы данных, которые предоставляют разработчику очень большой функционал, основанный не только на уровне данных, но также и созданию собственного API для предоставления доступа к этим данным, посредством хранимых процедур, триггеров, функций. Очевидно, что во всей этой структуре в зависимости от обстоятельств, могут понадобятся какие-либо изменения. И в самом безобидном случае, когда разработчик имеет дело с одним клиентом и одной изменяющейся базой данных (предположим на небольшом предприятии), процесс обновления выглядит просто – мы делаем необходимые изменения в структуре, сравниваем с помощью специальных утилит, например SQL Examiner, старую и новую версию и накатываем сгенерированный sql-скрипт на существующую базу. Как видно в описанном случае, миграция данных происходит каждый раз при обновлении структуры базы. Но к сожалению, описанная ситуация встречается крайне редко, чаще — клиенты и соответствующих для них базы данных для какого-либо продукта у разработчиков исчисляется сотнями, если не больше. Таким образом, для нормального жизненного цикла базы данных необходима система версионирования (не путать с системами версионирования исходников типа Subversion).
Читать дальше →
Всего голосов 36: ↑21 и ↓15+6
Комментарии19

Информация

В рейтинге
Не участвует
Откуда
Волгоград, Волгоградская обл., Россия
Зарегистрирован
Активность