Посібник з тестування Salesforce для початківців

⚡ Розумний підсумок

У розділі «Тестування Salesforce» пояснюється, як команди контролю якості перевіряють налаштований код Apex, потоки інтерфейсу Lightning, інтеграції та функції Einstein AI у провідній світовій хмарній CRM, уникаючи при цьому пастки тестування вбудованої поведінки платформи в різних «пісочницях».

  • ☁️ Що це: Валідація конфігурацій, класів Apex та компонентів Lightning, побудованих на базі звичайного Salesforce.
  • 🎯 Чому це важливо: Розгортання Apex потребують 75% покриття коду, а переписування Lightning порушує роботу застарілих наборів тестів Classic.
  • 🧪 Рівні: Перевірки одиниць, систем, UAT, виробництва, регресії, а також інтеграції в різних пісочницях.
  • 🛠️ Найкращі інструменти: Tricentis Автоматизація тестування для Salesforce, Testsigma, Provar, Copado та Selenium з користувацькими локаторами.
  • 🤖 Кут штучного інтелекту: Самовідновлювальні локатори, валідація платформи Einstein 1 та робочі процеси Agentforce тепер рухають наступну хвилю автоматизації тестування.

Підручник з тестування Salesforce

Що таке Salesforce?

Salesforce — це перша у світі хмарна CRM-система. Її заснували Марк Беніофф і Паркер Гарріс у березні 1999 року. Мета цієї CRM-платформи — допомогти користувачам доступно продавати, обслуговувати, просувати на ринку, аналізувати та взаємодіяти зі своїми клієнтами через усі канали.

SFDC (Sales Force Dot Com) постачається зі стандартними функціями, які дозволяють вам керувати відносинами з потенційними та існуючими клієнтами. Він також дозволяє вам взаємодіяти та співпрацювати зі співробітниками та партнерами, безпечно зберігаючи дані в багатокористувацькій хмарі. Сьогодні він охоплює Sales Cloud, Service Cloud, Marketing Cloud, Data Cloud та платформу Einstein 1, яка забезпечує генеративні функції штучного інтелекту.

Топ вибору
Salesforce

Salesforce CRM побудовано на мові розробки платформи під назвою APEX. Тестування Salesforce дозволяє перевірити працездатність конфігурації та коду. Ця CRM дозволила мені підвищити рівень лояльності, утримання та задоволеності клієнтів, прагнучи створити тривалі зв’язки.

Відвідайте Salesforce

Що таке тестування Salesforce?

Чудова річ у Salesforce полягає в тому, що більшість готових функцій можна налаштувати відповідно до потреб компанії. Тестування Salesforce — це перевірка конфігурації та налаштування, виконаних у звичайному SFDC, включаючи класи Apex, веб-компоненти Lightning, потоки, конструктор процесів та інтеграції.

Тестування SalesForce

Завдання полягає в тому, щоб переконатися, що тестер перевіряє налаштований код, а не вбудовану функціональність Salesforce, яку Salesforce вже охоплює у своєму конвеєрі довіри та випуску.

Salesforce CRM побудовано на мові платформи під назвою Вершина, доповнені Lightning Web Components (LWC) на фронтенді. Платформа постачається з вбудованим фреймворком для модульного тестування, щоб розробники могли перевірити свій код перед розгортанням.

Навіщо тестувати Salesforce?

Ось основні причини, чому я вважаю тестування Salesforce необхідним:

  • Він перевіряє працездатність конфігурації та коду Apex після кожного оновлення пісочниці.
  • Це підтверджує, що готова система повністю підтримує бізнес-процеси клієнта.
  • Це підтверджує, що початкова збірка відповідає узгодженим вимогам перед її введенням в експлуатацію.
  • Він виявляє проблеми на ранній стадії, поки їх легко та недорого виправити.
  • Звіти про функціональний потік на основі статусу тестового випадку допомагають команді відобразити функціональність програми.
  • Функції Flow Builder та Process Builder можна перевірити на предмет робочих умов та поведінки.
  • Робочі процеси дозволяють перевіряти функціональність подій, що залежать від часу, таких як правила ескалації.

