Awgrymiadau ac Arferion Gorau ar gyfer Profi Integreiddiadau Salesforce

integreiddio gwerthiant

Bydd profion Salesforce yn eich helpu i ddilysu eich addasiad Integreiddiadau Salesforce a swyddogaethau gyda chymwysiadau menter eraill. Mae prawf da yn cynnwys pob modiwl Salesforce o gyfrifon i arweinwyr, o gyfleoedd i adroddiadau, ac o ymgyrchoedd i gysylltiadau. Fel sy'n wir gyda phob prawf, mae ffordd dda (effeithiol ac effeithlon) o wneud prawf Salesforce a ffordd wael. Felly, beth mae Salesforce yn profi arfer da?

  • Defnyddiwch yr Offer Profi Cywir - Mae profion Salesforce yn digwydd yn y porwr neu mewn amgylchedd sy'n seiliedig ar eclipse. Mae gan y porwyr a'r eclipse diweddaraf offer difa chwilod gwych a gallwch gyfuno'r rhain â dosbarthiadau prawf i gael canlyniadau defnyddiol iawn. Fodd bynnag, os oes angen mwy arnoch chi, dylid defnyddio The Apex Interactive Debugger (neu Apex yn syml) gan Force.com. Sylwch y gallwch chi hefyd ddefnyddio Arolygydd Mellt Salesforce, estyniad crôm, i brofi Mellt Salesforce yn benodol. Mae Apex yn a Force.com iaith raglennu perchnogol platfform sy'n debyg iawn i Java. Mae'n iaith raglennu gwrthrych-ganolog, ansensitif, sy'n teipio'n gryf ac sy'n dilyn cromfachau cyrliog a chystrawen dot-nodiant. Gallwch ddefnyddio Apex i gyflawni swyddogaethau wedi'u rhaglennu yn ystod y rhan fwyaf o brosesau Force.com, gan gynnwys dolenni a botymau arfer, diweddariadau, dileuiadau, a chofnodi trinwyr digwyddiadau mewnosod trwy reolwyr arfer tudalen Visualforce neu amserlennu.
  • Defnyddiwch Gonfensiynau Enwi Priodol - Mae'n bwysig iawn enwi'ch dulliau prawf yn iawn cyn i chi ddechrau ysgrifennu profion. Dylai enw'r dull prawf fod â thair rhan. Y rhain yw enwOfMethod (enw'r dull unigol rydych chi'n ei brofi fel mewnosod / diweddaru / dileu / tanseilio wrth brofi sbardun, gwybodaeth am TestPath sy'n hyblyg fel cyswllt null os ydych chi'n profi bod y cyswllt yn null, ac yn ddilys wrth brofi llwybr cadarnhaol / negyddol.
  • Sicrhau Cwmpas 100% - Er mai cyfarwyddeb safonol Salesforce yw y dylai prawf uned gynnwys 75% o'ch cod (minws dosbarthiadau prawf, galwadau i System.debug a dulliau prawf) ac ni fyddwch yn gallu defnyddio cod Apex na phecynnu apiau AppExchange, dylech nodwch mai safon yn unig yw hon a dylai eich nod fod yn sylw 100%. Profwch yr holl achosion cadarnhaol / negyddol ac am ddata sy'n bresennol ac nad yw'n bresennol. Awgrymiadau pwysig eraill o ran ymdrin â chod yw:
    • Dylech gynnal profion i adnewyddu rhifau cwmpas cod gan nad yw'r rhifau hyn yn cael eu hadnewyddu pan fydd y cod Apex yn cael ei ddiweddaru nes bod profion yn cael eu hail-redeg.
    • Os bu diweddariad yn y sefydliad ers y rhediad prawf diwethaf, mae risg y bydd y rhifau cwmpas cod yn anghywir. Rerun y profion ar gyfer yr amcangyfrif cywir.
    • Nid yw'r ganran cwmpas cod yn cynnwys cwmpas cod o brofion pecynnau a reolir, a'r unig eithriad yw pan fydd y profion hyn yn achosi'r sbardunau i danio.
    • Mae'r cwmpas yn dibynnu ar gyfanswm nifer y llinellau cod. Os ydych chi'n ychwanegu neu'n dileu llinellau cod, byddwch chi'n effeithio ar y ganran.
  • Achosion Prawf mewn Dosbarthiadau a Rheolwyr - Yn natblygiad Salesforce, mae'r rhan fwyaf o ddatblygwyr yn creu dosbarthiadau a ffeiliau rheolydd ar wahân ar gyfer pob swyddogaeth. Gwneir hyn i wneud codio yn fwy trefnus, haws, ailddefnyddiadwy a chludadwy. Fodd bynnag, dylech nodi, er bod hyn yn haws, nad yw'n fwy effeithlon. Byddwch yn cyflawni cludadwyedd os yw'r cod prawf yn y dosbarth gwreiddiol a'r cod rheolydd ei hun gan na fyddwch yn colli allan ar unrhyw ddosbarth prawf wrth fudo o flwch tywod i gynhyrchu.
  • Defnyddiwch System.assert () - Yn Apex, System.assert() yn cael ei ddefnyddio i wirio amodau. Mae hon yn swyddogaeth bwysig gan ei bod yn caniatáu ichi benderfynu a yw swyddogaeth benodol wedi'i chyflawni gan y dull yn ôl y disgwyl. Dylech ddefnyddio System.assertEquals () a System.assertNotEquals () rhwng swyddogaethau beirniadol nid yn unig yn eich helpu i benderfynu a yw'r cod wedi'i weithredu fel y dylai, ond hefyd i sicrhau nad oes unrhyw ddata'n cael ei ysgrifennu'n wallus os aiff y cod yn anghywir.
  • ComprehensiveTest - Dylai'r profion gwmpasu popeth. Dylech wneud profion swyddogaethol, profi llwyth, profi diogelwch a phrofi lleoli.
  • Profion Uned - Dylai fod gennych brofion uned i wirio bod cofnodion unigol yn cynhyrchu'r canlyniad cywir a disgwyliedig. Er y gallai defnyddio prawf anferth sy'n cwmpasu'r cod cyfan ymddangos yn syniad da, nodwch y bydd y canlyniadau a gynhyrchir yn anoddach eu dadfygio ac y bydd yn anoddach deall methiant. Dylai prawf uned gwmpasu is-set fach o'r swyddogaeth sy'n cael ei phrofi.
  • Achosion Swmp Prawf - Gellir cynnwys cod prawf da (sbardun, eithriad, neu ddosbarth) ar gyfer hyd at gannoedd o gofnodion (200 ar gyfer Apex). Dylech fanteisio ar hyn a phrofi nid yn unig cofnodion unigol, ond hefyd achosion swmp.
  • Profion Cadarnhaol - Profwch i sicrhau a yw'r ymddygiad disgwyliedig yn digwydd trwy'r holl drawsnewidiad disgwyliedig. Dylai'r prawf wirio bod y defnyddiwr wedi llenwi'r ffurflen yn gywir ac nad aeth ef / hi dros y terfynau.
  • Profion Negyddol - Profwch yr achosion negyddol i sicrhau bod negeseuon gwall yn cael eu cynhyrchu'n gywir. Enghreifftiau o achosion negyddol o'r fath yw methu â nodi symiau negyddol a methu ychwanegu dyddiadau yn y dyfodol. Mae profion negyddol yn bwysig oherwydd gall eu trin yn gywir pan fydd pethau'n mynd i'r de wneud byd o wahaniaeth.
  • Profi Awtomeiddio - Yn draddodiadol, roedd profion Salesforce â llaw. Dylech ystyried profi awtomataidd gan fod hyn yn cynnig mwy o fanteision. Mae'r rhain yn cynnwys:
    • Mae profi â llaw yn eich gwneud chi'n agored i gamgymeriadau gan mai bodau dynol sy'n profi, ac nid robotiaid. Mae robotiaid yn rhagori mewn gweithgareddau ailadroddus tra bod bodau dynol yn gwneud camgymeriadau oherwydd diflastod, llai o ganolbwyntio a chysondeb, a thueddiad i dorri corneli.
    • Mae profion â llaw yn ailadroddus, yn fformiwla ac yn flinedig. Mae'r tîm profi yn well ei fyd o wneud gwaith sy'n fwy archwiliadol.
  • Gweithredu pob Cangen Rhesymeg Cod - Wrth ddefnyddio rhesymeg amodol (pan fyddwch wedi cynnwys gweithredwyr teiran), dylid gweithredu pob cangen o'r rhesymeg cod.
  • Defnyddiwch Mewnbynnau Annilys a Dilys ar gyfer Galwadau i Ddulliau - Dylid galw am ddulliau gan ddefnyddio mewnbynnau annilys a dilys.
  • Profion Cyflawn - Sicrhewch fod y profion yn cwblhau'n llwyddiannus - ni ddylent trwy unrhyw eithriadau oni bai bod disgwyl y gwallau. Ymdrin â phob eithriad sy'n cael ei ddal - nid yw eu dal yn ddigon da.
  • Defnyddiwch GORCHYMYN GAN Allweddeiriau - Er mwyn sicrhau bod eich cofnodion yn cael eu dychwelyd yn y drefn rydych chi'n eu disgwyl, defnyddiwch yr allweddair GORCHYMYN GAN.
  • Peidiwch â chymryd yn ganiataol bod IDau Cofnod yn cael eu Trefnu yn olynol - Osgoi'r camgymeriad cyffredin o dybio bod IDau cofnod wedi'u trefnu yn nhrefn ddilyniannol. Nid yw'r IDau mewn trefn esgynnol, oni bai eich bod wedi mewnosod sawl cofnod gyda'r un cais.
  • Ffoniwch Test.startTest () a Test.stopTest () - Pan fyddwch chi'n rhedeg prawf uned Apex, byddwch chi'n cael mwy na'r cwmpas cod 75% sy'n orfodol yn Salesforce. Dylech ffonio stopTest cyn honiadau i orfodi codau asyncronig a allai fod yn rhedeg i orffen o hyd. Rhedeg ymholiadau newydd am ganlyniadau terfynol oherwydd gallai cod arall newid data. Mae UsingTest.startTest () a Test.stopTest () yn sicrhau eich bod yn blwch tywod y prawf y tu mewn i'w derfynau llywodraethwr. Fel hyn, ni fydd y cod gosod a ddefnyddiwch yn ymyrryd ac yn rhoi negatifau neu bethau cadarnhaol ffug sy'n ymwneud â therfynau'r llywodraethwyr. Mae Test.stopTest () hefyd yn sicrhau y bydd galwadau @future yn cwblhau i'w profi.
  • Darllenadwyedd - Mae darllenadwyedd yn bwysig iawn mewn profion uned. Dylai enwau'r profion gynnwys y camau penodol i'w cymryd a'r canlyniad disgwyliedig. Dylai'r dull fod yn ddisgrifiadol ac yn fyr. Dylai'r dull fod yn gymaint fel y gellir ei ailddefnyddio ar draws gwahanol brofion.
  • Adeiladu Setiau Data Prawf Mawr cyn startTest - Gan y bydd eich profion yn rhedeg mewn gwahanol amgylcheddau blwch tywod a chynhyrchu, adeiladwch setiau data profion mawr cyn i chi ffonio StartTest i sicrhau bod gan y prawf derfynau gweithredu llawn. Yn ddiofyn, Salesforce Github yn cynnal profion sydd wedi'u hynysu oddi wrth ddata cynhyrchu. Pan fydd angen data system arnoch fel Proffil, ymholi i gael y peth iawn ar gyfer yr amgylchedd penodol hwnnw.
  • Cynhyrchu Eich Data Prawf Eich Hun - Dylai'r data prawf a ddefnyddiwch gael ei gynhyrchu yn y prawf. Gallwch chi gynhyrchu'r data hwn gan ddefnyddio anodiad @testSetup a dosbarth TestUtils i sicrhau nid yn unig bod gennych y data cywir, ond hefyd i sicrhau bod yr holl brofion yn cael eu rhedeg ar flwch tywod datblygwr heb unrhyw ofyniad am ddata.
  • Osgoi gweithrediadau null AKA null - Mae llawer o brofwyr yn defnyddio gweithrediadau AKA null no-op. Codau diwerth yw'r rhain nad ydyn nhw'n gwneud dim. Gan eu bod eisoes yn eich sylfaen cod, byddant yn ychwanegu at eich canran sylw.
  • Cyflawni Prawf Cyfochrog - Pan fyddwch chi'n dechrau profion o ryngwyneb defnyddiwr Salesforce neu'r Consol Datblygwr, bydd y profion yn rhedeg yn gyfochrog. Mae hon yn nodwedd bwysig gan ei bod yn cyflymu amser rhedeg profion. Fodd bynnag, dylech nodi y gall hyn arwain at faterion cynnen data ac os ydych yn amau ​​y gallai hyn ddigwydd, diffoddwch weithredu cyfochrog. Achosion mwyaf cyffredin materion cynnen data sy'n aml yn arwain at wallau UNABLE_TO_LOCK_ROW yw:
    • Pan fydd profion i fod i ddiweddaru'r un cofnodion ar yr un pryd. Mae diweddaru'r un cofnodion fel arfer yn digwydd pan nad yw profion yn creu eu data eu hunain.
    • Pan fydd profion yn cau mewn profion sy'n rhedeg yn gyfochrog ac maen nhw'n ceisio creu cofnodion sydd â gwerthoedd maes mynegai sy'n cyfateb. Bydd cam cau yn digwydd pan fydd 2 brawf rhedeg wedi ciwio i rolio data yn ôl (mae hyn yn digwydd pan fydd 2 yn profi cofnodion mewnbwn sydd â'r un gwerthoedd maes mynegai unigryw mewn gwahanol orchmynion).
    • I ddiffodd gweithredu prawf cyfochrog, ewch i Setup, nodwch Brawf Apex, ewch i ymgom Dewisiadau Gweithredu Prawf Apex, dewiswch Analluogi Profi Apex Cyfochrog, cliciwch ar OK.

Analluogi Profion Apex Cyfochrog

Llogi pro ar gyfer y swydd gan y bydd ganddo'r profiad a'r hyfforddiant sy'n angenrheidiol i wneud prawf da, sydd hefyd yn rhoi tawelwch meddwl i chi. Mae llogi pro yn caniatáu ichi ganolbwyntio ar eich busnes craidd. Mae hefyd yn arbed arian i chi gan na fydd angen tîm mewnol arnoch chi ar gyfer y swydd.

Beth ydych chi'n feddwl?

Mae'r wefan hon yn defnyddio Akismet i leihau sbam. Dysgwch sut mae eich data sylwadau yn cael ei brosesu.