Вы можете попробовать запустить развертывание «только для проверки» (если тесты пройдут успешно или не пройдут - все будет отменено, в организации ничего не изменится). Для этого вам все еще нужна организация , здесь нет полностью локального сервера Apex, как вы можете иметь с Python / Java / PHP / C# ...
Обычный шаблон - тратить одну песочницу для этого назовите его «CI» и имейте git перехватчиков фиксации или правильные тестовые развертывания в Azure Devops конвейере, который пытается и проверяет код. Таким образом, вы можете создать систему раннего предупреждения «кто сломал сборку».
https://developer.salesforce.com/docs/atlas.en-us.sfdx_dev.meta/sfdx_dev/sfdx_dev_build_mdapi_staging.htm
упоминает sfdx force:mdapi:deploy --checkonly
flag
Если вы хотите использовать «исходные» команды для «чистых» организаций и т. д. c - sfdx force:source:deploy --checkonly
.
Редактировать для ответа на комментарий
Да, вы должны иметь возможность чтобы получить покрытие тоже.
"Обычная" команда для запуска тестов принимает параметр -c
, аналогичный
sfdx force:apex:test:run -c --resultformat human --outputdir c:\redacted --loglevel error
(...)
=== Apex Code Coverage
ID NAME % COVERED UNCOVERED LINES
────────────────── ───────────────────────── ────────────────── ───────────────────────────────────────────────────────────────────────
01p3L0000004OaKQAU names 100%
01p3L0000004OaUQAU redacted 100%
01q3L0000004CyWQAU to 100%
01q3L0000004DM4QAM protect 100%
01p3L0000004UZGQA2 the 94.23076923076923% 16,17,18
01p3L0000004QNRQA2 innocent 86.04651162790698% 116,119,131,132,146,147,148,149,151,152,153,154,163,164,165,166,202,243
(..)
При проверке развертывания нельзя использовать -c
, поскольку она уже псевдоним для --checkonly
. Но вы можете сделать это
sfdx force:mdapi:deploy --zipfile myPackage.zip -c --testlevel RunLocalTests -w 1
=== Apex Code Coverage
NAME % COVERED UNCOVERED LINES
───────────────────────── ───────── ───────────────────────────────────────────────────────────────────────
names 86% 116,119,131,132,146,147,148,149,151,152,153,154,163,164,165,166,202,243
redacted 100%
to 100%
protect 100%
the 94% 16,17,18
innocent 100%
Total Test Time: 6992.0
Successfully validated the deployment
Я не уверен на 100%, потому что то, что я развертывал здесь, было идентично тому, что уже есть в организации, вам придется попробовать это. Но я не вижу причин, почему это не должно работать. Он должен сообщать о покрытии того, что находится в попытке развертывания, а не того, что уже находится.