Testing
WebdriverIO Page Object Model Pattern
As WebdriverIO test suites grow, tests that embed raw selectors and action logic directly become a maintenance burden.
Testing
As WebdriverIO test suites grow, tests that embed raw selectors and action logic directly become a maintenance burden.
Testing
Testing authenticated APIs is unavoidable in any real project. Most production endpoints require authentication — Basic Auth, Bearer tokens, OAuth2, or API keys. REST Assured provides built-in support for common authentication schemes and the flexibility to handle anything custom. This guide covers the patterns you'll actually use. Basic
Testing
Running WebdriverIO tests locally is one thing. Getting them to run reliably in CI on every pull request is where the real value is.
Testing
E2E testing for GraphQL-powered apps requires different techniques than REST APIs. With REST, you intercept by URL (/api/users).
Testing
Apollo Server's executeOperation is excellent for most GraphQL testing.
Testing
Apollo Server is the most popular GraphQL server for Node.js. Its testing story is surprisingly good: executeOperation lets you run queries against an in-memory server without HTTP overhead, making integration tests fast and deterministic. This guide focuses on the practical patterns you need for testing Apollo Server 4
Testing
"Should we use Pact or integration tests?" is a question that comes up whenever a team starts decomposing a monolith into services.
Testing
Local pact files work fine when you have one consumer and one provider. As soon as you have five consumers and ten providers, file-sharing falls apart.
Testing
Contract testing with Pact shines brightest in Node.js microservice environments.
Testing
Testing GraphQL APIs is fundamentally different from testing REST. With REST, each endpoint has a specific contract.
Testing
GraphQL schema evolution is a double-edged sword. The schema gives you a formal contract between clients and servers.
Testing
Contract tests are only valuable if they run automatically and block bad deployments. A pact that exists locally but isn't in your CI pipeline is theater.