ইউনিট পরীক্ষায় আপনি কীভাবে পরিচালনকে "বিনিয়োগ" করতে রাজি করেন?


45

কীভাবে আপনি আপনার পরিচালককে ইউনিট পরীক্ষা দিতে দিতে রাজি করলেন?

"ব্যবহার" দ্বারা, আমার অর্থ বিকাশের অনুমতি দেওয়া হচ্ছে, উত্স নিয়ন্ত্রণে চেক-ইন করা এবং সময়ের সাথে ইউনিট পরীক্ষাগুলি বজায় রাখা ইত্যাদি etc.

সাধারণ পরিচালনার আপত্তিগুলি হ'ল:

  1. গ্রাহক ইউনিট পরীক্ষার জন্য অর্থ প্রদান করেন নি
  2. প্রকল্পটি ইউনিট পরীক্ষার জন্য সময় দেয় না
  3. কারিগরি debtণ? প্রযুক্তিগত Whatণ কি?

আপনি কি অন্য আপত্তি জানেন? আপনার উত্তর কি ছিল?

আগাম ধন্যবাদ!


6
এই খুব বিষয় সম্পর্কে artofunittesting.com একটি পুরো অধ্যায় আছে ।
StuperUser

6
পরীক্ষা এবং টিডিডি মিশ্রিত করবেন না, দয়া করে ! এটি লোকেদের ভাবতে বাধ্য করে যে তারা টিডিডি না করে তাদের পরীক্ষার দরকার নেই!
পি শোভিত

1
যাদের বিশ্বাসযোগ্য হওয়া দরকার তাদের বোঝার বাইরে। আপনার দৃশ্যের একটি হারানো কারণ বিবেচনা করুন।
মার্ক ক্যানলাস

@ পাভেল, প্রথমে আমি ভেবেছিলাম আপনি নিটপিক করছেন, তবে আপনি ঠিক বলেছেন। আমি ইউনিট পরীক্ষা, পিরিয়ডের "অনুমতি" পেতে চাই। টিডিডি আমার নিজস্ব জিনিস।
লুইসগাব

6
আপনার কোড প্রত্যাশিতভাবে যাচাই করার জন্য কেন অনুমতি নেওয়ার প্রয়োজনীয়তা অনুভব করছেন?
জাপ

উত্তর:


25

আমি সম্প্রতি এই সমস্যায় পড়েছিলাম যখন কোনও গ্রাহক আমাদের পদ্ধতি নিয়ে বোর্ডে ছিলেন, তবে উচ্চতর ব্যবস্থাপনার মুখোমুখি হয়েছিল যে বিকাশকারীরা তাদের বিকাশের চেয়ে তাদের পরীক্ষার সময় ব্যয় করছেন এবং এ সম্পর্কে উদ্বিগ্ন ছিলেন - সর্বোপরি, তাদের পরীক্ষার জন্য কিউএর লোকেরা ছিল! আমি এখানে এটির সাথে কীভাবে व्यवहार করেছি সে সম্পর্কে আমি ব্লগ করেছি:

http://practicalagility.com/show-them-the-numbers-its-results-that-matter/

সংক্ষিপ্তসার হিসাবে, আমি আমাদের আনুমানিক ঘন্টাগুলি প্রকল্পের প্রকৃত সময়ের তুলনায় তুলনা করি এবং তারপরে আমাদের দলের ত্রুটি হার অন্যান্য দলের ত্রুটি হারের সাথে তুলনা করি। আমাদের ক্ষেত্রে এই সংখ্যাগুলি অনুকূলভাবে তুলনা করা হয়েছে এবং এর চেয়ে বেশি উদ্বেগ নেই।

এই অভিজ্ঞতার ভিত্তিতে আমার উপসংহারটি হ'ল:

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

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

