প্রতি একবারে আমি নিজেকে পরীক্ষার স্থান নির্ধারণের বিষয়টি যাচাই করে দেখি এবং প্রতিবারই সংখ্যাগরিষ্ঠরা লাইব্রেরি কোডের পাশে পৃথক ফোল্ডার কাঠামোর প্রস্তাব দেয় তবে আমি দেখতে পেলাম যে প্রত্যেকবার যুক্তিগুলি একই রকম এবং এটি দৃinc়প্রত্যয়ী নয়। আমি আমার মডিউলগুলি মূল মডিউলগুলির পাশে কোথাও রেখেছি।
এটি করার প্রধান কারণ হ'ল রিফ্যাক্টরিং ।
আমি যখন জিনিসগুলি চারপাশে সরিয়ে রাখি তখন আমি কোডের সাথে পরীক্ষার মডিউলগুলি সরিয়ে নিতে চাই; টেস্টগুলি হারাতে সহজ যদি তারা আলাদা গাছে থাকে। আসুন সত্যই হোক, খুব শীঘ্রই বা পরে আপনি সম্পূর্ণ আলাদা ফোল্ডারের কাঠামো, যেমন জ্যাঙ্গো , ফ্লাস্ক এবং আরও অনেকগুলি দিয়ে শেষ করুন। যত্ন না থাকলে কোনটি ঠিক আছে।
আপনার নিজের জিজ্ঞাসা করা উচিত প্রধান প্রশ্ন:
আমি কি লিখছি:
- ক) পুনরায় ব্যবহারযোগ্য গ্রন্থাগার বা
- খ) কিছু আধা-পৃথক পৃথক মডিউল একসাথে বান্ডিল করার চেয়ে একটি প্রকল্প তৈরি করা?
যদি একটি:
একটি পৃথক ফোল্ডার এবং এর কাঠামো বজায় রাখার অতিরিক্ত প্রচেষ্টা আরও উপযুক্ত হতে পারে। আপনার পরীক্ষাগুলি উত্পাদনে নিযুক্ত হওয়ার বিষয়ে কেউ অভিযোগ করবে না ।
তবে টেস্টগুলি মূল ফোল্ডারগুলির সাথে মিশ্রিত হওয়ার পরে বিতরণ করা থেকে বাদ দেওয়া ঠিক তত সহজ; সেটআপ.পাইতে এটি রাখুন :
find_packages("src", exclude=["*.tests", "*.tests.*", "tests.*", "tests"])
যদি খ:
আপনি আশা করতে পারেন - আমাদের প্রত্যেকে যেমন করেন - আপনি পুনরায় ব্যবহারযোগ্য লাইব্রেরি লিখছেন তবে বেশিরভাগ সময় তাদের জীবন প্রকল্পের জীবনের সাথে আবদ্ধ থাকে। আপনার প্রকল্পটি সহজে বজায় রাখার দক্ষতার একটি অগ্রাধিকার হওয়া উচিত।
তারপরে যদি আপনি একটি ভাল কাজ করেন এবং আপনার মডিউলটি অন্য প্রকল্পের জন্য ভাল ফিট হয় তবে এটি সম্ভবত নতুন কপিরাইটে তৈরি করা হবে - কাঁটাযুক্ত নয় বা একটি পৃথক লাইব্রেরিতে তৈরি করা হবে - এবং একই ফোল্ডারের কাঠামোর পাশে যে পরীক্ষাগুলি রয়েছে তার পাশেই রয়েছে moving একটি পৃথক পরীক্ষার ফোল্ডার হয়ে গিয়েছিল এমন গণ্ডগোলের পরীক্ষায় ফিশিং আপের তুলনায় সহজ। (আপনি তর্ক করতে পারেন যে এটি প্রথম জায়গায় কোনও গোলমাল হওয়া উচিত নয় তবে আসুন এখানে বাস্তববাদী হয়ে উঠুন)।
সুতরাং পছন্দটি এখনও আপনার, তবে আমি যুক্তি দেব যে মিশ্রিত পরীক্ষাগুলি দিয়ে আপনি পৃথক ফোল্ডারের মতো সমস্ত জিনিস অর্জন করেন তবে জিনিসগুলিকে পরিষ্কার রাখার জন্য কম প্রচেষ্টা করে।