পরীক্ষা চালিত বিকাশ বোঝায় কোডের আগে পরীক্ষা লিখতে এবং একটি নির্দিষ্ট চক্র অনুসরণ করে :
- পরীক্ষা লিখুন
- পরীক্ষা পরীক্ষা (রান)
- প্রোডাকশন কোড লিখুন
- পরীক্ষা পরীক্ষা (রান)
- উত্পাদনের কোড সাফ করুন
- পরীক্ষা পরীক্ষা (চালানো)
যতদূর আমি উদ্বিগ্ন, এটি কেবল তখনই সম্ভব যখন আপনার বিকাশ সমাধানটি আপনাকে খুব দ্রুত উত্পাদন এবং পরীক্ষার কোডের মধ্যে স্যুইচ করতে দেয় এবং একটি নির্দিষ্ট উত্পাদন কোড অংশের জন্য পরীক্ষাটি খুব দ্রুত সম্পাদন করতে দেয়।
এখন, যখন সেঃ জন্য ইউনিট টেস্টিং ফ্রেমওয়ার্ক ++, (আমি Bost.Test এটিএম ব্যবহার করছি।) প্রচুর অস্তিত্ব যে আছে বলে মনে হচ্ছে না নেই সত্যিই কোন ভদ্র (জন্য বিদ্যমান নেটিভ সি ++ ) ভিসুয়াল স্টুডিও (প্লাগইন) সমাধান TDD- এ তোলে নির্ধারিত ফ্রেমওয়ার্ক নির্বিশেষে চক্র বহনযোগ্য।
"বিয়ারেবল" এর অর্থ হ'ল ম্যানুয়ালি আলাদা টেস্টিং প্রজেক্ট স্থাপন না করেই নির্দিষ্ট সিপিপি ফাইলের জন্য পরীক্ষা চালানো এক-ক্লিকের ক্রিয়া Bea "বিয়ারেবল" এর অর্থ একটি সাধারণ পরীক্ষা শুরু হয় (লিঙ্কিং!) এবং খুব দ্রুত চলে ।
সুতরাং, ভিজ্যুয়াল স্টুডিওর সাথে দেশীয় সি ++ বিকাশের জন্য টিডিডি চক্রকে কী সরঞ্জামগুলি (প্লাগিন) এবং কৌশলগুলি বাইরে রয়েছে?
দ্রষ্টব্য: ফ্রি বা "বাণিজ্যিক" সরঞ্জাম দিয়ে আমি ভাল আছি।
দয়া করে : কোনও কাঠামোর সুপারিশ নেই। (যদি না ফ্রেমওয়ার্কটিতে ডেডিকেটেড ভিজ্যুয়াল স্টুডিও প্লাগইন থাকে এবং আপনি প্লাগইনটি সুপারিশ করতে চান না))
সম্পাদনা দ্রষ্টব্য : এখন পর্যন্ত উত্তরগুলি কীভাবে ইউনিট পরীক্ষার কাঠামোকে ভিজ্যুয়াল স্টুডিওতে সংহত করতে পারে তার লিঙ্ক সরবরাহ করেছে। আপনার প্রথম পরীক্ষাগুলি কীভাবে সংকলন করতে এবং ইউটি কাঠামোটি সংকলন করতে এবং কীভাবে পেতে হয় তার সংস্থান কম-বেশি বর্ণনা করে। এই প্রশ্নটি সম্পর্কে এটি নয় । আমি মতামত করছি যে সত্যই উত্পাদনশীলভাবে কাজ করার জন্য, ম্যানুয়ালি রক্ষণাবেক্ষণ (!) এ ইউনিট টেস্ট করা, আপনার প্রোডাকশন ক্লাস থেকে পৃথক ভিসিপ্রিজি এত বেশি ওভারহেড যুক্ত করবে যে টিডিডি "সম্ভব নয়"। যতদূর আমি অবগত, আপনি ইউনিট টেস্ট এবং টিডিডি সক্ষম করার জন্য কোনও জাভা বা সি # জিনিসে অতিরিক্ত "প্রকল্পগুলি" যুক্ত করবেন না এবং একটি ভাল কারণে। এটা করা উচিত সি ++ সহ সঠিক সরঞ্জাম দেওয়া সম্ভব হবে তবে টিডিডি / সি ++ / ভিএস এর জন্য খুব কম সরঞ্জাম রয়েছে বলে মনে হচ্ছে (এই প্রশ্নটি সম্পর্কে)।
আশেপাশে গুগলিং করে, আমি একটি সরঞ্জাম পেয়েছি, ভিজ্যুয়ালসেটর , যা সঠিক দিকে লক্ষ্য করছে বলে মনে হচ্ছে। তবে আফিক্স, এটি ব্যাপকভাবে ব্যবহৃত হচ্ছে বলে মনে হয় না (সিপিউউনিট, বুস্ট.টেষ্ট ইত্যাদির তুলনায়)।
সম্পাদনা: আমি এই প্রশ্নের প্রসঙ্গে একটি মন্তব্য যুক্ত করতে চাই। আমি মনে করি এটি সমস্যার রূপরেখার (অংশের) একটি ভাল সংক্ষিপ্তসার করে: ( বিলি ওনেলি মন্তব্য করেছেন )
ভিজ্যুয়াল স্টুডিওটি "বিল্ড স্ক্রিপ্টগুলি" ব্যবহার করে না যা ব্যবহারকারীর দ্বারা যথাযথ সম্পাদনাযোগ্য। একটি প্রকল্প একটি বাইনারি উত্পাদন করে। তদুপরি, জাভার এমন সম্পত্তি রয়েছে যা জাভা কখনই একটি সম্পূর্ণ বাইনারি তৈরি করে না - আপনি যে বাইনারি তৈরি করেন তা বর্গ ফাইলগুলির একটি জিপ। অতএব পৃথকভাবে JAR একসাথে (যেমন 7z ব্যবহার করে) সংকলন করা সম্ভব। সি ++ এবং সি # উভয়ই তাদের বাইনারিগুলিকে লিঙ্ক করে তাই সাধারণভাবে বলতে গেলে আপনি এর মতো স্ক্রিপ্ট লিখতে পারবেন না। আপনি যে নিকটতম পেতে পারেন তা হ'ল পৃথকভাবে সমস্তগুলি সংকলন করা এবং তারপরে দুটি লিঙ্কিং করা (একটি উত্পাদনের জন্য, একটি পরীক্ষার জন্য)।
7z
) সংকলন করা সম্ভব । সি ++ এবং সি # উভয়ই তাদের বাইনারিগুলিকে লিঙ্ক করে তাই সাধারণভাবে বলতে গেলে আপনি এর মতো স্ক্রিপ্ট লিখতে পারবেন না। আপনি যে নিকটতম পেতে পারেন তা হ'ল পৃথকভাবে সমস্তগুলি সংকলন করা এবং তারপরে দুটি লিঙ্কিং করা (একটি উত্পাদনের জন্য, একটি পরীক্ষার জন্য)।
As far as I am aware, you do not add extra "projects" to a Java or C# thing to enable Unit Tests and TDD,
<- আমি মনে করি এটি সঠিক নয়। আপনার সাধারণত সি # তেও একাধিক প্রকল্প রয়েছে; আপনি নিজের পরীক্ষার কোডটি আপনার প্রযোজনা বাইনারিতে প্রেরণ করতে চান না।