Всем привет! На этот раз Вашему вниманию представляется небольшой отчёт о работе команды CodeRush сразу за два последних спринта. Приступим: # Улучшения производительности Команда продолжает активную работу по улучшению проиводительности в продукте CodeRush. На этот раз нам удалось добиться следующих результатов: * Улучшить скорость первого запуска окон CodeRush * Сократить время необходимое на первое раскрытие шаблонов кода Нами также была проведена работа по оптимизации потребления памяти в движке XAML. В результате, мы добились меньшего потребления памяти в рефакторингах, навигации, в код анализе и других CodeRush фичах, в проектах которых есть XAML файлы. # Улучшения Organize Members Самым популярным запросом от пользователей для Organize Members было добавление возможности размещать бэкинг филды рядом с соответствующими им свойствами. Мы добавили правила для группировки и сортировки, позволяющие настроить такое поведение: 1) Поместить каждый бэкинг филд рядом с соответствующим ему свойством. 2) Сгруппировать свойства с бэкинг филдами по видимости (public, internal, private и т.д.). Например, чтобы настроить функционал [Organize Members](https://docs.devexpress.com/CodeRushForRoslyn/116041/code-style-assistance/organize-members) для реализации второго сценария: откройте страницу опций “Organize Members” и измените настройки "Internal properties" правила в Default наборе правил, как показано ниже: ![](https://i.imgur.com/MkBq7VY.png) Аналогичные настройки можно сделать и для "Public properties" правила: ![](https://i.imgur.com/TxBvEJI.png) Результат применения правил показан на скринкасте: ![](https://i.imgur.com/0B2N9cd.gif) Подробнее о настройках нового функционала Organize Members, Вы можете посмотреть в [документации](https://docs.devexpress.com/CodeRushForRoslyn/403212/examples/organize-members/how-to-group-and-sort-properties-with-backing-fields). # Test Runner В прошлых релизах мы сделали следующие улучшения для Test Runner: ## Показ "pretty" отформатированных названий xUnit тестов Мы получили репорт от ребят из команды Blazor, что в некоторых случаях не отрабатывает навигация к тесту в нашем Test Runner. Причиной оказалось, что они используют methodDisplayOptions в конфиге xUnit. В итоге фикс вылился в полноценную поддержку фичи xUnit.net фреймворка в нашем [Test Runner](https://docs.devexpress.com/CodeRushForRoslyn/401723/configuration-options/unit-testing/test-runner), которая позволяет показывать "pretty" отформатированные названия xUnit тестов. Данный функционал доступен в .NET Core проектах. ![](https://i.imgur.com/aAowtra.png) Чтобы показывать "pretty" версию названий xUnit тестов в Test Runner, мы поддержали следующие настройки xUnit: [methodDisplay]( https://xunit.net/docs/configuration-files#methodDisplayxUnit) и [methodDisplayOptions](https://xunit.net/docs/configuration-files#methodDisplayOptions). Перед использованием этой фичи в Test Runner, нужно убедиться, что включена опция "**Collect tests from assemblies when opening a solution and rebuilding projects**" на странице **Unit Testing** | **Test Runner**. ![](https://i.imgur.com/MdsyCqJ.png) ## Показ пробелов, разрывов строк и символов табуляции в результатах запуска теста Ещё один реквест на улучшение в Test Runner мы получили от Андрея Кулешова. Теперь он умеет он умеет отображать пробелы и другие непечатаемые символы в Expected и Actual разделах результатов теста. Это позволяет быстрее разбираться в причинах падения теста, когда, например, в конце был пропущен перевод строки или где-то затесался Tab вместо пробелов. ![](https://i.imgur.com/13dUItF.png) Обратите внимание, что данный функционал пока недоступен в .Net Core проектах. Как всегда, в [нашем канале в Teams](https://teams.microsoft.com/l/channel/19%3ab30f8d3dbc3441ca82a197c85d6d82f2%40thread.skype/CodeRush%2520Users%2520Feedback?groupId=f74b7d18-34a4-4c78-b7d5-b56e55ce3236&tenantId=e4d60396-9352-4ae8-b84c-e69244584fa4), Вы можете оперативно получить ответы на возникшие вопросы по нашему продукту.