ইউনিট টেস্টিং, কোড কভারেজ এবং মাপদণ্ডের অধিকারগুলি পাওয়া বেশিরভাগ ক্ষেত্রে সঠিক সরঞ্জামগুলি বাছাই সম্পর্কে।
- পরীক্ষা-কাঠামো আপনার সমস্ত HUnit পরীক্ষা-কেস এবং কুইকচেক বৈশিষ্ট্যগুলিকে একটি জোতা থেকে চালানোর জন্য একটি স্টপ শপ সরবরাহ করে ।
- কোড কভারেজটি এইচপিসি সরঞ্জাম আকারে জিএইচসিতে অন্তর্নির্মিত ।
- মানদণ্ড কিছু দুর্দান্ত দুর্দান্ত বেঞ্চমার্কিং যন্ত্রপাতি সরবরাহ করে
আমি চলমান উদাহরণ হিসাবে একটি প্যাকেজ হিসাবে ব্যবহার করব যা আমি সবেমাত্র ইউনিট পরীক্ষা, কোড কভারেজ এবং মানদণ্ড দিয়ে সক্রিয় করতে শুরু করেছি:
http://github.com/ekmett/speculation
আপনি আপনার পরীক্ষাগুলি এবং মাপদণ্ডগুলি সরাসরি আপনার ক্যাবাল ফাইলে তাদের বিভাগগুলি যুক্ত করে এবং পতাকাগুলির পিছনে মাস্কিং করে সংহত করতে পারেন যাতে এটি তৈরি না করে যাতে আপনার গ্রন্থাগারের প্রত্যেক ব্যবহারকারীর অ্যাক্সেস থাকতে পারে (এবং নিজের জন্য ব্যবহার করতে চান) ) আপনার চয়ন করা পরীক্ষার সরঞ্জামগুলির সঠিক সংস্করণ।
http://github.com/ekmett/speculation/blob/master/speculation.cabal
তারপরে, আপনি কীভাবে আপনার পরীক্ষার স্যুটটি চালাতে পারেন সে সম্পর্কে বলতে পারবেন। ক্যাবলাল টেস্টের অস্তিত্ব এখনও নেই - তাই এই বছরের গ্রীষ্মের কোডের জন্য আমাদের একজন ছাত্র কাজ করছে! - আমাদের কাছে সর্বোত্তম প্রক্রিয়াটি হ'ল ক্যাবলের ব্যবহারকারী হুক প্রক্রিয়াটি কীভাবে ব্যবহার করবেন। এর অর্থ ক্যাবল সহ একটি 'কাস্টম' বিল্ডে স্যুইচ করা এবং একটি পরীক্ষা হুক স্থাপন করা। টেস্টহুকের একটি উদাহরণ যা পরীক্ষার কাঠামোয় লেখা একটি পরীক্ষা প্রোগ্রাম চালায় এবং তারপরে প্রোফাইলে এইচপিসি প্রয়োগ করে এটি এখানে পাওয়া যাবে:
http://github.com/ekmett/speculation/blob/master/Setup.lhs
এবং তারপরে আপনি একটি প্রোগ্রামে কুইকচেক এবং হুনিট পরীক্ষাগুলি বান্ডিল করতে পরীক্ষা-কাঠামো ব্যবহার করতে পারেন:
http://github.com/ekmett/speculation/blob/master/Test.hs
সেখানকার ক্যাবলাল ফাইল কোড কভারেজ টেস্টিং সক্ষম করার জন্য -fhpc চালু করার বিষয়ে সতর্কতা অবলম্বন করে, এবং তারপরে সেটআপ.এলএক্সের টেস্টহুকটি ম্যানুয়ালি এইচপিসি চালায় এবং এর আউটপুটটি আপনার ডিসে লিখে দেয়।
বেঞ্চমার্কিংয়ের জন্য গল্পটি কিছুটা বেশি ম্যানুয়াল, কোনও 'ক্যাবল বেঞ্চমার্ক' বিকল্প নেই। আপনি নিজের পরীক্ষার হুকের জন্য আপনার মানদণ্ডগুলি তারে ফেলতে পারেন, তবে আমি এগুলি হাতে চালাতে চাই, যেহেতু মানদণ্ডে গ্রাফিকাল রিপোর্টিংয়ের অনেকগুলি বিকল্প রয়েছে। উপরে বর্ণিত হিসাবে আপনি ক্যাবলাল ফাইলে আপনার মানদণ্ডগুলি যুক্ত করতে পারেন, তাদের পৃথক সংকলন পতাকাগুলি দিতে পারেন, একটি ক্যাবাল পতাকার পিছনে লুকিয়ে রাখুন এবং তারপরে সমস্ত ভারী উত্তোলন করতে মানদণ্ডটি ব্যবহার করুন:
http://github.com/ekmett/speculation/blob/master/Benchmark.hs
তারপরে আপনি কমান্ড লাইন থেকে আপনার বেনমার্কগুলি চালাতে পারেন এবং বেঞ্চমার্ক ফলাফলগুলি সহ পিপ-আপ কেডি উইন্ডোগুলি পেতে পারেন etc.
যেহেতু অনুশীলনে আপনি হ্যাশেল কোড বিকাশের সময় যে কোনও উপায়ে ক্যাবলে বাস করছেন, তাই আপনার সরঞ্জামচেইনটিকে এটির সাথে একীভূত করার পক্ষে অনেক অর্থ হয়।
সম্পাদনা করুন : ক্যাবল টেস্ট সমর্থন এখন বিদ্যমান। Http://www.haskell.org/cabal/release/cabal-latest/doc/users-guide/de વિકાસ ing- packages.html# test-suites দেখুন
cabal bench
এখন পাশাপাশি আছে।