.NET এর জন্য সেরা ইউনিট পরীক্ষার কাঠামো কী এবং কেন? [বন্ধ]


26

আমার কাছে মনে হচ্ছে যে অন্যান্য বিকল্পগুলি বিবেচনা না করেই সবাই নুনিট ব্যবহার করে । আমি মনে করি এটি কারণ:

  • প্রত্যেকে ইতিমধ্যে এটির সাথে পরিচিত তাই তাদের কোনও নতুন এপিআই শিখতে হবে না।
  • এটি ইতিমধ্যে NUnit এর সাথে কাজ করার জন্য তাদের অবিচ্ছিন্ন ইন্টিগ্রেশন সার্ভারের সাথে সেট আপ করা হয়েছে।

আমি কি এই সম্পর্কে ভুল?

আমি সম্প্রতি আমার নিজের একটি প্রকল্পে xUnit ব্যবহার করার সিদ্ধান্ত নিয়েছি এবং আমি এটি পছন্দ করি! এটি আমার কাছে আরও বেশি জ্ঞান অর্জন করে এবং ধারণাগতভাবে এটি NUnit থেকে একটি নির্দিষ্ট পদক্ষেপের মতো বলে মনে হয় seems

আমি কোন কাঠামোটি আসলে সবচেয়ে ভাল - সে সম্পর্কে মতামত শুনতে চাই - এটি শিখতে বা আপনার স্বয়ংক্রিয় পরীক্ষার পুনরায় কনফিগার করার বিষয়টি বিবেচনায় না নেওয়া।


6
সেরা সংজ্ঞা দিন। সস্তা? কোড সহজ? পরীক্ষায় কোডের কয়েকটি লাইন? stackoverflow.com/questions/680298/…
আমির রেজায়ে

দুঃখিত, আমি বোঝাতে চেয়েছি সবচেয়ে শক্তিশালী, স্থিতিশীল এবং স্বজ্ঞাত, যাই হোক না কেন। আমি মতামত এবং কারণে জিজ্ঞেস করছি কেন । আমি উত্তরদাতার কল্পনাতে 'সেরা' রেখেছি কারণ আমিও দেখতে চাই যে এই দিকগুলির মধ্যে কোনটি মানুষের পক্ষে গুরুত্বপূর্ণ।
কেউ নেই

2
আপনি যদি আপনার প্রশ্নটির উচ্চারণ করতে পারেন তবে তা ঠিক আছে, অন্যথায় এটি কেবল একটি "এক্সের তালিকা" প্রশ্নের যা গঠনমূলক নয়। দেখুন গঠনমূলক ইতিবাচক প্রশ্নের জন্য ছয় নির্দেশিকা
ChrisF

2
"সেরা" জিজ্ঞাসা করার জন্য একটি বোবা জিনিস - কারণ খুব কমই খুব কমই এককটি সেরা পাওয়া যায় কারণ এটি প্রাসঙ্গিকের উপর নির্ভর করে এবং আংশিক কারণ এটি অনিবার্যভাবে কিছুটা ডিগ্রীগত হতে পারে।
মার্ফ

10
Murph। প্রথমত, এই সাইটটি বিষয়গত প্রশ্নের জন্য। দ্বিতীয় আমি মতামত চাইছি তাই আমি অন্যদের 'সেরা' এর ব্যাখ্যা দেখতে চাই। আর আমাকে বোবা ডাকো না।
কেউ নেই

উত্তর:


15

MSTest