Термінологія Salesforce

  • Досвід блискавки: Поточний інтерфейс Salesforce за замовчуванням, побудований на веб-компонентах Lightning; Salesforce Classic поступово припиняється, і більшість організацій переходять на Lightning.
  • Візуальна сила: Застарілий фреймворк для створення користувацьких інтерфейсів за допомогою мови розмітки на основі тегів, подібної до HTML, який все ще підтримується для старіших налаштувань.
  • AppExchange: Онлайн-майданчик Salesforce, де користувачі можуть знаходити та встановлювати власні програми та розширення.
  • вершина: Строго типізована об'єктно-орієнтована мова, що використовується для виконання операторів керування потоком і транзакціями на платформі Salesforce.
  • Платформа Ейнштейна 1 / Agentforce: Рівень штучного інтелекту Salesforce для прогнозних та генеративних функцій і автономних агентів, які також повинні бути перевірені контролем якості.

Типи тестування Salesforce

Ручне тестування

Ручне тестування програмного забезпечення охоплює застосунок Salesforce.com з використанням традиційних методів. Команда контролю якості може використовувати ручне тестування для виконання функціонального тестування, тестування «щасливого шляху», інтеграційного тестування, регресійного тестування та системного тестування як у Lightning Experience, так і в Salesforce Mobile.

Автоматичне тестування

Автоматизоване тестування використовує програму для тестування додатка Salesforce.com або Force.com. Звичайні інструменти автоматизації включають Selenium, Provar, Copado Robotic Testing, Tricentis Автоматизація тестування для Salesforce та Testsigma. Сучасні стеки все частіше додають локатори самовідновлення на базі штучного інтелекту для поглинання змін Lightning DOM.

Рівні тестування в Salesforce

У цьому посібнику з тестування Salesforce зазвичай застосовуються такі рівні:

Рівні тестування в Salesforce

Unit Testing

  • Проводиться розробниками Apex, які пишуть методи тестування, що перевіряють їхні класи та тригери.
  • Він оцінює, скільки записів даних постраждало, щоб код надійно працював у цільовому середовищі.
  • Щоб розгорнути код Apex у продакшені, загальне покриття коду має становити щонайменше 75%, а кожен тригер повинен мати покриття щонайменше 1%.

Тестування системи:

  • Виконується командою консультантів Salesforce.
  • Тестує технічні процеси системи від початку до кінця.
  • Використовує тестові скрипти на основі конкретних очікуваних результатів.
  • Вирішує проблеми з автоматизованими правилами, такими як процеси робочого процесу, перевірки, призначення та затвердження.

Тестування UAT:

  • Проводиться бізнес-користувачами, які використовуватимуть додаток щодня.
  • Тестує здатність системи підтримувати бізнес-процеси.
  • Виконує тестові сценарії, засновані на реальних бізнес-сценаріях.
  • Бажаним результатом є підтвердження клієнтом того, що система відповідає своєму призначенню.

Виробничі випробування:

  • Повторне тестування системи у виробничому середовищі.
  • Перевіряє, чи конфігурація та код були правильно розгорнуті з ізольованого середовища до робочого середовища.
  • Якщо дозволяє час до запуску, клієнту слід знову запустити скрипти UAT після розгортання.

Регресійне тестування:

  • Головна мета регресійне тестування полягає у визначенні того, чи впливають нові релізи на існуючі процеси користувачів.
  • Він запускається після кожного покращення, виправлення або сезонного випуску Salesforce (весна, літо, зима).
  • Користувач надає список змін, які можуть вплинути на поточні процеси, щоб можна було повторно перевірити ці потоки.

Процес тестування Salesforce

Процес тестування в Salesforce нагадує тестування будь-якого веб-застосунку. Тестеру потрібне чітке уявлення про налаштовувані функції, створені під час проекту, щоб зосередитися на налаштованому коді, а не на вбудованій функції Salesforce.

