تابستون داره تموم میشه ها، فرصت‌ها محدودن کلی آفر جذاب در کمپین تابستون🔥👇
۰ ثانیه
۰ دقیقه
۰ ساعت
۵ محسن محمدخانی
تست توابع درون کامپونت
جامعه جاوا اسکریپت ایجاد شده در ۱۶ بهمن ۱۴۰۰

سلام

در کامپونت زیر برای اینکه بتونیم تابع generateHiTag تست کنیم باید در خارج از کامپونت تعریفش کنیم و اونو رو export بگیرم 

آیا اینجور نوشتن تابع کار درستی هستش؟

import React from "react";
const generateHiTag = () => {
  return <h2>Hi EveryBodyh2>;
};
const TestCom = () => {
  return <div>{generateHiTag()}div>;
};
export { TestCom, generateHiTag };

سلام خدمت شما. بستگی به استفاده مجدد از اون تابع داره. اگر اون تابع قراره استفاده مجدد بشه می‌تونید خارج از خود این کامپوننت تعریفش کنید و تستش رو هم انجام بدید. اگر قرار نیست بیرون استفاده بشه و صرفا در حهت خوانایی بیشتر و کد تمیز‌تر اضافه شده به عنوان implementation details اون کامپوننت اصلی شناخته میشه و نیازی نیست به صورت جداگانه تست بشه.

کیوان علی محمدی ۱۷ بهمن ۱۴۰۰، ۰۹:۱۵

به نظر من اگر اون تابع فقط در اون کامپونت کارایی داشته باشه , باید براش تست نوشت

نظر شما این نیست؟


محسن محمدخانی ۱۷ بهمن ۱۴۰۰، ۱۰:۰۹

خب دلیلتون برای این کار چیه؟

کیوان علی محمدی ۱۷ بهمن ۱۴۰۰، ۱۰:۳۱

ما باید برای همه توابع تست بنویسیم

و کد همیشه میل به بی نظمی و تولید باگ و خطا داره

اگر براش تست ننوبسیم بعدا چطور مطمئن بشیم که درست کار میکنه؟

محسن محمدخانی ۱۷ بهمن ۱۴۰۰، ۱۰:۳۴

اینکه کد همیشه میل به بی نظمی و تولید باگ داره دلیل نمیشه ما بیایم برای هر تابعی تست بنویسیم. ما کلا در دنیای کد با observable behaviour و implementation details مواجه هستیم.چیزی که باید تست بشه اون observable behaviour هست و این تابع در داخل کامپوننت implementation details محسوب میشه.

کیوان علی محمدی ۱۷ بهمن ۱۴۰۰، ۱۰:۵۴