আমি ব্যক্তিগতভাবে এমএসটিস্ট ব্যবহার করি। নুনিট সত্যিই দুর্দান্ত, তবে ভিএস 2010-এ, এমএসটিস্ট ইতিমধ্যে আইডিইতে সম্পূর্ণরূপে সংহত হয়েছে এবং এর জন্য পূর্ণ প্রকল্পের টেম্পলেট রয়েছে। .NET- এর জন্য, আপনি যদি 2010 ব্যবহার করছেন, তবে আমি মনে করি এমএসটিস্টটি যাবার উপায় (ভিএস 2008-তে এমএসটিস্ট মনে হয় না) কেবল কোড কভারেজ, পরীক্ষার রানার এবং আপনার জন্য উপলব্ধ অন্যান্য সরঞ্জামগুলির জন্য বাক্সের বাইরে. (আপনি যদি কোডআরশ বা আর # ব্যবহার করেন, তবে তাদের অন্যান্য টেস্টিং ফ্রেমওয়ার্কের জন্য সত্যই দুর্দান্ত পরীক্ষা চালক / সরঞ্জাম রয়েছে)

সম্পাদনা: আমি তখন থেকে এক্স ইউনাইটে চলে এসেছি। : ডি


আমি এমবিউনিত / গালিও এবং এই উত্তর উভয়ের পক্ষে ভোট দিয়েছি। এমবিউনিত / গ্যালিও কেবল ভাল, তবে এমএসটিস্ট পরীক্ষা চালানোর ক্ষেত্রে তাদের হাত বেঁধে রাখা হয়েছে that নেট লাইব্রেরিটি চূড়ান্ত এবং প্রসারণযোগ্য নয়। তবে, যদি আপনাকে জিইআইআই অটোমেশন করতে হয়, তবে কোডেড ইউআই এবং কুয়েট কোডপ্লেক্স / ডকুমেন্টেশন এমএসটিস্টের শীর্ষে কাজ করবে, সুতরাং সেগুলি ব্যবহারের জন্য কেবল একজন রয়েছে।
চাকরী

2
এমএসটিস্টের সাথে আমার যে সমস্যাটি রয়েছে তা হ'ল এটি কমান্ড লাইন টেস্টিং স্থানীয়ভাবে সমর্থন করে না, আপনি যখন সিআইয়ের মাধ্যমে ইউনিট চালাতে চান এটি একটি সমস্যা হতে পারে।
CmdrTallen

1
নুনিত এখন পুরোপুরি ভিএস-তে সম্পূর্ণ সংহত হতে চলেছে?
বিকেএসপুরগাঁও

হ্যাঁ, এটা। এটি এখন প্রায় 6 বছরের পুরানো বিবেচনা করে আমি ব্যক্তিগতভাবে নুনিট এবং তারপরে এখন এক্স ইউনেটে চলে এসেছি। উভয়ের (এবং অন্যদের) নুগেট প্যাকেজ রয়েছে যা এমএসটিস্টের মতো একই ভিএস কার্যকারিতাটি আলোকিত করতে অ্যাডাপ্টার হিসাবে কাজ করে। সত্যি বলতে, এমএসটিস্ট সম্ভবত এই মুহুর্তে তালিকার নীচে রয়েছে। আমি এক্স ইউনিত বা নুনিটকে ভোট দেব। আজকাল উভয়ই দৃ solid়, রক্ষণাবেক্ষণ এবং আধুনিক।
রায়ান হেইস

14

আমি বেশ কয়েক বছর আগে গ্যালিও / এমবিউনিত ব্যবহার শুরু করেছি । এবং এটি সরবরাহ করে এমন বৈশিষ্ট্য এবং রত্নগুলি কেবল এতই শক্তিশালী যে আমি কখনই আমার পছন্দের জন্য অনুশোচনা করি না। আসলে, আমি এখন গ্যালিও ওএসএস প্রকল্পের উন্নয়ন দলের অংশ; তাই আমি এটিকে আরও ভয়ঙ্কর করে তুলতে অবদান রাখতে পারি।

  • এমবিউনিতের অনেক শক্তিশালী বৈশিষ্ট্য রয়েছে যা কেবলমাত্র আমার বিকাশকারী জীবনকে সহজ করে তোলে (চুক্তি যাচাইকারী, পরীক্ষার কারখানাগুলি, কাঠামোগত সাম্য তুলনাকারী, সংযুক্তি পরীক্ষা, ডেটা জেনারেশন ফ্রেমওয়ার্ক, পাঠ্য পৃথকীকরণ, এক্সএমএল প্রতিস্থাপন, এক্সটেনশন পয়েন্টস ইত্যাদি))
  • গ্যালিও একটি সুন্দর রিপোর্টিং টুলিংয়ের সাথে আমার সমস্ত পরীক্ষা চালানোর জন্য একটি ধারাবাহিক প্ল্যাটফর্ম সরবরাহ করে। আমি এই সত্যটিও পছন্দ করি যে আমি অন্যান্য ওএসএস প্রকল্পগুলির পরীক্ষাগুলি সংহত করতে পারি যা এমবিউনিত ব্যবহার করে না এবং কেবল এগুলি চালিয়ে চলেছি। অনেকগুলি তৃতীয় পক্ষের সরঞ্জামগুলির মধ্যে বিরামবিহীন সংহতকরণও সুবিধাজনক (আর #, পিওএসএইচ, ডটকভার, ইত্যাদি) এবং অবকাঠামোর এক্সটেনসিবিলিটি আশ্চর্যজনক (উদাহরণস্বরূপ, আমি একটি নেটিভ অব্যবহৃত সি ++ টেস্টিং ফ্রেমওয়ার্কের জন্য একটি পরীক্ষামূলক অ্যাডাপ্টার লিখতে শেষ করেছি এটি শীঘ্রই ভবিষ্যতে প্রকাশের অংশ হবে)

উইকি অবশ্যই আবিষ্কার Gallio এবং MbUnit v3 এর একটি ভাল প্রথম ধাপ। এটি সিলে কিছু অধ্যায় মিস করে তবে এটি ইতিমধ্যে শান্ত।


কাঠামোগত সমতা তুলনামূলক এবং ডেটা জেনারেশন কাঠামো দুর্দান্ত শোনায়। এমবিউনিত কি ডেটা-চালিত টেস্টিং করতে পারে - যেমন সিএসভি / এক্সএসডি ফাইলগুলি পড়তে এবং সেগুলি পরীক্ষার পদ্ধতির আর্গুমেন্ট হিসাবে ব্যবহার করতে পারে? এটি আমার জন্য জুনিটের অন্যতম প্রধান আকর্ষণ।
কেউ নেই

অবশ্যই। ডায়েট-চালিত পরীক্ষার প্রবর্তনকারী। নেট এর প্রথম পরীক্ষামূলক কাঠামো ছিল এএসএইচ এমবিউনিত। এটি পরীক্ষার প্যারামিটারগুলি অভ্যন্তরীণ ([সারি], [কলাম], ইত্যাদি) এবং বহিরাগত ([সিএসভিডাটা], [এক্সএমএল ডেটা], ইত্যাদি) ডেটা উত্সগুলিতে আবদ্ধ করতে পারে। আরও বিশদ এখানে: gallio.org/wiki/doku.php?id=mbunit:data-driven_testing
ইয়ান ট্রেভিন

গ্যালিও এবং ভিজ্যুয়াল স্টুডিওতে তারা যে পারফরম্যান্সের সমস্যা নিয়েছিল তা কি তারা ঠিক করেছে? আমাদের জন্য ডিল কিলার ছিল।
ওয়াইয়াট বার্নেট

আমি যখন একটি ছোট সংস্থার জন্য কাজ করেছি তখন আমি এমবিউনিত ব্যবহার করেছি এবং এটি দুর্দান্ত ছিল! আমি পরে এমএসটিস্ট ব্যবহার করেছি কারণ আমার ছিল এবং এটি ঠিক আছে। আমি এখনও প্রকল্প সেটিংস কনফিগার করার চেয়ে সুস্পষ্ট কোড লেখা পছন্দ করি। কর্পোরেট সমর্থন যদিও এমএসটিস্টকে সহায়তা করে। নকশাটি কুরুচিপূর্ণ বা সুন্দর হোক না কেন, আপনি জানেন যে এমএসএফটি থেকে যা আসে তা ভালভাবে পরীক্ষা করা হবে।
জব

@ ইয়ানট্রেভিন গ্যালিও / এমবিউনিতের অবস্থা কী? আমি গুগল কোড সংগ্রহস্থলটির দিকে চেয়েছি এবং এতে কোনও সাম্প্রতিক পরিবর্তন হয়েছে বলে মনে হচ্ছে না। উন্নয়ন কোথাও ঘটছে নাকি প্রকল্পটি থেমে আছে?
ওয়েসলি উইজার

9

একটি বাছাই করা এবং এটি ব্যবহার করা সম্ভবত এখানে সবচেয়ে গুরুত্বপূর্ণ পদক্ষেপ।

ব্যক্তিগতভাবে আমি কয়েকটি কারণে NUnit নির্বাচন করব । প্রথম এবং সর্বাগ্রে হ'ল সরঞ্জাম সমর্থন। ভিজ্যুয়াল স্টুডিও 2010 এর জন্য একটি ফ্রি অ্যাড-ইন রয়েছে এবং সমস্ত বড় 3 য় পক্ষের প্লাগইন এটি সমর্থন করে। প্রতিটি একক বিল্ড সিস্টেম, পরীক্ষার কভারেজ ইউটিলিটি এবং সিআই সার্ভার এটি সমর্থন করে। প্লাগিন ছাড়া অনেক ক্ষেত্রে। তথ্য চালিত পরীক্ষা উত্তরাধিকার, বিমূর্ত পরীক্ষা ক্লাস, জেনেরিক পরীক্ষা ক্লাস, সেটআপ, নিচে, বিছিন্ন ইত্যাদি কতক আমরা আছে - কোড পর্যায়ে, এটা ঠিক এই সময়ে কোন দৃশ্যকল্প সম্পর্কে সব ব্যবস্থা করতে সক্ষম xUnit কারণ NUnit খুব পেয়েছিলাম সমৃদ্ধ বৈশিষ্ট্য এবং শক্তিশালী।

নুনিটের বাইরে, আমি মনে করি আপনি এমবিউনিত + গ্যালিওর জন্য ইয়ান দ্বারা উল্লিখিত হিসাবে একটি সুন্দর শালীন যুক্তি বানাতে পারেন - এটি একটি খুব শক্ত কাঠামো। আপনার যাকে সম্ভব এড়ানো উচিত এটি এমএসটিস্ট হতে পারে, যার কয়েকটি মারাত্মক ত্রুটি রয়েছে IMHO O ত্রুটিগুলি আপনার পরীক্ষার শ্রেণীর কিছু প্রতিবন্ধকতা যেমন কোনও উত্তরাধিকার নেই এবং পেশাদার বা আরও ভাল ভিজ্যুয়াল স্টুডিও এসকিউগুলিতে নির্ভরতা as পরীক্ষা চালানোর জন্য বিল্ড সার্ভারে ভিজ্যুয়াল স্টুডিও ইনস্টল করা প্রয়োজন সহ requ


0

একটি কারণ হ'ল নুনিট এক্স ইউনাইটের চেয়ে শিল্পের মান বেশি হয়ে ওঠে। তবে ব্যক্তিগতভাবে আমি xunit পছন্দ করি।

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.