সুতরাং আপনার ক্ষেত্রে, আমি প্রয়োজনে এটি স্টিলথ দ্বারা করব (সম্ভবত কোডের একটি ছোট ক্ষেত্র রয়েছে যা আপনি পরীক্ষা করতে শুরু করতে পারেন যে প্রায়শই পরিবর্তন হয় বা আপনি যার জন্য দায়বদ্ধ) তবে আপনার সংখ্যাগুলি লক্ষ্য রাখুন - কী আপনার পরীক্ষা তৈরির জন্য প্রচেষ্টা? ত্রুটি হার কত? এটি অন্যান্য প্রকল্পের / দলের সদস্যদের সাথে কীভাবে তুলনা করে?

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


উত্তরের জন্য ধন্যবাদ. আমি লিঙ্কটি চেষ্টা করেছিলাম তবে এটি ভাঙ্গা মনে হচ্ছে। আমি মনে করি এটি উপলব্ধ থাকলে আমি এটি পড়তে উপভোগ করব।
জো জে

জো, ডেডলিংকের জন্য দুঃখিত। আমি এটি আমার ব্যক্তিগত ব্লগে পোস্ট করেছি, তাই লিঙ্কটি এখনই কাজ করা উচিত।
প্যাডিস্ল্যাকার

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

@ জিমি জেমস, আমি সম্মত হই যে আপনি সর্বদা অন্য প্রকল্পের সাথে তুলনা করতে পারবেন না এবং আমি দ্বৈত প্রবেশের বুককিপিং সম্পর্কে আপনার উপমা দিয়ে সম্মত। আমি মনে করি আপনি যদি কোনও পরীক্ষার ছাড়াই বিদ্যমান কোডবেসে ইউনিট পরীক্ষা ব্যবহার করতে শুরু করেন, আপনি ইউনিট পরীক্ষাগুলি দ্বারা আচ্ছাদিত অংশ এবং অনাবৃত কোডের মধ্যে কোড বেসের ত্রুটি হার এবং অন্যান্য মেট্রিকগুলির সাথে তুলনা করতে পারেন, যাতে ব্যাকআপের জন্য আপনার কাছে কিছু আসল তথ্য রয়েছে আপনার পদ্ধতিরও।
প্যাডিস্ল্যাকার

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

20

বিনিয়োগের উপর রিটার্ন দেখান (আরওআই)

স্বয়ংক্রিয় পরীক্ষাগুলি লিখতে সময় লাগে। একদা. স্বয়ংক্রিয় পরীক্ষা চালানো শূন্য সময় নেয়, কারণ তারা যখন চালাচ্ছেন আপনি অন্য কিছু করতে পারেন।

উদাহরণ: ম্যানুয়ালি পরীক্ষার বৈশিষ্ট্যটি এক্স 30 মিনিট সময় নেয়। এটির জন্য একটি স্বয়ংক্রিয় পরীক্ষা লিখতে 1 ঘন্টা সময় লাগবে। আমাদের কোনও বাগ না থাকলেও আমাদের নির্ভরশীল স্তর এবং উপাদানগুলি সংশোধিত হওয়ায় প্রকল্প চলাকালীন সময়ে দশবার আমাদের ফিচার এক্স পরীক্ষা করতে হবে। সুতরাং এক্স বৈশিষ্ট্য এক্স এর পরীক্ষা স্বয়ংক্রিয়ভাবে আমাদের প্রকল্পের জীবন জুড়ে 4 ঘন্টা বাঁচাতে পারে।

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

ব্যবসায়ীরা সময় এবং অর্থ সাশ্রয় বোঝে। এটি কিভাবে বিক্রি করা যায়।


3
এছাড়াও একবার অ্যাপ্লিকেশন স্থানান্তরিত হয়ে যাওয়ার পরে এবং কেউ যদি পরিবর্তনের জন্য বলে, আপনার পরিবর্তনগুলি দিয়ে আপনি কিছু ভঙ্গ করছেন কিনা তা দেখতে অনেক সহজ।
m4tt1mus