Розробники та тестувальники повинні використовувати середовища «пісочниці» (Developer, Developer Pro, Partial Copy, Full) для своїх відповідних цілей. Протестований код у «пісочниці» переноситься у продакшн за допомогою наборів змін, Salesforce DX або інструментів DevOps, таких як Copado та Gearset. Передбачається, що QA-тестер розуміє основну термінологію Salesforce перед приєднанням до проекту.

Проблеми тестування Salesforce

Тестування Salesforce — це непростий процес. Тестери стикаються з багатьма труднощами, зокрема:

  • Тестування розширених функцій, таких як Lightning Web Components, Visualforce, Service Cloud Console та сайти Experience Cloud, є складним процесом.
  • Командам часто потрібно відтворювати або рефакторувати застарілі класичні тести для Lightning Experience та мобільного додатку Salesforce.
  • Деякі стандартні функції неможливо видалити, навіть якщо вони не використовуються.
  • Тести інтерфейсу користувача можуть порушувати роботу під час оновлення пісочниць або випуску сезонних релізів.
  • Автоматизовані тести повинні виконуватися послідовно в усіх ізольованих середовищах.
  • Створення стабільних локаторів полів є складним завданням, оскільки ідентифікатори елементів Salesforce відрізняються між організаціями та змінюються з кожним релізом.
  • Перевірка функцій штучного інтелекту, таких як прогнози Ейнштейна та агенти Agentforce, вимагає нових підходів, заснованих на даних та підказках.

Найкраща практика для тестування Salesforce

  • Запускайте тести як справжні профілі користувачів та набори дозволів.
  • Підготуйте тестові дані, які перевірять функціональність звіту та панелі інструментів.
  • Поєднуйте функціональне, інтерфейсне, регресійне та системно-інтеграційне тестування в кожному циклі випуску.
  • Зверніть особливу увагу на динамічний характер сторінок Lightning та Visualforce, оскільки елементи можуть завантажуватися не одночасно; використовуйте явні очікування.
  • Автоматизацію слід виконувати за допомогою таких інструментів, як Selenium, Провар, Tricentis, або Testsigma, у парі з локаторами, що самовідновлюються.
  • Охоплюйте як позитивні, так і негативні потоки в кожному тестовому сценарії.
  • Створюйте ролі, профілі та набори дозволів користувачів у тестових даних, щоб робочі процеси можна було перевірити для кожної персони.

Ролі та обов’язки тестувальника Salesforce

Важливі ролі та обов'язки тестувальників Salesforce включають:

  • Проведення димового тестування для підтвердження того, що всі основні функції працюють відповідно до вимог.
  • Створення як позитивних, так і негативних тестових сценаріїв.
  • Виконання розбиття еквівалентності та аналізу граничних значень.
  • Робота з додатком для розуміння його функціональності та побудови функціональної карти.
  • Підтримка відкритого каналу комунікації з командою розробників.
  • Розуміння налаштовуваних функцій, створених для організації Salesforce.
  • Виконання тестових випадків на основі ролей для забезпечення узгодженості даних.
  • Виконання тестів сумісності, коли Salesforce інтегровано із сторонніми програмами.
  • Знайомство з інструментами навантажувального тестування, такими як JMeter для перевірки складних потоків, які можуть повертати суперечливі результати.
  • Практичне знання компонентів Apex, SOQL та Lightning.

Інструменти автоматизації тестування Salesforce

Виконання автоматизованого функціонального тестування в Salesforce є складним завданням, оскільки більшість тестових сторінок є динамічними. Тестерам потрібно створити надійну систему автоматизації, яка буде корисною сьогодні та стійкою до майбутніх релізів.

Нижче я перерахував широко використовувані інструменти тестування Salesforce, які я рекомендую.

1) Tricentis Автоматизація тестування для Salesforce

Я особливо ціную те, як Tricentis Автоматизація тестування для Salesforce прискорює розробку стійких тестів інтерфейсу користувача для середовищ Salesforce. Його інтелектуальні локатори працюють на базі штучного інтелекту для автоматичного самовідновлення та покращення, мінімізуючи обслуговування та забезпечуючи стабільність тестування в усіх релізах Lightning.

Tricentis

