Как проанализировать и решить, используется или нет в sfdc.com? - PullRequest
0 голосов
/ 22 мая 2019

Я вхожу в проект, где есть существующий класс Apex, триггер Apex, пакет компонентов Aura, пользовательский объект, компонент молнии, компонент Visualforce и страницы Visualforce.

Мне поручено выяснить, какие из этих компонентов в настоящее время используются в системе sfdc.com.

Должен ли я начать сначала просматривать документы с функциональными требованиями и понять, как работает система, а затем проверить код?

Или есть какой-нибудь инструмент, который поможет мне показать, какие компоненты sfdc.com используются, а какие не используются? Кнопка показа зависимостей помогает в этом отношении?

Кроме того, для компонентов класса apex, которые используются, как я решил, с чего начать писать тестовые классы?

1 Ответ

0 голосов
/ 23 мая 2019

Интересный вопрос, но может быть лучше для https://salesforce.stackexchange.com/, ваша проблема на самом деле не является конкретной проблемой кодирования ...

Начните с запуска встроенных инструментов, которые должны дать вам некоторую степень обзора:

  • Настройка -> Использование хранилища (так что вы увидите, какие объекты имеют 0 записей)
  • Настройка -> Оптимизатор (создает большой PDF-файл, но дает хороший обзор переконфигурированных областей, которые могут вызывать трудности при обслуживании, пользователей, которые не заходят слишком часто, неиспользуемые отчеты ...)
  • (В конце отчета оптимизатора у вас должно быть множество ресурсов / ссылок, например, на инструмент, который анализирует использование пользовательских полей, сколько% фактически заполнено)
  • Настройка -> Помощник по переходу через Lightning Experience -> Начало работы -> Этап обнаружения -> Оценка ... -> Проверка готовности. Ужасно, я знаю. Но скажет вам, какие страницы Visualforce были доступны в последнее время. Или какие кнопки не находятся на макетах страниц, поэтому, если люди не могут щелкнуть, чтобы перейти на страницу VF - они, вероятно, не могут запустить ее и могут быть удалены.

Это не идеальный пиксель, SF подтвердил мне, что Optimizer смотрит только на определенные стандартные и пользовательские объекты, но не на все (у меня были значительные проблемы, спрятанные в std-объекте, который не проверен, пришлось извлечь информацию из SF бэкэнд вручную) но это начало.

В другом вопросе, который вы написали, у вас нет инструментов разработчика (Eclipse IDE, VScode и т. Д.), Только dev console. Это ограничит вашу возможность просто искать в проекте ссылки на класс X ... На страницах VF "Где это используется" должно вам немного помочь. Возможно, вы захотите проверить некоторые плагины для браузера (https://chrome.google.com/webstore/detail/salesforce-advanced-code/lnkgcmpjkkkeffambkllliefdpjdklmi) или в AppExchange могут быть некоторые плагины SF ...

С чего начать написание модульных тестов? Хех :) В идеале бизнес мог бы указать вам общее направление функциональности, которое наиболее часто изменяется / ломается / является наиболее критичным и, следовательно, получило бы выгоду от хорошего набора тестов, чтобы разработчик технического обслуживания не нарушал функциональность.

В противном случае вы можете сосредоточиться на 10 лучших классах, у которых больше всего непокрытых линий (атака на них должна дать вам самый быстрый охват% прироста). То, что я пытаюсь сказать, если у вас есть класс, у которого 60/100 строк покрыты тестом, а другой - 2/4 - лучше атаковать 1-й, даже если у него более высокий процент покрытия. После запуска всех тестов перейдите в Developer Console -> Query Editor. В нижней части установите флажок для Tooling API. Запрос, подобный этому, должен быть хорошим началом:

SELECT ApexClassorTrigger.Name, NumLinesCovered, NumLinesUncovered
FROM ApexCodeCoverageAggregate
ORDER BY NumLinesUncovered DESC
LIMIT 10
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...