All Projects → zendesk → laika

zendesk / laika

Licence: Apache-2.0 license
Log, test, intercept and modify Apollo Client's operations

Programming Languages

typescript
32286 projects
shell
77523 projects

Projects that are alternatives of or similar to laika

Mocktopus
Mocking framework for Rust
Stars: ✭ 179 (+80.81%)
Mutual labels:  mock, test, mocking, testing-tools
Prig
Prig is a lightweight framework for test indirections in .NET Framework.
Stars: ✭ 106 (+7.07%)
Mutual labels:  mock, test, mocking, testing-tools
Nsubstitute
A friendly substitute for .NET mocking libraries.
Stars: ✭ 1,646 (+1562.63%)
Mutual labels:  mock, test, mocking, testing-tools
Retromock
Java library for mocking responses in a Retrofit service.
Stars: ✭ 48 (-51.52%)
Mutual labels:  mock, mocking, testing-tools
react-apollo-client-testing-example
A React with Apollo Client application with a mocked GraphQL server and tested Query and Mutation components.
Stars: ✭ 17 (-82.83%)
Mutual labels:  apollo, apollo-client, mocking
Mimic
Seamless client side mocking
Stars: ✭ 380 (+283.84%)
Mutual labels:  mock, test, mocking
Hippolyte
HTTP Stubbing in Swift
Stars: ✭ 109 (+10.1%)
Mutual labels:  mock, test, mocking
Mockito
Most popular Mocking framework for unit tests written in Java
Stars: ✭ 12,453 (+12478.79%)
Mutual labels:  mock, mocking, testing-tools
Httpretty
Intercept HTTP requests at the Python socket level. Fakes the whole socket module
Stars: ✭ 1,930 (+1849.49%)
Mutual labels:  mock, mocking, testing-tools
jest-gql
✅🚀GraphQL based tests for Jest and Apollo
Stars: ✭ 33 (-66.67%)
Mutual labels:  apollo, apollo-client, testing-tools
mockingbird
🐦 Decorator Powered TypeScript Library for Creating Mocks
Stars: ✭ 70 (-29.29%)
Mutual labels:  mock, test, mocking
dextool
Suite of C/C++ tooling built on LLVM/Clang
Stars: ✭ 81 (-18.18%)
Mutual labels:  mock, test
eat
Json based scenario testing tool(which can have test for functional and non-functional)
Stars: ✭ 41 (-58.59%)
Mutual labels:  test, testing-tools
apollo-fragment
Use Apollo Link State to connect components to GraphQL fragments in the Apollo Cache
Stars: ✭ 112 (+13.13%)
Mutual labels:  apollo, apollo-client
carina
Carina automation framework: Web, Mobile, API, DB etc testing...
Stars: ✭ 652 (+558.59%)
Mutual labels:  test, testing-tools
dexopener
An Android library that provides the ability to mock your final classes on Android devices.
Stars: ✭ 112 (+13.13%)
Mutual labels:  mock, mocking
htest
htest is a http-test package
Stars: ✭ 24 (-75.76%)
Mutual labels:  mock, test
PixelTest
Fast, modern, simple iOS snapshot testing written purely in Swift.
Stars: ✭ 56 (-43.43%)
Mutual labels:  test, testing-tools
apollo-link-defer
Interface for creating asynchronous links.
Stars: ✭ 16 (-83.84%)
Mutual labels:  apollo, apollo-link
threat9-test-bed
No description or website provided.
Stars: ✭ 26 (-73.74%)
Mutual labels:  test, testing-tools

Laika logo

Try Laika on CodeSandbox

Test, mock, intercept and modify Apollo Client's operations — in both browser and unit tests!

Read the Medium article about Laika: Mock GraphQL Subscriptions with Laika — the only Apollo Client mocking tool you’ll need

Example recording output

Features

  • mock responses in either unit tests or browser tests (think Puppeteer or Cypress)
    • simulate error state
    • simulate loading state
    • simulate subscriptions (pushing data to the client at any given point)
  • it can work in production code without affecting the size of the bundle (laika is lazily loaded)
  • captures the variables that were called for a given operation for assertions
  • log all the data passing through from the network (or whatever Links are after this one)
  • record your user story
  • generate fixtures and working mock code for use in your tests
  • modify backend responses before they reach your components (e.g. to fuzz-test unexpected behavior)

Usage

Alternatives

  • MockedProvider - the official Apollo mocking tool designed for unit tests; offers no subscription mocking or recording functionality

Contribution

Thanks for your interest in our tool! Community involvement helps make our design system fresh and tasty for everyone.

Got issues with what you find here? Please feel free to create an issue.

If you'd like to take a crack at making some changes, please follow our contributing documentation for details needed to submit a PR.

Community behavior is benevolently ruled by a code of conduct. Please participate accordingly.

License

Copyright 2021 Zendesk

Licensed under the Apache License, Version 2.0

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].