Особливості гри:

  • Наскрізна перевірка сценарію: Клієнти можуть перевіряти повні сценарії від початку до кінця, починаючи від веб-застосунку до Salesforce і назад.
  • Гнучка командна масштабованість: Гнучкі команди зі змішаними навичками ефективно масштабують свої тестові операції за допомогою функцій, які допомагають їм контролювати та керувати зростанням тестів та команд.
  • Вершина Code Виконання для перевірки: Запустіть код Apex на етапі тестування, щоб перевірити результати запиту.
  • Інтеграція тесту API: Безшовна інтеграція тестів API разом із процесами інтерфейсу користувача.

Visit Tricentis >>


2) Testsigma

Testsigma це платформа автоматизації тестування без кодування, яка спрощує тестування Salesforce без необхідності глибокого використання Apex або Selenium експертиза. Я вважаю його інтуїтивно зрозумілий підхід до розробки тестів особливо ефективним для команд, які перевіряють стандартні та користувацькі конфігурації Salesforce після змін або розгортань, усуваючи складність традиційних фреймворків сценаріїв.

Testsigma

Особливості гри:

  • Codeменше автоматизації для процесів інтерфейсу користувача Salesforce: Створюйте тести Salesforce, використовуючи прості кроки, схожі на англійські, без написання Apex або Selenium код. Я використовував його для залучення членів команди з різним технічним досвідом.
  • Тестування користувацьких об'єктів та робочих процесів: Комплексна підтримка тестування користувацьких об'єктів, робочих процесів та інтеграцій. Це допомогло мені забезпечити правильну роботу конфігурацій, специфічних для організації, після оновлень платформи.
  • Можливості тестування на основі даних: Систематично тестуйте різні ролі користувачів, профілі та набори даних. Я вважаю це безцінним для перевірки поведінки на різних рівнях дозволів.
  • Повне охоплення сценаріїв: Підтримує комплексні сценарії, що включають Salesforce, а також зовнішні програми або API.
  • Детальні звіти та журнали налагодження: Генерує вичерпні звіти та журнали для швидкого виявлення проблем, спричинених змінами в Salesforce.

Відвідайте Testsigma >>

14-денна безкоштовна пробна версія

Навіщо використовувати інструменти тестування Salesforce

  • Вони допомагають вам заощадити до 75% часу тестування та значну частку витрат на автоматизацію.
  • Вони пропонують краще виконання тестів Apex, детальне охоплення тестами та звіти про охоплення класів.
  • Ви можете скористатися такими провідними в галузі інструментами автоматизації, як Selenium та JMeter.
  • Автоматично генеруйте тестові сценарії для різних середовищ та кількох браузерів.
  • Безперешкодно записуйте та відтворюйте свої тестові випадки.
  • Автоматизуйте всі типи завдань до та після розгортання.
  • Відокремте дані від тестового скрипта та доповніть їх кількома наборами даних.

Приклади сценаріїв тестування Salesforce

  • Тестовий приклад 01: Зберіть контактну інформацію потенційного клієнта або потенційного клієнта.
  • Тестовий приклад 02: Контакти можна позначити як активні або неактивні.
  • Тестовий приклад 03: Компанію можна позначити як клієнта або потенційного клієнта.
  • Тестовий приклад 04: Ліди можна збирати за допомогою веб-форм для збору лідів.
  • Тестовий приклад 05: Ціна в комерційній пропозиції не може бути нульовою.
  • Тестовий приклад 06: Електронний лист надсилається після укладання угоди; відхилені електронні листи обробляються.
  • Тестовий приклад 07: Інтеграція зі стороннім програмним забезпеченням працює належним чином.
  • Тестовий приклад 08: BillПослуги ing працюють належним чином.
  • Тестовий приклад 09: Відсутність дублювання записів в управлінні контактами, можливостями та потенційними клієнтами.
  • Тестовий приклад 10: Мобільні робочі процеси працюють належним чином у мобільному додатку Salesforce.
  • Тестовий приклад 11: Неавторизовані користувачі не можуть отримати доступ до файлів або обмежених записів.

