Tarkib Marketing

Salesforce integratsiyasini sinovdan o'tkazish bo'yicha maslahatlar va eng yaxshi amaliyotlar

Salesforce sinovlari sizga moslashtirilgan narsalarni tasdiqlashda yordam beradi Salesforce integratsiyasi va boshqa korporativ dasturlar bilan funktsional imkoniyatlar. Yaxshi sinov barcha Salesforce modullarini hisob qaydnomalaridan tortib to imkoniyatlarga, hisobotgacha va kampaniyalardan kontaktlarga qadar qamrab oladi. Barcha testlarda bo'lgani kabi, Salesforce testini o'tkazishning yaxshi (samarali va samarali) usuli va yomon usuli mavjud. Xo'sh, Salesforce yaxshi amaliyotni sinovdan o'tkazadigan narsa nima?

  • To'g'ri sinov vositalaridan foydalaning - Salesforce sinovlari brauzerda yoki tutilishga asoslangan muhitda sodir bo'ladi. Eng so'nggi brauzerlarda ham, tutilishda ham disk raskadrovka vositalari yaxshi va siz ularni juda foydali natijalar uchun sinov sinflari bilan birlashtira olasiz. Ammo, agar sizga ko'proq kerak bo'lsa, Force.com tomonidan Apex Interactive Debugger (yoki oddiygina Apex) ishlatilishi kerak. Shuningdek, Salesforce Lightning-ni maxsus sinovdan o'tkazish uchun Chromefor kengaytmasi bo'lgan Salesforce Lightning Inspector-dan foydalanishingiz mumkin. Apex - bu force.com Java bilan juda o'xshashliklarga ega bo'lgan platformaviy mulkiy dasturlash tili. Bu ob'ektga yo'naltirilgan, harfga sezgir bo'lmagan, kuchli jingalak-qavs va nuqta-yozuv sintaksisiga amal qiladigan dasturlash tilidir. Siz Force.com-ning aksariyat jarayonlarida dasturlashtirilgan funktsiyalarni bajarish uchun Apex-dan foydalanishingiz mumkin, shu jumladan maxsus havolalar va tugmachalar, yangilanishlar, o'chirishlar va Visualforce sahifasining maxsus tekshirgichlari yoki rejalashtirish orqali qo'shish hodisalarini ishlovchilar.
  • To'g'ri nomlash konventsiyalaridan foydalaning - Sinovlarni yozishni boshlashdan oldin test usullarini to'g'ri nomlash juda muhimdir. Sinov usuli nomi uch qismdan iborat bo'lishi kerak. Ular nameOfMethod (tetikni sinab ko'rishda qo'shish / yangilash / o'chirish / bekor qilish kabi sinovdan o'tkazadigan individual usul nomi, agar kontakt nolga tengligini tekshirayotgan bo'lsangiz, null aloqa kabi moslashuvchan bo'lgan TestPath haqidagi ma'lumotlar. ijobiy / salbiy yo'l.
  • 100% qamrovni ta'minlang - Standart Salesforce ko'rsatmasiga binoan, birlik sinovi sizning kodingizning 75 foizini qamrab olishi kerak (test sinovlari minus, System.debug-ga qo'ng'iroqlar va sinov usullari) va siz Apex kodini yoki AppExchange dastur paketini joylashtirolmaysiz, ammo bu shunchaki standart ekanligini va sizning maqsadingiz 100% qamrab olishi kerakligini unutmang. Barcha ijobiy / salbiy holatlarni va mavjud bo'lgan va mavjud bo'lmagan ma'lumotlarni sinab ko'ring. Kodni qamrab olish to'g'risida boshqa muhim maslahatlar:
    • Kodni qamrab olish raqamlarini yangilash uchun testlarni bajarishingiz kerak, chunki Apex kodi yangilanganida ushbu raqamlar yangilanmaydi, testlar qayta ishga tushirilgunga qadar.
    • Agar so'nggi sinov ishlaridan beri tashkilotda yangilanish bo'lsa, kodni qamrab olish raqamlari noto'g'ri bo'lishi xavfi mavjud. To'g'ri baho uchun testlarni qayta bajaring.
    • Kodni qamrab olish foizlari boshqariladigan paketlar testlaridan kodni qamrab olishni o'z ichiga olmaydi, faqat ushbu testlar tetikleyicilarning yonishini keltirib chiqaradigan holatlar bundan mustasno.
    • Qoplama kod satrlarining umumiy soniga bog'liq. Agar siz kod satrlarini qo'shsangiz yoki o'chirsangiz, foizga ta'sir qilasiz.
  • Sinflar va tekshirgichlardagi sinov holatlari - Salesforce dasturida ko'pchilik ishlab chiquvchilar har bir funktsiya uchun alohida sinflar va tekshiruvchi fayllarini yaratadilar. Bu kodlashni yanada uyg'unroq, osonroq, qayta ishlatish va ko'chma qilish uchun amalga oshiriladi. Ammo shuni ta'kidlash kerakki, bu osonroq bo'lsa ham, u samaraliroq emas. Sinov kodi asl sinfda va kontroller kodida bo'lsa, siz portativlikka erishasiz, chunki siz qum qutisidan ishlab chiqarishga o'tishda biron bir sinov sinfini o'tkazib yubormaysiz.
  • System.assert () dan foydalaning - Apex-da, System.assert() shartlarni tekshirish uchun ishlatiladi. Bu muhim funktsionallikdir, chunki u ma'lum bir funktsiya kutilganidek usul bilan bajarilganligini aniqlashga imkon beradi. Muhim funktsiyalar orasida System.assertEquals () va System.assertNotEquals () dan foydalanish nafaqat kodning kerakli darajada bajarilganligini aniqlashga, balki kod noto'g'ri bo'lsa, hech qanday ma'lumot xato yozilmasligini ta'minlashga yordam beradi.
  • Keng qamrovli sinov - Sinov hamma narsani qamrab olishi kerak. Funktsional sinovlarni, yuklarni sinovdan o'tkazishni, xavfsizlikni sinashni va joylashtirish testlarini bajarishingiz kerak.
  • Birlik sinovlari - Shaxsiy yozuvlarning to'g'ri va kutilgan natijani berishini tekshirish uchun sizda birlik sinovlari bo'lishi kerak. Barcha kodni qamrab oladigan ulkan testdan foydalanganda yaxshi fikr bo'lib tuyulishi mumkin, ammo natijalarni disk raskadrovka qilish qiyin va muvaffaqiyatsizlikni tushunish qiyinroq bo'ladi. Birlik testi sinovdan o'tkazilayotgan funksionallikning kichik bir qismini o'z ichiga olishi kerak.
  • Ommaviy sinovlar - Yaxshi sinov kodi (trigger, istisno yoki sinf) bir necha yuz yozuvlar uchun ishlatilishi mumkin (Apex uchun 200 ta). Siz bundan foydalanib, nafaqat shaxsiy yozuvlarni, balki ommaviy ishlarni ham sinab ko'rishingiz kerak.
  • Ijobiy testlar - Kutilgan xatti-harakatlar barcha kutilgan almashtirishlar orqali sodir bo'lishini tekshirish uchun sinovdan o'tkazing. Sinov foydalanuvchining anketani to'g'ri to'ldirganligini va uning chegaralaridan oshmaganligini tekshirishi kerak.
  • Salbiy testlar - Xato xabarlari to'g'ri ishlab chiqarilishini ta'minlash uchun salbiy holatlarni sinab ko'ring. Bunday salbiy holatlarning misollari salbiy miqdorlarni aniqlay olmaslik va kelajakdagi sanalarni qo'shib bo'lmaslikdir. Salbiy testlar muhim ahamiyatga ega, chunki janubga qarab harakatlanayotganda to'g'ri ishlash barcha farqlarni keltirib chiqarishi mumkin.
  • Avtomatlashtirilgan sinov - An'anaga ko'ra, Salesforce sinovlari qo'lda edi. Avtomatlashtirilgan sinovlarni ko'rib chiqishingiz kerak, chunki bu ko'proq afzalliklarga ega. Bunga quyidagilar kiradi:
    • Qo'lda sinovlar sizni xatolarga moyil qiladi, chunki sinovlar robotlar emas, balki odamlar tomonidan amalga oshiriladi. Robotlar takrorlanadigan ishlarda ustun bo'lishadi, odamlar esa zerikish, kontsentratsiyani pasayishi va barqarorlik va burchaklarni kesib tashlash moyilligi tufayli xatolarga yo'l qo'yishadi.
    • Qo'lda sinov takrorlanadigan, formulali va charchagan. Sinov guruhi ko'proq izlanadigan ishni bajargan ma'qul.
  • Har bir kod mantiqiy filialini bajaring - Shartli mantiqdan foydalanganda (uchlik operatorlarni kiritganingizda), kod mantig'ining har bir bo'lagi bajarilishi kerak.
  • Usullarga qo'ng'iroq qilish uchun yaroqsiz va yaroqsiz yozuvlardan foydalaning - Usullarga qo'ng'iroqlar yaroqsiz va yaroqli yozuvlar yordamida amalga oshirilishi kerak.
  • To'liq testlar - Sinovlarning muvaffaqiyatli yakunlanishiga ishonch hosil qiling - agar xatolar kutilmasa, istisnolardan foydalanmaslik kerak. Qo'lga kiritilgan barcha istisnolardan foydalaning - ularni ushlab qolish etarli emas.
  • Buyurtma bo'yicha kalit so'zlardan foydalaning - Yozuvlaringiz kutilgan tartibda qaytarilishini ta'minlash uchun ORDER BY kalit so'zlaridan foydalaning.
  • Yozuv identifikatorlari ketma-ket joylashtirilgan deb o'ylamang - Yozuv identifikatorlari ketma-ket tartibda joylashtirilgan deb taxmin qilishning keng tarqalgan xatosidan saqlaning. Agar bitta so'rov bilan bir nechta yozuv kiritmagan bo'lsangiz, identifikatorlar o'sish tartibida emas.
  • Test.startTest () va Test.stopTest () qo'ng'iroqlari - Apex birligi sinovini o'tkazganingizda, Salesforce-da majburiy bo'lgan 75% koddan ko'proq narsani olasiz. Hali ham bajarilishi mumkin bo'lgan asenkron kodlarni majburlash uchun tasdiqlardan oldin stopTest-ga qo'ng'iroq qilishingiz kerak. Yakuniy natijalar uchun yangi so'rovlarni bajaring, chunki boshqa kod ma'lumotlarni o'zgartirishi mumkin. Dan foydalanish TestTest.startTest () va Test.stopTest () yordamida test sinovlari uning hokimi chegaralarida amalga oshiriladi. Shunday qilib, siz foydalanadigan sozlash kodi sizga xalaqit bermaydi va sizga gubernator chegaralari atrofida noto'g'ri salbiy yoki ijobiy narsalarni beradi. Test.stopTest () shuningdek, sinov uchun @future qo'ng'iroqlari bajarilishini ta'minlaydi.
  • O'qish imkoniyati - O'qish qobiliyati birlik sinovlarida juda muhimdir. Sinov nomlari amalga oshiriladigan aniq harakatlar va kutilgan natijani o'z ichiga olishi kerak. Usul tavsiflovchi va qisqa bo'lishi kerak. Usul shunday bo'lishi kerakki, u turli xil testlarda qayta ishlatilishi mumkin.
  • StartTest-dan oldin katta test ma'lumotlarini yaratish - Sinovlaringiz turli xil qum maydonlarida va ishlab chiqarish muhitlarida ishlayotganligi sababli, testning to'liq bajarilish chegaralariga ega bo'lishini ta'minlash uchun startTest-ga qo'ng'iroq qilishdan oldin katta sinov ma'lumot to'plamlarini yarating. Avvalboshdan, Salesforce Github ishlab chiqarish ma'lumotlaridan ajratilgan sinovlarni o'tkazadi. Agar sizga profil kabi tizim ma'lumotlari kerak bo'lsa, ushbu maxsus muhit uchun kerakli narsani olish uchun so'rov qiling.
  • O'zingizning test ma'lumotlarini yarating - Siz foydalanadigan test ma'lumotlari testda yaratilishi kerak. Siz ushbu ma'lumotni @testSetup izohi va TestUtils klassi yordamida nafaqat kerakli ma'lumotlarga ega bo'lishingizni, balki barcha testlarni ishlab chiquvchi qum maydonida ishlashini ta'minlash uchun ham ma'lumotlarga ehtiyoj sezmasdan yaratishingiz mumkin.
  • No-op AKA null operatsiyalaridan qoching - Ko'pgina sinovchilar no-op AKA null operatsiyalaridan foydalanadilar. Bu hech narsa qilmaydigan foydasiz kodlar. Ular sizning kod bazangizda bo'lganligi sababli, ular sizning qamrov foizingizga qo'shiladi.
  • Parallel sinovni bajarish - Salesforce foydalanuvchi interfeysi yoki Developer Console-dan sinovlarni boshlaganingizda, testlar parallel ravishda amalga oshiriladi. Bu muhim xususiyat, chunki u sinov muddatini tezlashtiradi. Shunga qaramay, bu ma'lumotlar ziddiyatlarini keltirib chiqarishi mumkinligiga e'tibor qaratishingiz kerak va agar bu sodir bo'lishidan shubhalansangiz, parallel ijroni o'chirib qo'ying. UNABLE_TO_LOCK_ROW xatolariga olib keladigan ma'lumotlar ziddiyatlarining eng keng tarqalgan sabablari quyidagilardir:
    • Sinovlar bir vaqtning o'zida bir xil yozuvlarni yangilashga mo'ljallangan bo'lsa. Xuddi shu yozuvlarni yangilash, odatda testlar o'z ma'lumotlarini yaratmaydigan bo'lsa sodir bo'ladi.
    • Parallel ravishda bajariladigan testlarda to'siq mavjud bo'lganda va ular indeks maydonining qiymatlariga mos keladigan yozuvlarni yaratishga harakat qilishadi. Ma'lumotni qaytarish uchun 2 ta ishlaydigan test navbatga qo'yilganda (bu har xil tartibda bir xil noyob indeks maydon qiymatiga ega bo'lgan 2 ta kirish yozuvlarini sinab ko'rganda paydo bo'ladi).
    • Parallel sinov bajarilishini o'chirish uchun Setup-ga o'ting, Apex Test-ga kiring, Apex Test Execution Options dialog oynasiga o'ting, Parallel Apex Testing-ni o'chirib qo'ying, OK tugmasini bosing.

Parallel Apex sinovini o'chirib qo'ying

Ish uchun mutaxassisni yollang, chunki u yaxshi sinovni o'tkazish uchun zarur bo'lgan tajriba va treningga ega bo'ladi, bu sizga ham xotirjamlikni beradi. Pro-ni yollash sizning asosiy biznesingizga e'tiboringizni qaratish imkonini beradi. Bundan tashqari, bu sizning pulingizni tejashga imkon beradi, chunki siz ish uchun ichki jamoaga ehtiyoj sezmaysiz.

Amar Kukreja

Amar Kukreja Salesforce sinovlarida ko'p yillik tajribaga ega. U boshqa testlardan tashqari Apexdan ham foydalanadi. Shuningdek, u Salesforce-ning boshqa xizmatlarini, shu jumladan Salesforce-ni dastlabki sozlash va boshqarishni taklif qiladi Salesforce Github.

Haqida Maqolalar

Yuqoriga qaytish tugmasi
yaqin

Adblock aniqlandi

Martech Zone Sizga ushbu kontentni hech qanday to'lovsiz taqdim eta oladi, chunki biz saytimizni reklama daromadlari, sheriklik havolalari va homiylik orqali monetizatsiya qilamiz. Saytimizni ko'rayotganingizda reklama blokeringizni olib tashlasangiz, biz juda minnatdormiz.