4
@ ম্যাটিমাস: একেবারে - একটি স্বয়ংক্রিয় পরীক্ষার স্যুইট বার্ষিকীর মতো প্রদান করে; এটি প্রকৃতপক্ষে বীমা
স্টিভেন এ লো লো

15

আপনি যদি ইতিমধ্যে তাদের মুখোমুখি হয়ে থাকেন, এবং তারা এটি ঠিক করেন না তবে এগুলি ছাড়া আপনি কোড লেখার পক্ষে স্বাচ্ছন্দ্য বোধ করেন না ... তবে আর জিজ্ঞাসা করবেন না। কেবল তাদের লিখুন এবং তাদের পরীক্ষা করে দেখুন না।

ম্যানেজমেন্ট কোডের রেখাগুলি গণনা করছে না, তবে তারা দেখতে পাবে যে আপনার সমস্ত চেকিনের কিউএ (বা গ্রাহকরা) থেকে পাসের হার বেশি এবং তারা শেষ পর্যন্ত কেন জিজ্ঞাসা করবে ... তাহলে আপনি সমস্ত "বিএএম! টিডিডি'র মতো হতে পারেন ! "

আপনি প্রকল্প, প্রক্রিয়া বা উত্সের সাথে বিশৃঙ্খলা করছেন না ... তাই আমি নেতিবাচক কারণ দেখতে পাচ্ছি না। সত্যিই, আমি আপনার সমস্ত ম্যানুয়াল রান + ইনপুট + পরীক্ষার ফলাফল পরীক্ষা করে চালানোর চেয়ে আলাদা সময় অনুসারে কোন কারণ দেখছি না।


4
+1: আপনাকে যাইহোক পরীক্ষা করতে হবে। "কীভাবে" টেস্টিং করা উচিত সে সম্পর্কে কোবলির চেয়ে ইউনিট পরীক্ষা লিখুন।
এস। লট

1
স্থানীয়ভাবে এগুলি স্থানীয়ভাবে একটি ভাগ করা কোড বেস সহ দলের পরিবেশে ভাল কাজ করে না, অন্য ব্যক্তিরা তাদের পরিবর্তনগুলি দ্বারা আপনার পরীক্ষাগুলি ভাঙ্গতে থাকবে।
আলবি

3
@ অ্যালব: পরিচালনা বোর্ডে না উঠলে আপনি যে মূল্যটি পরিশোধ করেন - এটি কোনও পরীক্ষার চেয়ে ভাল।
স্টিভেন এভার্স

3
সাবাস। কোন পরীক্ষা না পরীক্ষা চেয়ে ভাল। অন্য কারও পরিবর্তনের কারণে যদি কোনও পরীক্ষা ভঙ্গ হয়, তবে কোনও ঘোষণা ছাড়াই কেন এপিআই পরিবর্তন হয়েছে তা জিজ্ঞাসা করার পক্ষে ভাল কারণ।
এস.লোট

"ম্যানেজমেন্ট কোডের লাইন গণনা করছে না" এটি খুব সত্য very উত্তরের জন্য ধন্যবাদ!
লুইসগাব

7

1) গ্রাহক ইউনিট পরীক্ষার জন্য অর্থ প্রদান করেন নি

গ্রাহক (তারা ভাবেন) একটি কার্যনির্বাহী সমাধানের জন্য অর্থ প্রদান করেছেন। চুক্তিগুলির উপর নির্ভর করে ত্রুটিগুলি স্থির করা আপনার কোম্পানির পক্ষে লাভজনক হতে পারে। যদি পর্যাপ্ত লক ইন থাকে So সুতরাং একটি কাজের সমাধানের জন্য অর্থ প্রদানের দিকে ফিরে to টিডিডির সেই লক্ষ্যে সহায়তা করা উচিত।

2) প্রকল্পটি টিডিডির জন্য সময় দেয় না

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

3) প্রযুক্তিগত debtণ? প্রযুক্তিগত Whatণ কি?