Як ШІ та Ейнштейн є Решеюping Тестування Salesforce

Штучний інтелект зараз є першокласним завданням тестування в Salesforce. Платформа Einstein 1 додає прогнозні оцінки, генеративні відповіді та автономних агентів Agentforce до Sales and Service Cloud, і кожна з цих функцій потребує власної стратегії перевірки. Тестери повинні розробляти кейси на основі даних, які перевіряють точність прогнозування, підказують заземлення та захисні огородження поряд з традиційними процесами інтерфейсу користувача.

Що стосується інструментів, сучасні системи автоматизації Salesforce покладаються на локатори самовідновлення на базі штучного інтелекту, які виявляють зміни Lightning DOM між релізами та автоматично відновлюють селектори. Tricentis, Provar, Copado Robotic Testing та Testsigma – усі вони пропонують різні варіанти цієї можливості. Поєднайте їх із даними синтетичних тестів та візуальними регресійними перевірками, щоб підтримувати високий рівень покриття без надмірного обслуговування.

Тестування Salesforce: виклики клієнта

Клієнти часто нервують щодо тестування Salesforce, оскільки вони можуть не знати, як його правильно проводити, що породжує міфи, що розходяться з реальністю.

Ось деякі з них:

Проблеми клієнта Рішення
Я не знаю, як користуватися системою Salesforce. Клієнти повинні тестувати свій процес, а не функціональність системи.
Ми не можемо проводити тестування без наявності всіх наших даних у системі. Для тестування потрібно лише кілька зразків записів.
У мене немає вільного часу, щоб тестувати та керувати своєю щоденною роботою. Залишайтеся на зв'язку з керівником проекту та приєднуйтесь до регулярних дзвінків під час етапів проектування та будівництва.

Поширені запитання

Для розгортання у продакшені Salesforce вимагає щонайменше 75% загального покриття коду Apex, а кожен тригер повинен мати щонайменше 1% покриття. Тести мають бути виконані успішно та не можуть покладатися на seeAllData=true для нового коду.

Більшість нових розробок орієнтовані на Lightning Experience, який є інтерфейсом користувача за замовчуванням. Salesforce поступово відмовляється від Classic для багатьох функцій, тому плани тестування повинні пріоритезувати Lightning Web Components, Flow та Salesforce Mobile, якщо тільки організація клієнта не залишається на Classic.

Так. Selenium працює для Salesforce, але волатильність Lightning DOM робить чисті локатори XPath крихкими. Команди зазвичай об'єднуються Selenium за допомогою служби тестування Lightning, користувацьких очікувань та локаторів із самовідновленням на основі штучного інтелекту або скористайтеся спеціалізованими інструментами Salesforce, такими як Provar та Tricentis.

Перевірте прогнози Ейнштейна за допомогою позначених наборів даних, а потім ствердьте діапазони прогнозів та пояснення. Для Agentforce протестуйте заземлення підказок, захисні огорожі, виклики дій та потоки розмов. Поєднайте функціональні перевірки з перевірками упередженості, галюцинацій та безпеки.

Tricentis Автоматизація тестування для Salesforce, Provar, Copado Robotic Testing та Testsigma пропонують локатори самовідновлення на базі штучного інтелекту та інтелектуальну генерацію тестів. Ці функції враховують зміни Lightning DOM під час сезонних релізів та значно зменшують обсяг обслуговування скриптів.

Пісочниці Developer та Developer Pro містять лише метадані. Пісочниці з частковим копіюванням містять зразки даних, а пісочниці Full відображають виробничі дані та метадані. Використовуйте повне або часткове копіювання для UAT-тестування та регресійного тестування, а пісочниці Developer — для модульної та інтеграційної роботи.

Проводьте регресійні тести після кожного розгортання спринту, перед кожним сезонним випуском Salesforce (весна, літо, зима) та після основних оновлень ізольованого середовища. Пріоритетуйте основні процеси продажів, обслуговування та інтеграції, а потім розширте охоплення на функції штучного інтелекту та користувацькі компоненти Lightning.

Підсумуйте цей пост за допомогою: