Урок за тестване на Salesforce

Какво представлява Salesforce?
Salesforce е първата в света облачна CRM система. Тя е основана от Марк Бениоф и Паркър Харис през март 1999 г. Целта на разработването на тази CRM платформа е да помогне на потребителите достъпно и лесно да продават, обслужват, предлагат на пазара, анализират и се свързват с клиентите си.
SFDC (Sales Force Dot Com) има много стандартни функции, които ви помагат да управлявате взаимоотношенията си с потенциални клиенти и клиенти. Освен това ви позволява да се ангажирате и да си сътрудничите със служители и бизнес партньори, за да съхранявате техните данни сигурно в облака.
Salesforce CRM е изграден на език за разработка на платформа, наречен APEX. Тестването на Salesforce ви позволява да проверите дали конфигурацията и кодът са функционални. Този CRM ми позволи да подобря лоялността, задържането и удовлетвореността на клиентите с цел изграждане на трайни връзки.
Какво представлява тестването на Salesforce?
Страхотно нещо за Salesforce е, че много от функциите извън кутията могат да бъдат персонализирани, за да отговарят на нуждите на компанията. Тестването на Salesforce е валидиране на конфигурацията и персонализирането, извършени във vanilla SFDC.
Предизвикателството е да се гарантира, че тестерът проверява кода, който е персонализиран, вместо да тества вградената функционалност на Salesforce.
SalesForce CRM е изграден на език за разработка на платформа, наречен APEX. Той също така предоставя много вградени модулни тестови случаи за разработчиците, за да валидират своя код.
Защо тестване на Salesforce?
Позволете ми да обясня основните причини, поради които смятам, че тестването на Salesforce е необходимо:
- Тестването на Salesforce ви позволява да проверите дали конфигурацията и кодът са функционални.
- Помага ви да проверите дали завършената система може да поддържа бизнес процесите на клиента.
- Този тип тестване ви помага да потвърдите, че първоначалната компилация на системата отговаря на договореното изискване.
- Помага ви да откриете проблемите рано, докато те са лесни за отстраняване.
- Отчет за функционални потоци въз основа на състоянието на тестовите случаи. Това позволява на екипа да създаде функционалните потоци, за да определи функционалността на приложението.
- Функцията Process Builder ви помага да проверите работното състояние и поведението на системата.
- Работните потоци ви позволяват да проверявате функционалността на базирани на време събития.
Терминология на Salesforce
- VisualForce: Рамка, която позволява на разработчиците да създават персонализирани потребителски интерфейси с базиран на тагове език за маркиране, подобен на HTML.
- AppExchange: Онлайн пазарът на Salesforce, където потребителите могат да открият и инсталират персонализирани приложения и разширения за среди на Salesforce.
- Връх: Строго типизиран, обектно-ориентиран език за програмиране, използван за изпълнение на отчети за контрол на потока и транзакциите на платформата Salesforce.
Видове Salesforce тестване
Ръчно тестване
Процесът на ръчно тестване на софтуера включва тестване на приложението Salesforce.com с помощта на традиционни методи. QA екипът може да използва ръчно тестване, за да изпълни функционално тестване, тестване на щастлив път, тестване на интеграция, регресионно тестване и системно тестване.
Автоматизирано тестване
Автоматичното тестване включва компютърна програма за тестване на приложение Salesforce.com или Force.com. Автоматизирани инструменти за тестване като Selenium, Assure Click, QTP и др.
Нива на тестване в Salesforce
В урока за тестване на Salesforce изследваме следните нива на тестване, които обикновено се прилагат за Salesforce:
Единично тестване
- Процесът на тестване на единици се провежда от разработчици на Apex. Това включва писане на клаузи в техния код, които автоматично тестват покритието му.
- Помага ви да оцените колко записа на данни са засегнати, така че кодът да се изпълнява успешно в тази среда.
- За да внедрите Apex код в производствена среда, коефициентът на покритие на вашия код трябва да бъде минимум 78%.
Тестване на системата:
- Извършва се от екип от експерти-консултанти на Salesforce.
- Включва техническите процеси на системата за тестване от началото до края.
- Включва тестов скрипт, базиран на конкретни резултати.
- Позволява ви да отстранявате проблеми с автоматизирани системни правила като работен процес, валидиране, присвояване и др.
UAT тестване:
- Провежда се от потребителите, които ще използват приложението
- Позволява да се тества способността на системата да поддържа бизнес процеси
- UAT тестване след тестов скрипт, базиран на това, което се случва в бизнеса
- Желаният резултат трябва да бъде клиентът да потвърди, че системата е подходяща за целта
Производствени тестове:
- Това е повторение на системното тестване в производствената среда
- Тестването на продукта в salesforce ви позволява да тествате дали конфигурацията и кодът са правилно внедрени от пясъчна среда в производствена среда или не
- Ако остане време преди стартирането на окончателния проект, тогава клиентът трябва да изпълни UAT скриптове отново след внедряването
Регресионно тестване:
- Основният обект на Регресионно тестване е да се определи дали изданията на код и конфигурация засягат съществуващите потребителски процеси на системата.
- То ще бъде извършено, след като подобрение или корекция бъде внедрена в производството.
- Потребителят предоставя списък с промени, които могат да повлияят на текущия му процес.
Процес на тестване на Salesforce
Процесът на тестване на Salesforce е същият като при всяко нормално уеб базирано приложение. Тестерът трябва да има ясна представа за адаптивните функции, които са изградени по време на тестовия процес. Помага им да се съсредоточат върху този персонализиран код вместо върху вградените функции на Salesforce.
Разработчиците и тестерите трябва да използват Sandbox средата (Тестова среда) за всяка от своите цели. Тестваният код в средата на Sandbox се внедрява в производство от средата на Sandbox. Предполага се, че QA тестерът има основни познания и разбиране на термините, използвани в Salesforce.
Предизвикателства при тестването на Salesforce
Тестването на Salesforce не е лесен процес. Има много предизвикателства, пред които е изправен тестерът по време на процеса. Някои от тях са:
- Тестването на разширени функции като Visualforce, Salesforce или Service Cloud Console е трудно.
- Трябва да пресъздадете всички ваши класически тестове за Lightning UI.
- Някои от стандартните функции, въпреки че не се използват, не могат да бъдат премахнати.
- GUI тестовете не работят, когато преминем към тестовата среда.
- Автоматизираните тестове трябва да могат да работят във всичките ви тестови среди.
- Възникват проблеми при създаването на локатори на полета за екраните на Salesforce, тъй като идентификаторите на някои полета се различават между организациите.
Най-добра практика за тестване на Salesforce
- Изпълнявайте тестове като реални потребителски профили.
- Тестовите данни трябва да бъдат подготвени за валидиране на функционалността на отчета.
- Методът на тестване трябва да включва функционално тестване, тестване на потребителския интерфейс, регресионно тестване и тестване за системна интеграция.
- Трябва да се обърне специално внимание на динамичния характер на страниците с визуална сила, тъй като всички елементи на една уеб страница може да не се зареждат едновременно.
- Тестването на автоматизацията трябва да се извършва с помощта на инструменти като Selenium и HP Unified Functional Testing.
- Тестерите на Salesforce трябва да обмислят кои потоци включват положителни и отрицателни.
- Потребителските роли трябва да бъдат конструирани и тествани с помощта на работни потоци.
Роли и отговорности на Salesforce тестер
Важни роли и отговорности на тестерите в Salesforce са:
- Трябва да може да проведе тестове за дим, за да се увери, че всички основни функции функционират според изискванията.
- Създайте както положителни, така и отрицателни тестови сценарии.
- Възможност за извършване на разделяне на еквивалентност и анализ на гранични стойности.
- Необходими са и тестери, за да работят върху приложението и да придобият представа за неговата функционалност, за да създадат функционална карта.
- Тестерът трябва да има лесен канал за комуникация с екипа за разработка.
- Той трябва да разбира персонализираните функции, които могат да бъдат изградени за приложението Salesforce.
- Тестерът трябва да изпълни ролеви тестови случаи, за да гарантира съгласуваността на данните.
- Той също така трябва да извърши тест за съвместимост в случай, че Salesforce е интегриран с приложения на трети страни.
- Тестерът на Salesforce трябва да е запознат с инструменти за тестване на натоварване като JMeter за валидиране на сложните потоци, които могат да предложат противоречиви резултати в Salesforce.
- Познаване на Apex.
Инструменти за автоматизация на тестове на SalesForce
Извършването на автоматизирано функционално тестване в SalesForce е предизвикателство, тъй като повечето тестови уеб страници са динамични. Следователно, тестерът трябва да изгради стабилна рамка за автоматизация, която трябва да бъде полезна днес и в бъдеще.
По-долу съм изброил широко използваните инструменти за тестване на Salesforce, които препоръчвам.
1) Tricentis Тествайте автоматизацията за Salesforce
Особено оценявам как Tricentis Тествайте автоматизацията за Salesforce ускорява разработването на устойчиви UI тестове за среди на Salesforce. Неговите интелигентни локатори се захранват от AI, за да се самовъзстановяват и подобряват автоматично, като по този начин минимизират поддръжката и гарантират стабилност на теста.
Характеристики:
- Проверка на сценария от край до край: Клиентите могат да валидират своите пълни сценарии от край до край, които се простират от тяхното уеб приложение до Salesforce и обратно.
- Гъвкава екипна мащабируемост: Гъвкавите екипи със смесени набори от умения мащабират ефективно своите тестови операции с функции, които им помагат да контролират и управляват растежа на тестовете и екипите.
- Изпълнение на Apex код за валидиране: Изпълнете Apex код в тестова стъпка, за да потвърдите резултатите от заявката.
- Интегриране на API тестове: Интегрирайте API тестове.
2) Тест сигма
Тест сигма е платформа за автоматизирано тестване без код, която опростява тестването на Salesforce, без да изисква дълбоко разработване на Apex или... Selenium експертиза. Открих, че интуитивният му подход за проектиране на тестове е особено ефективен за екипи, които искат да валидират стандартни и персонализирани конфигурации и процеси на Salesforce след промени или внедрявания, елиминирайки сложността на традиционните рамки за скриптове.
Характеристики:
- Безкодова автоматизация за Salesforce UI Flows: Тази функция ви позволява да създавате тестове на Salesforce, използвайки стъпки, подобни на обикновени на английски, без да пишете Apex или Selenium код. Използвал съм го, за да включа членове на екипа с различен технически опит, което им позволява да допринасят за тестовото покритие на Salesforce и да валидират ефективно бизнес процесите.
- Тестване на персонализирани обекти и работни процеси: Testsigma предоставя цялостна поддръжка за тестване на персонализирани обекти, работни процеси и интеграции около Salesforce. Това ми помогна да се уверя, че специфичните за организацията конфигурации и персонализации работят правилно след актуализации на платформата или промени в конфигурацията.
- Възможности за тестване, базирано на данни: Позволява ви систематично да тествате различни потребителски роли, профили и набори от данни. Намерих тази функция за безценна за валидиране на това как Salesforce се държи при различни нива на разрешения и бизнес сценарии, осигурявайки последователно потребителско изживяване.
- Цялостно покритие на сценарии: Платформата поддържа цялостни сценарии от край до край, които включват Salesforce плюс външни приложения или API. Използвах това, за да валидирам цялостни бизнес работни процеси, обхващащи множество системи, осигурявайки безпроблемна интеграция и поток от данни.
- Подробни отчети и логове за отстраняване на грешки: Testsigma генерира подробни отчети и регистрационни файлове, за да идентифицира бързо проблеми, въведени от промените в Salesforce. Препоръчвам използването на тези анализи за ускоряване на отстраняването на неизправности и поддържане на качеството след внедряване или актуализации на конфигурацията.
14-дневна безплатна пробна версия
Защо да използвате инструменти за тестване на Salesforce
- Помага ви да спестите 75% от времето си и 25% от разходите за автоматизация на теста.
- Предлага по-добро изпълнение на теста Apex, подробно покритие на теста и доклади за покритие на класа.
- Можете да се възползвате от водещи в индустрията инструменти за автоматизация като Selenium намлява JMeter.
- Автоматично генериране на тестови сценарии за изпълнение за различни среди и множество браузъри.
- Безпроблемно записвайте и възпроизвеждайте вашите записани тестови случаи.
- Помага ви да автоматизирате всички видове задачи преди и след внедряването.
- Процесът на тестване на Salesforce отделя данните от тестовия скрипт и ви позволява да подобрите с множество набори от данни.
Примерни тестови сценарии на Salesforce
- Тестов случай 01: Можете да заснемете информацията за контакт на потенциалния клиент/клиента.
- Тестов случай 02: Контактите могат да бъдат маркирани като активни/неактивни.
- Тестов случай 03: Всяка компания може да бъде маркирана като клиент или потенциален клиент.
- Тестов случай 04: Потенциалните клиенти могат да бъдат уловени с помощта на уеб формуляри.
- Тестов случай 05: Цената в офертата не може да бъде нула.
- Тестов случай 06: Имейлът трябва да бъде изпратен след приключване на сделката. Отхвърлените имейли, ако има такива, трябва да се обработват.
- Тестов случай 07: Интегрирането със софтуер на трети страни трябва да работи правилно.
- Тестов случай 08: Billуслугите трябва да работят според очакванията.
- Тестов случай 09: Без дублиране на записи в управлението на контакти, възможности и потенциални клиенти.
- Тестов случай 10: Мобилният работен процес работи според очакванията.
- Тестов случай 11: Неупълномощените потребители не трябва да имат достъп до файловете.
Тестване на Salesforce: Предизвикателства на клиента
Клиентите винаги са нервни относно тестването на Salesforce, защото може да не знаят как да го провеждат правилно. В резултат на това те имат мит, който е много различен от реалността.
Ето някои от тях:
| Клиентски проблеми | Решение |
|---|---|
| Не знам как да използвам системата Salesforce. | Клиентите трябва да тестват своя процес, а не функционалността на системата. |
| Не можем да тестваме, без всички наши данни да присъстват в системата. | Те се нуждаят само от няколко примерни записа за тестване. |
| Нямам свободно време за тестване и управление на ежедневната си работа. | Те трябва да поддържат връзка с PM и редовно да се обаждат за проверка на етапите на проектиране и изграждане. |
Заключение
- Salesforce е първата в света облачна CRM система.
- Тестването на Salesforce потвърждава конфигурацията и персонализирането, извършени във vanilla SFDC.
- Тестването на Salesforce ви помага да проверите дали завършената система може да поддържа бизнес процесите на клиента.
- Най-голямото предизвикателство на SalesForce Testing е да се гарантира, че тествате персонализирането, а не вградените функции на SFDC.
- Важни нива на тестване на Salesforce са тестване на единици, системно тестване, UAT тестване, производствено тестване и регресионно тестване.
- Най-голямото предизвикателство при тестването на Salesforce е, че трябва да пресъздадете всичките си класически тестове за Lightning UI.
- Тестерите на Salesforce трябва да изпълняват тестове като истински потребителски профили.
- Salesforce трябва да може да провежда димни тестове, за да се увери, че всички основни функции функционират според изискванията.
- Selenium Уеб драйвер, HP Unified Functional Testing (UFT) и Cucumber са няколко важни инструмента за тестване на Salesforce.




