Telegram Group & Telegram Channel
فیکسچر (fixure) در جنگو

از لینکدین Amir Hossein Khazaei

فیکسچر چیه؟
فیکسچر یه جور داده‌ی از پیش تعریف شده‌س که قبل از اجرای تست‌هامون به دیتابیس اضافه میشه. این داده‌ها میتونن هر چیزی باشن؛ از یه کاربر ساده گرفته تا یه محصول پیچیده توی فروشگاه آنلاینمون.

چرا بهش نیاز داریم؟

1️⃣ تست‌های دقیق‌تر: با داشتن داده‌های مشخص، می‌تونیم تست‌های دقیق‌تری بنویسیم و مطمئن بشیم که همه چیز طبق انتظار کار می‌کنه.

2️⃣ تست‌های سریع‌تر: به جای اینکه هر بار قبل از اجرای تست‌ها، داده‌های مورد نیازمون رو به صورت دستی وارد دیتابیس کنیم، با استفاده از فیکسچر این کار رو یک بار انجام میدیم و در تست‌های بعدی از همون داده‌ها استفاده می‌کنیم.

3️⃣ تکرارپذیری تست‌ها: با استفاده از فیکسچر، می‌تونیم مطمئن باشیم که هر بار که تست‌هامون رو اجرا می‌کنیم، نتیجه یکسانی خواهیم داشت.

ساختن یه فیکسچر
برای ساختن یه فیکسچر، یه فایل با پسوند json یا yaml ایجاد می‌کنیم و داده‌های مورد نظرمون رو به صورت ساخت‌یافته در اون تعریف می‌کنیم.

دستورات لازم و ساخت و لود کردن فیکسچر
1️⃣ ساختن یه فیکسچر با دستور dumpdata
دستور dumpdata بهت اجازه میده که داده‌های موجود در دیتابیس رو به صورت یک فایل JSON یا YAML خروجی بگیری. این فایل خروجی رو میتونی به عنوان فیکسچر استفاده کنی.
2️⃣ استفاده از فیکسچر با دستور loaddata
دستور loaddata بهت اجازه میده که داده‌های موجود در یک فایل فیکسچر رو به دیتابیس اضافه کنی.

مثال عملی / من کجا باهاش مواجه شدم؟
اضافه کردن شهر ها و استان های ایران به دیتابیس ، که بدیهیه که نمیخوام یکی یکی شهر هارو اضافه کنم😃 توی شرکت پلتفرم حقوقی ترازو که کار میکنم ، قراره لیست شهر هارو به کاربر نمایش بدیم
پس باید از یک جایی دیتای شهرهارو بگیرم و به دیتایس اضافه کنم.

⭕️ نکات کلیدی فیکسچر به زبان ساده
ساختار فیکسچر: فیکسچرت باید شبیه به همون چیزی باشه که توی دیتابیس داری. مثلاً اگه یه مدل محصول داری، فیکسچرت هم باید یه محصول رو تعریف کنه.
اسم‌گذاری فیکسچر: به فیکسچرت یه اسم بامعنا بده تا بفهمی توش چه داده‌هایی داری. مثلاً city.json یعنی توش اطلاعات شهرها هست.
مدیریت فیکسچر: وقتی تست‌های زیادی می‌نویسی، باید یه جوری فیکسچرهات رو مرتب کنی تا گم نشی. می‌تونی از فولدرهای مختلف یا ابزارهای مخصوص استفاده کنی.


جمع‌بندی
فیکسچر یه ابزار خیلی خفنه که بهت کمک می‌کنه تست‌های بهتری بنویسی. با فیکسچر، می‌تونی داده‌های از پیش تعریف شده‌ای رو به دیتابیس اضافه کنی و تست کنی که همه چیز درست کار می‌کنه. انگار داری یه محیط آزمایشی برای برنامه‌ت می‌سازی.



tg-me.com/djangolearn_ir/1041
Create:
Last Update:

فیکسچر (fixure) در جنگو

از لینکدین Amir Hossein Khazaei

فیکسچر چیه؟
فیکسچر یه جور داده‌ی از پیش تعریف شده‌س که قبل از اجرای تست‌هامون به دیتابیس اضافه میشه. این داده‌ها میتونن هر چیزی باشن؛ از یه کاربر ساده گرفته تا یه محصول پیچیده توی فروشگاه آنلاینمون.

چرا بهش نیاز داریم؟

1️⃣ تست‌های دقیق‌تر: با داشتن داده‌های مشخص، می‌تونیم تست‌های دقیق‌تری بنویسیم و مطمئن بشیم که همه چیز طبق انتظار کار می‌کنه.

