প্রচুর ভেরিয়েবল রয়েছে যা আপনার পরিস্থিতিতে ব্যবহারের জন্য সেরা ইউনিট পরীক্ষার কাঠামো নির্ধারণ করবে। আপনার পছন্দকে প্রভাবিত করতে পারে এমন কিছু আইটেম হ'ল:
- লক্ষ্য ভাষা।
- লাইব্রেরি সমর্থন কি উপলব্ধ। যেমন libc বা এর একটি কাটা ডাউন সংস্করণ।
- লক্ষ্য অপারেটিং সিস্টেম। উদাঃ কিছুই নয়, ফ্রিআরটিওএস, কাস্টম।
বেশিরভাগ xUnit ধরণের ফ্রেমওয়ার্ক কার্যকারিতার কিছু বেস স্তর সরবরাহ করবে যা দরকারী হতে পারে। আমি কুনিটকে অতীতে কিছু সাফল্যের সাথে ব্যবহার করেছি । (উবুন্টু / ডেবিয়ানে libcunit1-dev প্যাকেজ)। বেশিরভাগ ফ্রেমওয়ার্কগুলিতে libc উপলব্ধ থাকতে হবে, কারও কারও কাছে অতিরিক্ত ওএস সমর্থন প্রয়োজন।
আরেকটি পরিবর্তনীয় যা মাত্র 3 লাইন দীর্ঘ, মিনুনিট ।
পরীক্ষাগুলি ডাউনলোড করার জন্য, চালনা করার এবং ফলস্বরূপ ফলাফল পাওয়ার জন্য উপযুক্ত পরিবেশ উপস্থাপনের জন্য আপনাকে দক্ষ হওয়া দরকার বলে লক্ষ্য হিসাবে মাইক্রোকন্ট্রোলার ব্যবহার করে ইউনিট টেস্টিং পেয়েছি। কেবল এমন জায়গায় প্ল্যাটফর্ম পাওয়া যা আপনাকে এটি করতে সক্ষম করবে এটি একটি বড় কাজ।
আমি গ্রহণ করেছি যা অন্য একটি পদ্ধতি গ্রহণ করেছে যা হোস্টে ইউনিট টেস্টিং করা, ড্রাইভার এবং অ্যাপ্লিকেশন কোডের মধ্যে বিমূর্ত স্তর প্রয়োগ করে। যেহেতু আপনি লক্ষ্যটির জন্য জিসিসি ব্যবহার করছেন তাই কোডটি হোস্টটিতেও সংকলন করা উচিত।
আপনার কাছে হোস্ট ওএস এবং এর সমস্ত সরঞ্জামগুলির সম্পূর্ণ সমর্থন থাকার কারণে কমপাইল হোস্টে পরীক্ষা করা এত সহজ। উদাহরণস্বরূপ, হোস্টটিতে পরীক্ষা করার সময়, আমার সাথে আমার ওয়্যারলেস ড্রাইভারের একটি উপহাস সংস্করণ রয়েছে যা সত্যিকারের ড্রাইভার হিসাবে লক্ষ্য হিসাবে চলে as হোস্ট সংস্করণ ইউডিপি প্যাকেটগুলি ওয়্যারলেস প্যাকেট স্থানান্তর অনুকরণের জন্য ব্যবহার করে, মক ড্রাইভার প্যাকেটগুলি ফেলে দেওয়ার ক্ষমতা সমর্থন করে যাতে আমি আমার প্রোটোকলগুলি পরীক্ষা করতে পারি।
আমি যে পণ্যটিতে কাজ করছিলাম সেগুলিতে একটি থ্রেডযুক্ত ওএস ব্যবহার করা হচ্ছিল, সুতরাং হোস্ট ওএসে পরীক্ষার জন্য বিমূর্ত স্তরটি পরিবর্তে পাইথ্রেড ব্যবহার করেছে।
নিখুঁত না হলেও, আপনার পক্ষে পরীক্ষা লিখতে ও চালানো যত সহজ হবে আপনি আরও পরীক্ষার কেস প্রয়োগ করার সম্ভাবনা তত বেশি। কোডটি বিভিন্ন প্ল্যাটফর্মে চালানোর আরেকটি সুবিধা হ'ল কোডটি পোর্টেবল কিনা তা পরীক্ষা করা। লক্ষ্য এবং হোস্ট আর্কিটেকচার পৃথক হলে আপনি দ্রুত এন্ডিয়ান ভুলগুলি বেছে নেবেন।
আমি এখন বিষয়বস্তু থেকে কিছুটা দূরে, তবে মনে করি এই ধারণাগুলি আপনার পরীক্ষার কাঠামো এবং পরীক্ষার পদ্ধতিগুলির চয়ন করতে সহায়তা করতে পারে।