Skip to content
Software Quality

Software Quality

Pages in this section

Jasmine Testing Framework Guide

Learn Jasmine: behavior-driven development, specs, matchers, spies, async testing, and unit testing JavaScript applications with the Jasmine framework.

✓ Live

Code Review Best Practices: A Complete Guide

Learn code review best practices: review checklist covering correctness, design, security, and performance. How to give constructive feedback using GitHub, GitLab, and Gerrit.

✓ Live

Technical Debt: What It Is and How to Manage It

Learn what technical debt is, the four types (deliberate vs accidental), the quadrant model, SonarQube measurement, and strategies to reduce debt in your codebase.

✓ Live

Code Smells: Common Signs of Poor Code Quality

Learn to detect and fix common code smells: long methods, large classes, feature envy, shotgun surgery, primitive obsession, and data clumps with before/after examples.

✓ Live

Static Code Analysis: Tools and Best Practices

Learn static code analysis: linters vs type checkers vs security scanners, tools per language (ESLint, Pylint, SonarQube), CI integration, handling false positives, and custom rules.

✓ Live

Separation of Concerns: A Comprehensive Guide

Learn Separation of Concerns (SoC): layers (presentation, business, data), MVC pattern, microservices vs monoliths, cross-cutting concerns, and practical examples in Python and JavaScript.

✓ Live

Test-Driven Development: Complete TDD Guide with Examples

Learn Test-Driven Development (TDD): the Red-Green-Refactor cycle, benefits and drawbacks, real-world examples in Python and JavaScript, and how to adopt TDD in your team.

✓ Live

Unit Testing: Complete Guide with Examples and Best Practices

Learn unit testing: what makes a good unit test, popular frameworks (Jest, pytest, JUnit), mocking strategies, code coverage metrics, and how to build a maintainable test suite.

✓ Live

Integration Testing: Strategies, Patterns, and Best Practices

Learn integration testing: strategies like big bang vs incremental, contract testing with Pact, database testing with testcontainers, and how to build a reliable integration test suite.

✓ Live

Performance Testing: Load, Stress, Soak, and Spike Testing Guide

Learn performance testing: load testing with k6 and JMeter, stress testing to find breaking points, soak testing for memory leaks, spike testing for sudden traffic surges, and how to interpret results.

✓ Live

Security Testing: SAST, DAST, Dependency Scanning, and OWASP Guide

Learn security testing: SAST vs DAST tools, dependency scanning with Snyk and Dependabot, OWASP Top 10 vulnerabilities, and how to build a security testing pipeline.

✓ Live

Software Quality Metrics: Code Coverage, Complexity, and Defect Tracking

Learn software quality metrics: code coverage, cyclomatic complexity, defect density, MTTR, MTBF, and how to use metrics to drive quality improvements without vanity targets.

✓ Live

Defect Management: Bug Lifecycle, Severity vs Priority, and Triage

Learn defect management: the bug lifecycle from discovery to closure, severity vs priority classification, triage process workflow, and how to build an effective defect tracking system.

✓ Live

Test Automation Frameworks: Selenium vs Cypress vs Playwright Compared

Compare test automation frameworks: Selenium WebDriver, Cypress, Playwright, and their ecosystems. Learn when to use each, CI integration patterns, and how to choose the right framework for your project.

✓ Live

Continuous Testing: Shift-Left, Test Pyramids, and CI/CD Pipeline Integration

Learn continuous testing: shift-left testing principles, test pyramid implementation, integrating tests into CI/CD pipelines, gating deployments on quality, and building a culture of testing.

✓ Live

Code Quality Tools: SonarQube, ESLint, Prettier, Checkstyle, and CodeClimate

Learn code quality tools: SonarQube for comprehensive analysis, ESLint and Prettier for JavaScript, Checkstyle for Java, CodeClimate for Git-integrated quality, and how to build an automated quality pipeline.

✓ Live