proomt

Search

Search posts, papers, and topics

All posts

Atomic ObjectJames McConkey7 min readintermediate

Write End-to-End Tests in Your Backend’s Language

Summary

This article advocates writing end-to-end tests in the backend's language to leverage domain models and persistence tools for efficient test data setup. It details a strategy for structuring E2E tests with inline data creation, small helpers, and parallel execution considerations.

  • Write E2E tests in the backend's language (e.g., Python Playwright for FastAPI) to access domain models and persistence tools for data setup.
  • Keep test data setup explicit and inline within the test for readability, avoiding overly abstract scenario builders.
  • Build small, focused creation helpers for individual models, committing changes to make data immediately visible to the application.
  • Design tests for parallel execution by using UUIDs for uniqueness, explicit ownership, and filtering queries by workspace/assignment.

Engineers building full-stack applications, especially those owning the backend, will find this useful for structuring robust, maintainable, and fast end-to-end tests.

7/10

Related reading

  1. Article: Your Next DSL Author Is a Language Model

    Typed Domain Grounding (TDG) embeds a DSL inside a mainstream language the LLM already knows (e.g., Kotlin) and uses the host compiler as an oracle. The author describes five building blocks—embedding, choosing a host language with high training‑data frequency, compiler‑driven type safety, a generate‑compile‑repair loop, and an on‑demand teaching tool—and shows measured results from kUML, a Kotli…

    InfoQinfoq.com18 min
  2. Eliminating AI Code Hallucinations with TypeScript Compiler Diagnostics and TDD Loops

    The article shows how to replace raw TypeScript compiler output with a programmatic JSON feedback loop that merges diagnostics and Vitest test failures, feeding the structured data back to an LLM coding agent for self‑correction. It provides concrete code for extracting, enriching, validating, and de‑duplicating errors, and demonstrates token savings and deterministic iteration until compilation…

    SitePointsitepoint.com15 min
  3. One Java Model from the App to PostgreSQL

    Codename One introduces a backend runtime allowing a single Java model to define entities and validation rules for both client applications and the server. This approach aims to reduce duplication and ensure consistent data rules from the app to PostgreSQL.

    CodeName Onecodenameone.com7 min
  4. Lessons From Testing Distributed Systems

    This Jepsen blog post announces a retrospective talk on 13 years of testing distributed systems, linking to slides and a video. The post itself contains no detailed lessons or technical content.

    Jepsenjepsen.io1 min
  5. RecreationWorld: Scalable and Verifiable Environments for Hybrid Computer-Use Agents

    The paper presents RecreationWorld, a five‑platform framework that lets hybrid computer‑use agents learn by recreating the behavior of a running reference, and introduces RecreationBench, a 250‑task benchmark with programmatic and visual assertions. Experiments show GPT‑6 Astra reaches 58.1% overall but struggles with deeper programmatic tests, highlighting gaps in current agents.

    Hugging Face Daily Papersarxiv.org2 minpaper