Coding & Testing

Quality through discipline and verification

Coding Standards

  • Consistent naming, formatting, and documentation
  • Error handling and logging

Code Reviews & Static Analysis

  • Peer reviews (pair, PRs) for logic/maintainability.
  • Static analysis: linters, type checkers, security scanners (SAST).
  • Automate in CI to block regressions.

Testing Levels

  • Unit → Integration → System → Acceptance
  • Test pyramid: many unit, fewer integration, fewer e2e.

Testing Techniques

  • Black-box: equivalence partitioning, boundary value analysis, decision tables.
  • White-box: statement/branch/path coverage.
  • Test case template: ID, preconditions, steps, expected, actual, status.

Boundary Example

Input range: 1..100 → Pick 0,1,2 and 99,100,101
        

Coverage & Metrics

  • Coverage: lines, branches, conditions.
  • Defect metrics: defect density, MTTR.
  • Quality gates in CI for minimum coverage.

Types of Tests

  • Functional vs non-functional
  • Performance (load/stress), security (DAST/SAST), usability, accessibility.
  • Regression tests to guard against reintroducing bugs.

Quick Revision

  • Write tests first for critical logic.
  • Cover boundaries and error paths.
  • Automate checks in CI.