PaperFoxPaperFox
Engineering

Automated Testing

Automated tests ensure PaperFox reliability and quality

PaperFox maintains a comprehensive automated test suite to ensure reliability and catch issues before they reach production.

Test Coverage

TypeTestsDurationCoverage
Unit Tests500+~10 secondsUtilities, permissions, business logic
E2E Tests200+~40 minutesFull user workflows
Total700+~40 minutesFull stack

What This Means

  • Reliable releases: Every code change is validated against 700+ tests before deployment
  • Rapid iteration: Unit tests run in seconds, enabling fast development cycles
  • User journey coverage: E2E tests simulate real users performing actual workflows
  • Regression prevention: Automated checks catch bugs before they affect users

Unit Tests

Fast, focused tests covering core functionality:

  • Utilities - Date/time handling, string manipulation, file operations
  • Permissions - Role-based access control validation
  • Business Logic - Phase management, decision handling, notifications
  • Data Validation - Country codes, email formats, form schemas

E2E Tests

Browser-based tests simulating complete user workflows:

  • Authentication - Sign in, sign up, password reset
  • Submissions - Paper submission, file uploads, revisions
  • Reviews - Assignment, submission, delegation
  • Conference Management - Track setup, deadlines, notifications
  • Website Builder - Page creation, content editing
  • Program Builder - Sessions, schedule management
  • Registration - Ticket purchase, payment processing
  • Forum - Thread creation, moderation
  • Support System - Ticket creation, replies, status changes

CI/CD Integration

Every pull request automatically runs:

  1. TypeScript compilation
  2. ESLint code quality checks
  3. Full unit test suite

Code cannot merge without all tests passing.

Testing Tools

On this page