Tech TutorBangla Web Documentation
Portfolio
HomeHTMLCSSTailwind CSSJavaScriptTypeScriptReactNext.jsNode.jsExpressSocket.IOExpoWordPressPostgreSQLPrismaPostgresNestJSMongoDBDockerTanStackTanStack TableRTK QueryGitGitHub
  • Expo Documentation40টি অধ্যায়
প্রযুক্তি নির্বাচন
HomeHTMLCSSTailwind CSSJavaScriptTypeScriptReactNext.jsNode.jsExpressSocket.IOExpoWordPressPostgreSQLPrismaPostgresNestJSMongoDBDockerTanStackTanStack TableRTK QueryGitGitHub
  • Expo Intro
  • Expo vs React Native
  • RN Basics
  • Environment Setup
  • Project Setup
  • Project Structure
  • App Config
  • Expo Router Intro
  • Stack Navigation
  • Tabs Navigation
  • Core Components
  • Styling & Flexbox
  • Safe Area
  • Scroll & Lists
  • Forms & State
  • AsyncStorage
  • Project: Task Actions
  • Project: Screens
  • Images & Assets
  • Icons & Fonts
  • Theming
  • Camera & Picker
  • Notifications
  • Location & Maps
  • SQLite
  • API & Fetch
  • Loading & Errors
  • Secure Store & Auth
  • Auth Session
  • AppState & Network
  • Performance
  • Debugging & Tests
  • Config & Env
  • Splash & Updates
  • EAS Build
  • EAS Update
  • Store Submission
  • Common Mistakes
  • Best Practices
  • Interview Questions
  1. Docs
  2. Expo
  3. Debugging ও जेস্ট tests
ExpoIntermediate

Debugging ও जेস্ট tests

Metro log, DevTools, jest + testing-library — workflow।

7টি অংশবাংলা ভাষায়
  • Metro bundler log — terminal-এ console output
  • React DevTools — components, hooks, props
  • Dev Menu — r reload, m dev menu (device-এ shake)
  • console filter — Application prefix-এ নেটিভ log

Unit test — jest + @testing-library/react-native:

__tests__/TaskItem.test.tsxtsx
tsx
import { render, fireEvent, screen } from "@testing-library/react-native";
import TaskItem from "../components/TaskItem";

test("toggle calls onToggle with task id", async () => {
  const onToggle = jest.fn();
  const task = { id: "1", title: "দুধ", done: false };

  render(<TaskItem task={task} onToggle={onToggle} />);
  fireEvent.press(screen.getByText("দুধ"));

  expect(onToggle).toHaveBeenCalledWith("1");
});
terminalbash
bash
npx jest

AsyncStorage-কে test-এ mock:

jest.mock("@react-native-async-storage/async-storage", () =>
  require("@react-native-async-storage/async-storage/jest/async-storage-mock")
);
debug-এর শুরুর প্রশ্ন

সমস্যা হলে প্রথম প্রশ্ন — "console-এ কী আসছে?"। Metro log-এ error stack পড়ে ডিবাগ শুরু করুন।

শেষ প্যারায় নিজে practice করুন — কোড কপি করে নিজের এডিটরে চালিয়ে দেখুন।
আগেরPerformance — re-render কমিয়ে, list দ্রুতপরেরapp.config.ts ও env variables
Tech Tutor

বাংলায় ওয়েব ডেভেলপমেন্ট ডকুমেন্টেশন শিখুন — ধাপে ধাপে।

Homeসব ডকুমেন্টেশনQuick Startআমার নোটস

© 2026 Tech Tutor. বাংলায় শিখুন, বাংলায় গড়ুন।

mdanamolhasan1998@gmail.com