প্রকল্প সম্পর্কে

GoogleTest হলো গুগলের সি++ টেস্ট ফ্রেমওয়ার্ক, যা পূর্বে আলাদা থাকা GoogleTest এবং GoogleMock প্রকল্পগুলোকে একত্রিত করে গঠিত। এটি একটি xUnit-ভিত্তিক ইউনিট টেস্টিং ফ্রেমওয়ার্ক যা স্বয়ংক্রিয়ভাবে টেস্ট খুঁজে বের করে এবং চালায়, ফলে টেস্টগুলোকে ম্যানুয়ালি নিবন্ধন করার প্রয়োজন হয় না। README-তে বর্ণিত মূল বৈশিষ্ট্যগুলোর মধ্যে রয়েছে অ্যাসার্শনের একটি সমৃদ্ধ সেট (সমানতা, অসমানতা, ব্যতিক্রম এবং আরও অনেক কিছু), ব্যবহারকারী-সংজ্ঞায়িত অ্যাসার্শন, কোড কীভাবে বের হয় তা যাচাই করার জন্য ডেথ টেস্ট এবং ব্যর্থতার পরেও টেস্ট রান চালিয়ে যাওয়ার সুবিধার জন্য ফ্যাটাল ও নন-ফ্যাটাল ব্যর্থতার সমর্থন। এটি বিভিন্ন ইনপুট দিয়ে বারবার চলা ভ্যালু-প্যারামিটারাইজড টেস্ট এবং বিভিন্ন ডেটা টাইপ দিয়ে চলা টাইপ-প্যারামিটারাইজড টেস্টেরও সমর্থন করে। টেস্ট চালানোর একাধিক বিকল্প রয়েছে, যার মধ্যে রয়েছে আলাদা আলাদা টেস্ট চালানো, নির্দিষ্ট ক্রমে টেস্ট চালানো এবং সমান্তরালভাবে টেস্ট চালানো। ডকুমেন্টেশন GitHub Pages-এ হোস্ট করা আছে, এবং GoogleTest Primer-কে শুরু করার জন্য একটি প্রস্তাবিত পয়েন্ট হিসেবে উল্লেখ করা হয়েছে। রিলিজ ১.১৮.০ উপলব্ধ, এবং ১.১৮.x ব্রাঞ্চের জন্য কমপক্ষে C++17 প্রয়োজন। প্রকল্পটি সমর্থিত কম্পাইলার, প্ল্যাটফর্ম এবং বিল্ড টুলের জন্য গুগলের Foundational C++ Support Policy অনুসরণ করে। README-তে উল্লেখ করা হয়েছে যে গুগল কন্টিনিউয়াস ইন্টিগ্রেশনের জন্য অভ্যন্তরীণ সিস্টেম ব্যবহার করে এবং Abseil-এর উপর একটি নির্ভরতা পরিকল্পিত আছে। README-তে উল্লেখিত উল্লেখযোগ্য ব্যবহারকারীদের মধ্যে রয়েছে Chromium প্রকল্প, LLVM কম্পাইলার, Protocol Buffers এবং OpenCV কম্পিউটার ভিশন লাইব্রেরি। সম্পর্কিত ওপেন-সোর্স প্রকল্পের মধ্যে রয়েছে GTest Runner (একটি Qt5 টেস্ট রানার এবং GUI), GoogleTest UI (একটি C# টেস্ট রানার), GTest TAP Listener (TAP প্রোটোকল আউটপুট), gtest-parallel (সমান্তরাল টেস্ট এক্সিকিউশন), এবং GoogleTest Adapter ও C++ TestMate-এর মতো VS Code এক্সটেনশন। Cornichon-কে একটি Gherkin DSL পার্সার হিসেবে উল্লেখ করা হয়েছে যা GoogleTest স্টাব কোড তৈরি করে। অবদান বিস্তারিত বিবরণ CONTRIBUTING.md-তে দেওয়া আছে।