আমি ধারণাটি পেয়েছি যে আপনি সম্ভবত বিদ্যমান কোডটিতে পরীক্ষাগুলি যুক্ত করার জন্য বিপরীতমুখী হয়ে বিতর্ক করছেন। এটি সেরা সময়ের মধ্যে একটি দুঃস্বপ্ন বিক্রয় এবং এটি আপনি প্রত্যাশা করতে পারেন এমন সুবিধা বয়ে আনেন না। তবে, বাগগুলি ঠিক করার সাথে সাথে পরীক্ষাগুলি যুক্ত করা গ্রহণযোগ্য হবে এবং দীর্ঘমেয়াদে সহায়তা করবে help

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

আমি নতুন নির্দিষ্ট উত্থাপনের পরিবর্তে আপনি উল্লিখিত নির্দিষ্ট পয়েন্টগুলিকে সম্বোধন করছি কারণ অগ্রগতি করতে বা কেন এটি ককটেলড করা হচ্ছে তা বোঝার জন্য এখানে অবকাশ রয়েছে।


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

1
যে কেউ বৈশিষ্ট্য / সংশোধন যুক্ত করেছে এবং ইউনিট পরীক্ষাগুলি আপডেট করেছে সে ইউনিট পরীক্ষার ধারণাটি বুঝতে পারে না।
আকিরা ইয়ামামোটো

প্রকৃতপক্ষে আকিরা, এটি টিডিডি বা সম্পর্কিত প্রক্রিয়াগুলির কার্যকারিতা প্রভাবিত করে এমন একটি বিভ্রান্তিকর সমস্যা। মনে রাখবেন আমি স্পষ্টতই এটি 7 বছর আগে লিখেছিলাম, এখনও অনেক প্রাসঙ্গিক। (ভাল, উদ্দেশ্য, সংক্ষিপ্ত) পরীক্ষাগুলি লেখা শক্ত। কোনও কোডবেসের জন্য পরীক্ষা লেখার পক্ষে কোনোটাই খুব কঠিন। অ-প্রযুক্তিগত পরিচালনা করা সুবিধাগুলি কঠিন (যদি না তারা এই বিষয়ে একটি নিবন্ধ না পড়েন তবে আপনি "মেট্রিক'ড" হয়ে যাবেন তবে এমন কি ইউনিট কী ধারণাটিও কঠিন I'm একটি ইউনিট আমার ধারণা নয় Mockist এর হিসাবে একই (বাম 30 টি অক্ষরের সঙ্গে একটি উদাহরণ হিসাবে) হয়।
ইয়ান

4

উত্পাদনের সমস্যার সম্মুখীন প্রতিটি গ্রাহকের জন্য,

  1. ইউনিট পরীক্ষা লিখুন এবং পরিচালককে ইমেল প্রেরণ করুন যে আপনি দৃশ্যাবলীটি কাভার করতে একটি ইউনিট পরীক্ষা যুক্ত করেছেন।

  2. এবং তাকে বলুন যে এই সমস্যাটি আবার উত্পাদনে ঘটবে না কারণ আমাদের ইউনিট পরীক্ষাটি রাত্রে চলছে এবং আমরা এই ইউনিট পরীক্ষার ব্যর্থতা দেখে কোডটি উত্পাদনে যাওয়ার আগে জানতে পারি।

  3. তাকে বলুন যে কোডটি উৎপাদনে যাওয়ার আগে যদি আমরা ইতিমধ্যে এই ইউনিট পরীক্ষাটি করে রাখতাম তবে এই উত্পাদনের সমস্যাটি কখনই ঘটত না।

ধারাবাহিকভাবে এবং অবিরামভাবে এটি করুন এবং শীঘ্রই তিনি বিশ্বাসী হবেন। পরিচালকরা গ্রাহক উত্পাদন সংক্রান্ত সমস্যার মুখোমুখি হন না এবং তিনি ইউনিট পরীক্ষার ধারণাটি কিনবেন। শুভকামনা।


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