callstack / react-native-testing-library

🦉 Simple and complete React Native testing utilities that encourage good testing practices.
https://callstack.github.io/react-native-testing-library/
MIT License
3.01k stars 264 forks source link

RFC: RNTL Cookbook #1624

Open mdjastrzebski opened 1 month ago

mdjastrzebski commented 1 month ago

RNTL Cookbook

RNTL is feature-complete, so the next big frontier is documenting and sharing best practices so our users can get the most out of using RNTL. Specifically, we could have a significant impact by:

I propose creating an RNTL Cookbook. It would be a documentation section where we would gather relatively short "recipes" for handling different concerns, tips & tricks, etc.

Proposed topics

Basic

Popular libraries

Navigation

State management

Other

Each documentation page should be brief and accompanied by an easy-to-understand example showcasing the essence of the recipe/technique. Additionally, I will create an examples/cookbook app based on a basic example app that will provide runnable code for all recipes.

We would invite our users to share their own best practices, tips & tricks, etc. so this becomes a crowdsource effort and a common knowledge base making our (developer) lives easier and more productive.

CC: @thymikee @pierrezimmermannbam @MattAgn @AugustinLF

pierrezimmermannbam commented 1 month ago

I love the idea! The topics all seem relevant, I would add a few more I think:

For librairies I'm not sure if it should be in our cookbook or on the librairies's side. We could contribute to other's libraries' documentation though. I think it makes more sense for instance that the recommended setup for testing reanimated is in their documentation

mdjastrzebski commented 1 month ago

@pierrezimmermannbam it would be awesome if you could share some of your practical knowledge in the topics you mentioned (or other).

As for libraries, the idea is not to replace their documentation, but rather link to that, with a brief TLDR version that would simplify the lives of most developers.

MattAgn commented 1 month ago

Love the idea and the topics as well! I'd be glad to help if i get the time. One area where i see lots of team struggle is testing strategy, where to place your integration test VS unit test VS E2E tests. What type of integration tests should you write etc (I often see integration tests that are very short and only test a very small part of feature)

mdjastrzebski commented 1 month ago

@MattAgn come and join the fun :-)

vanGalilea commented 6 days ago

Great idea, I'd love to think along :) I've mocked Jotai just a while ago.

I might be able to use some snippets from https://github.com/vanGalilea/react-native-testing

🚟 Navigating through screens with Expo Router. 🔚 E2E feel due to real navigation throughout screens. 📡 Mocking fetch calls.

WDYT?