Method with100s 'i++'lines for fakecodecoverageOnly catchinggeneralcatch(Exception)Hard-codedIDUnjustifiedbig numberof RecordFlows onone sObjectExcessiveamount ofSystem.Debug()SOQLwithoutWHERE orLIMIT outsideBatchExcessivelack of.startTest()and.stopTest()No flags todeactivatetriggerdeclarativelyNo FaultPaths inFlowsMultipletriggerson onesObjectNo Test datafactory/builderSOQLsin loopExactly75% testcoverageNoassertionsin TestsCode intriggerinstead ofTriggerHandlerDMLsin loopGetting IDsby loopinstead ofMap(records)GiganticFlow insteadof multipleSubflowsHard-codingUI textinstead ofCustomLabelsHard-codedauthenticationinstead ofusing NamedCredentailNondescriptivevariablenames in FlowPublicRead/WriteOWDsCallingQueueable inloop withoutcontrolmechanism orloggingNo checkingcollectionemptinessbefore DMLMethod with100s 'i++'lines for fakecodecoverageOnly catchinggeneralcatch(Exception)Hard-codedIDUnjustifiedbig numberof RecordFlows onone sObjectExcessiveamount ofSystem.Debug()SOQLwithoutWHERE orLIMIT outsideBatchExcessivelack of.startTest()and.stopTest()No flags todeactivatetriggerdeclarativelyNo FaultPaths inFlowsMultipletriggerson onesObjectNo Test datafactory/builderSOQLsin loopExactly75% testcoverageNoassertionsin TestsCode intriggerinstead ofTriggerHandlerDMLsin loopGetting IDsby loopinstead ofMap(records)GiganticFlow insteadof multipleSubflowsHard-codingUI textinstead ofCustomLabelsHard-codedauthenticationinstead ofusing NamedCredentailNondescriptivevariablenames in FlowPublicRead/WriteOWDsCallingQueueable inloop withoutcontrolmechanism orloggingNo checkingcollectionemptinessbefore DML

Salesforce Development Practices Bingo - Call List

(Print) Use this randomly generated list as your call list when playing the game. There is no need to say the BINGO column name. Place some kind of mark (like an X, a checkmark, a dot, tally mark, etc) on each cell as you announce it, to keep track. You can also cut out each item, place them in a bag and pull words from the bag.


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
  1. Method with 100s 'i++' lines for fake code coverage
  2. Only catching general catch(Exception)
  3. Hard-coded ID
  4. Unjustified big number of Record Flows on one sObject
  5. Excessive amount of System.Debug()
  6. SOQL without WHERE or LIMIT outside Batch
  7. Excessive lack of .startTest() and .stopTest()
  8. No flags to deactivate trigger declaratively
  9. No Fault Paths in Flows
  10. Multiple triggers on one sObject
  11. No Test data factory/builder
  12. SOQLs in loop
  13. Exactly 75% test coverage
  14. No assertions in Tests
  15. Code in trigger instead of Trigger Handler
  16. DMLs in loop
  17. Getting IDs by loop instead of Map(records)
  18. Gigantic Flow instead of multiple Subflows
  19. Hard-coding UI text instead of Custom Labels
  20. Hard-coded authentication instead of using Named Credentail
  21. Nondescriptive variable names in Flow
  22. Public Read/Write OWDs
  23. Calling Queueable in loop without control mechanism or logging
  24. No checking collection emptiness before DML