2️⃣ تست‌های سریع‌تر: به جای اینکه هر بار قبل از اجرای تست‌ها، داده‌های مورد نیازمون رو به صورت دستی وارد دیتابیس کنیم، با استفاده از فیکسچر این کار رو یک بار انجام میدیم و در تست‌های بعدی از همون داده‌ها استفاده می‌کنیم.

3️⃣ تکرارپذیری تست‌ها: با استفاده از فیکسچر، می‌تونیم مطمئن باشیم که هر بار که تست‌هامون رو اجرا می‌کنیم، نتیجه یکسانی خواهیم داشت.

ساختن یه فیکسچر
برای ساختن یه فیکسچر، یه فایل با پسوند json یا yaml ایجاد می‌کنیم و داده‌های مورد نظرمون رو به صورت ساخت‌یافته در اون تعریف می‌کنیم.

دستورات لازم و ساخت و لود کردن فیکسچر
1️⃣ ساختن یه فیکسچر با دستور dumpdata
دستور dumpdata بهت اجازه میده که داده‌های موجود در دیتابیس رو به صورت یک فایل JSON یا YAML خروجی بگیری. این فایل خروجی رو میتونی به عنوان فیکسچر استفاده کنی.
2️⃣ استفاده از فیکسچر با دستور loaddata
دستور loaddata بهت اجازه میده که داده‌های موجود در یک فایل فیکسچر رو به دیتابیس اضافه کنی.

مثال عملی / من کجا باهاش مواجه شدم؟
اضافه کردن شهر ها و استان های ایران به دیتابیس ، که بدیهیه که نمیخوام یکی یکی شهر هارو اضافه کنم😃 توی شرکت پلتفرم حقوقی ترازو که کار میکنم ، قراره لیست شهر هارو به کاربر نمایش بدیم
پس باید از یک جایی دیتای شهرهارو بگیرم و به دیتایس اضافه کنم.

⭕️ نکات کلیدی فیکسچر به زبان ساده
ساختار فیکسچر: فیکسچرت باید شبیه به همون چیزی باشه که توی دیتابیس داری. مثلاً اگه یه مدل محصول داری، فیکسچرت هم باید یه محصول رو تعریف کنه.
اسم‌گذاری فیکسچر: به فیکسچرت یه اسم بامعنا بده تا بفهمی توش چه داده‌هایی داری. مثلاً city.json یعنی توش اطلاعات شهرها هست.
مدیریت فیکسچر: وقتی تست‌های زیادی می‌نویسی، باید یه جوری فیکسچرهات رو مرتب کنی تا گم نشی. می‌تونی از فولدرهای مختلف یا ابزارهای مخصوص استفاده کنی.


جمع‌بندی
فیکسچر یه ابزار خیلی خفنه که بهت کمک می‌کنه تست‌های بهتری بنویسی. با فیکسچر، می‌تونی داده‌های از پیش تعریف شده‌ای رو به دیتابیس اضافه کنی و تست کنی که همه چیز درست کار می‌کنه. انگار داری یه محیط آزمایشی برای برنامه‌ت می‌سازی.

BY جنگولرن


Warning: Undefined variable $i in /var/www/tg-me/post.php on line 283

Share with your friend now:
tg-me.com/djangolearn_ir/1041

View MORE
Open in Telegram


telegram Telegram | DID YOU KNOW?

Date: |

What Is Bitcoin?

Bitcoin is a decentralized digital currency that you can buy, sell and exchange directly, without an intermediary like a bank. Bitcoin’s creator, Satoshi Nakamoto, originally described the need for “an electronic payment system based on cryptographic proof instead of trust.” Each and every Bitcoin transaction that’s ever been made exists on a public ledger accessible to everyone, making transactions hard to reverse and difficult to fake. That’s by design: Core to their decentralized nature, Bitcoins aren’t backed by the government or any issuing institution, and there’s nothing to guarantee their value besides the proof baked in the heart of the system. “The reason why it’s worth money is simply because we, as people, decided it has value—same as gold,” says Anton Mozgovoy, co-founder & CEO of digital financial service company Holyheld.

What is Telegram Possible Future Strategies?

Cryptoassets enthusiasts use this application for their trade activities, and they may make donations for this cause.If somehow Telegram do run out of money to sustain themselves they will probably introduce some features that will not hinder the rudimentary principle of Telegram but provide users with enhanced and enriched experience. This could be similar to features where characters can be customized in a game which directly do not affect the in-game strategies but add to the experience.

telegram from ar


Telegram جنگولرن
FROM USA