সফটওয়্যার টেস্টিং

API টেস্টিং টিউটোরিয়াল

30 অক্টোবর, 2021

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

পুরো প্রক্রিয়া একটি মাধ্যমে কাজ করে অ্যাপ্লিকেশন প্রোগ্রাম ইন্টারফেস (API) . কিন্তু, আপনি জানতে চান ঠিক API মানে কি? এই নিবন্ধে, আমরা API পরীক্ষা এবং অন্যান্য পরামিতি সম্পর্কে একটি সম্পূর্ণ নির্দেশিকা শিখব, যেমন

সুচিপত্র

এপিআই কি?

API এর অর্থ হল অ্যাপ্লিকেশন প্রোগ্রাম ইন্টারফেস। একটি অ্যাপ্লিকেশন প্রোগ্রাম ইন্টারফেস একটি প্ল্যাটফর্ম যা দুই বা ততোধিক সফ্টওয়্যার সিস্টেমের মধ্যে আন্তঃসংযোগ বা যোগাযোগ পরিচালনা করে। যখনই ব্যবহারকারী একটি সিস্টেম থেকে কোনো অ্যাপ্লিকেশন কপি করে এবং অন্য সিস্টেমে পেস্ট করে, তখন এটি API কাস্টমস ব্যবহার করে যা দুটি সিস্টেমের মধ্যে কাজ করে। API এর তিনটি প্রাথমিক উপাদান নিম্নরূপ:

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

আমাদের একটি উদাহরণ থেকে API ঠিক কি করে তা স্পষ্ট করা যাক।

API-এর অর্থ ব্যাখ্যা করার জন্য সর্বোত্তম উদাহরণ হল রেস্টুরেন্ট এবং ওয়েটার। আপনি রেস্টুরেন্টে যান এবং বসার জন্য একটি টেবিল চয়ন করুন। আপনি উপলব্ধ মেনু একটি তালিকা পাবেন. উপরন্তু, রেস্টুরেন্টের একটি রান্নাঘর আপনাকে আপনার পছন্দসই খাবার সরবরাহ করার জন্য একটি সিস্টেম হিসাবে কাজ করে।

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

API এর উদাহরণ

আমরা একটি রেস্টুরেন্ট এবং ওয়েটারের উদাহরণ ব্যবহার করে API এর একটি স্পষ্ট সংজ্ঞা তৈরি করেছি। এই বিভাগে, আমরা দৈনন্দিন জীবনে ব্যবহার করা প্রযুক্তির পরিপ্রেক্ষিতে API উদাহরণগুলিতে ডুব দেব।

  1. অনেক সময়, আমরা একটি নির্দিষ্ট অজানা অবস্থান খুঁজে পেতে Google মানচিত্র ব্যবহার করি। Google Maps API ওয়েবপৃষ্ঠাগুলিতে ভূ-অবস্থান জ্ঞান অন্তর্ভুক্ত করতে বিকাশকারীদের জাভাস্ক্রিপ্ট ইন্টারফেস ব্যবহার করতে সক্ষম করে।
  2. API এর আরেকটি উদাহরণ হল টুইটার API . এটি দুটি ভিন্ন API অন্তর্ভুক্ত করে। একটি API কন্টেন্ট বা তথ্যের জন্য ব্যবহার করা হয়, এবং অন্যটি বিজ্ঞাপনের জন্য। প্রথম এপিআই টুইটারে ক্রিয়াকলাপ নিয়ন্ত্রণ করে, যেমন সরাসরি বার্তা, টুইটার ব্যবহারকারী ইত্যাদি। এবং দ্বিতীয় এপিআই বিজ্ঞাপন, প্রচারাভিযান, সৃজনশীল বিষয়বস্তু ইত্যাদি নিরীক্ষণ করে।
  3. API-এর সাধারণভাবে ব্যবহৃত উদাহরণগুলির মধ্যে একটি হল YouTube API . এতে একাধিক API অন্তর্ভুক্ত রয়েছে, যেমন YouTube Data API, YouTube player API, YouTube Analytics API, ইত্যাদি। অনেক ওয়েবসাইট শ্রোতাদের বিষয়বস্তু সম্পর্কে স্পষ্ট ধারণা পাওয়ার জন্য তাদের ওয়েব পৃষ্ঠাগুলিতে YouTube ভিডিও এম্বেড করে।
  4. আমাজন পণ্য বিজ্ঞাপন API API এর আরেকটি উদাহরণ। অনেক ওয়েবসাইট যেমন ইউটিউব ভিডিও এম্বেড করে, তাদের মধ্যে কিছু বিজ্ঞাপনের উদ্দেশ্যে অ্যামাজন পণ্যও অন্তর্ভুক্ত করে। তারা অ্যামাজনের ওয়েবসাইট থেকে পণ্যগুলির লিঙ্ক এম্বেড করে।

API এর জন্য প্রয়োজন

আমরা দৈনন্দিন জীবনে সাধারণত ব্যবহৃত API-এর কিছু বিখ্যাত উদাহরণ দেখেছি। কিন্তু, API এর প্রয়োজন কি? কেন আমরা API প্রয়োজন? এটি একটি API ব্যবহার করা প্রয়োজন?

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

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

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

API-এর প্রকারভেদ

প্রধানত চার ধরনের API আছে। সেগুলি হল ওপেন এপিআই, পার্টনার এপিআই, ইন্টারনাল এপিআই এবং কম্পোজিট এপিআই। আমরা সংক্ষেপে এই APIগুলির প্রতিটি নিয়ে আলোচনা করব।

    APIs বা সর্বজনীন API খুলুন: এপিআই বা পাবলিক এপিআই খুলুন কম সীমা সহ সমস্ত ব্যবহারকারী এবং বিকাশকারীদের জন্য উপলব্ধ। সাধারণত, তারা ব্যবহার করার জন্য বিনামূল্যে. কিন্তু কখনও কখনও, আপনাকে API কী নিবন্ধন বা ব্যবহার করতে হবে। উদাহরণস্বরূপ, Google থেকে Oauth API একটি খোলা API।অংশীদার APIs:অংশীদার APIs খোলামেলা উপলব্ধ নয়. প্রত্যেকে এগুলি ব্যবহার করে না কারণ এটি ব্যবহারের জন্য অ্যাক্সেসের অধিকার প্রয়োজন৷ পার্টনার APIগুলি একে অপরের সাথে যোগাযোগ করার জন্য বিভিন্ন ব্যবসার দ্বারা ব্যবহার করা হয়।অভ্যন্তরীণ API:অভ্যন্তরীণ APIগুলি সাধারণত লোকেরা দ্বারা ব্যবহৃত API গুলি নয়৷ এগুলি বেশিরভাগ নির্দিষ্ট কোম্পানি এবং শিল্পে ব্যবহৃত হয়। তারা উন্নয়ন প্রক্রিয়া উন্নত করতে অভ্যন্তরীণ API ব্যবহার করে। একটি নির্দিষ্ট প্রকল্পের উন্নয়ন দল API ব্যবহার করে অন্য প্রকল্পের যেকোনো পরিষেবা অ্যাক্সেস করতে পারে।কম্পোজিট APIs:বিকাশকারী সাধারণত একটি মাইক্রোসার্ভিস আর্কিটেকচার বিকাশের জন্য যৌগিক API ব্যবহার করে যার জন্য একাধিক সংস্থান থেকে প্রচুর পরিমাণে ডেটা সংগ্রহ করতে হয়।
API টেস্টিং

API টেস্টিং কি?

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

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

আমরা যে কোনো অ্যাপ্লিকেশন ব্যবহার করি তার তিনটি ভিন্ন স্তর থাকে। প্রথম স্তরটি একটি ডেটা স্তর, দ্বিতীয়টি পরিষেবা স্তর বা অ্যাপ্লিকেশন প্রোগ্রাম ইন্টারফেস স্তর (API), এবং শেষটি উপস্থাপনা স্তর। পরিষেবা স্তরটি সফ্টওয়্যার অ্যাপ্লিকেশনের যুক্তি, নির্দেশিকা, বা অ্যাপ্লিকেশনটির পরিষেবাগুলির সাথে ব্যবহারকারীদের মিথস্ক্রিয়া এবং এর কার্যকারিতা সম্পর্কে বৈধতা সংজ্ঞায়িত করে। বেশিরভাগ পরীক্ষা উপস্থাপনা স্তরের উপর ফোকাস করে, তবে API পরীক্ষা বিশেষভাবে পরিষেবা স্তর পরীক্ষা করার জন্য বোঝানো হয়।

API টেস্টিং এর প্রকারভেদ

API টেস্টিং নীচে তালিকাভুক্ত পরীক্ষার একাধিক সেট অন্তর্ভুক্ত করে:

  1. অংশ পরিক্ষাকরণ : এই ধরনের পরীক্ষা সাধারণত অ্যাপ্লিকেশনের প্রতিটি একক অপারেশনের প্রতিটি ফাংশন আলাদাভাবে পরীক্ষা করে। সফ্টওয়্যার বিকাশকারীরা সাধারণত ইউনিট পরীক্ষা করে। আপনি অ্যাপ্লিকেশনের একটি নির্দিষ্ট অংশ হিসাবে একটি ইউনিট উল্লেখ করতে পারেন।
  2. কার্যকরী পরীক্ষা : এপিআই-এ অন্য ধরনের টেস্টিং হল কার্যকরী পরীক্ষা। এর নাম অনুসারে, এটি পরীক্ষার কেস ডিজাইন করে বিভিন্ন সফ্টওয়্যার অ্যাপ্লিকেশনের ফাংশন পরীক্ষা করে। এটা সাধারণত কালো বক্স পরীক্ষা , যেখানে সফ্টওয়্যার বিকাশকারী বা পরীক্ষকরা সিস্টেমের ভিতরে কী আছে তা নির্ধারণ করতে অক্ষম। এটি রিগ্রেশন টেস্টিংও অন্তর্ভুক্ত করে।
  3. লোড পরীক্ষার : একাধিক ব্যবহারকারী সিস্টেম অ্যাক্সেস করা সত্ত্বেও সিস্টেমটি সঠিকভাবে প্রতিক্রিয়া জানায় কিনা এই ধরনের পরীক্ষা যাচাই করে৷ একাধিক ব্যবহারকারীর দ্বারা অ্যাক্সেস করার সময় সিস্টেমের ফাংশন পর্যাপ্তভাবে কার্যকর করা উচিত।
  4. রানটাইম এবং rror সনাক্তকরণ : এই টেস্টিং একটি সফ্টওয়্যার যাচাইকরণ পদ্ধতি যা সফ্টওয়্যারটি চালানোর সময় কোনো বাগ বা ত্রুটি নির্ধারণ করে৷ সফ্টওয়্যার পণ্য সম্পাদনের সময় বেশ কয়েকটি বাগ রিপোর্ট করা যেতে পারে, যেমন রেসের অবস্থা, সংস্থান ফাঁস, নাল পয়েন্টার, অপ্রবর্তিত মেমরি ইত্যাদি।
  5. নিরাপত্তা টি esting : এই ধরনের পরীক্ষায় অননুমোদিত ব্যবহারকারীদের থেকে ডেটা সুরক্ষা নিশ্চিত করা জড়িত৷ এটি প্রদান করে তথ্য অখণ্ডতা , গোপনীয়তা , সত্যতা, এবং অ প্রত্যাখ্যান , যা নেটওয়ার্ক নিরাপত্তার প্রাথমিক উদ্দেশ্য।
  6. অনুপ্রবেশ পরীক্ষা : যখন সিস্টেমটি অনুপ্রবেশ পরীক্ষার মধ্য দিয়ে যায়, তখন পরীক্ষকরা নেটওয়ার্কে দুর্বল সাইবার আক্রমণ শনাক্ত করতে পারে। এই পরীক্ষাটি নির্দিষ্ট সফ্টওয়্যার অ্যাপ্লিকেশন বা ওয়েবসাইটের দুর্বলতা খুঁজে পায়।
  7. অস্পষ্ট টি esting : নির্দিষ্ট সফ্টওয়্যার পণ্য কাঠামোগত এবং সংগঠিত ইনপুট নেয় কিনা তা যাচাই করার জন্য ফাজি টেস্টিং করা হয়। যদি সিস্টেম অসংগঠিত ইনপুট গ্রহণ করে, তাহলে এর ফলে সিস্টেম ক্র্যাশ হতে পারে, মেমরি লিক , ইত্যাদি
  8. ওয়েব UI পরীক্ষা : এটির নাম নির্দেশ করে, এই ধরনের পরীক্ষা ব্যবহারকারী ইন্টারফেসের প্রতিটি উপাদানের কার্যকারিতা পরীক্ষা করে।
API টেস্টিং এর প্রকারভেদ

অ্যাপ্লিকেশন প্রোগ্রাম ইন্টারফেস এবং গ্রাফিক্যাল ইউজার ইন্টারফেস পরীক্ষার মধ্যে পার্থক্য

গ্রাফিক্যাল ইউজার ইন্টারফেস টেস্টিং এবং অ্যাপ্লিকেশন প্রোগ্রাম ইন্টারফেস টেস্টিং এক নয়। API পরীক্ষা সফ্টওয়্যার পণ্যের চেহারা উপর ফোকাস করে না; পরিবর্তে, এটি পরামিতিগুলিতে ফোকাস করে, যেমন কর্মক্ষমতা, স্থিতিশীলতা, নির্ভরযোগ্যতা , এবং নিরাপত্তা. আসুন GUI টেস্টিং এবং API পরীক্ষার মধ্যে পার্থক্য নিয়ে আলোচনা করি।

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

কিভাবে API টেস্টিং সঞ্চালন? - একটি দ্রুত API টেস্টিং টিউটোরিয়াল

আমরা API টেস্টিং, এর প্রকারগুলি এবং AI এবং GUI পরীক্ষার মধ্যে পার্থক্য নিয়ে আলোচনা করেছি। এখন, আমরা আমাদের মূল বিষয়, API টেস্টিং টিউটোরিয়াল-এ ডুব দেব।

API পরীক্ষার জন্য সেটআপ প্রয়োজনীয়তা

আপনি API পরীক্ষা করার আগে, সেটআপের জন্য নির্দিষ্ট পূর্বশর্ত রয়েছে। অনুসরণ হিসাবে তারা:

  1. যেহেতু API টেস্টিং GUI পরীক্ষার তুলনায় আরও জটিল এবং গভীরতর, তাই কর্মক্ষমতা, কার্যকারিতা, নির্ভরযোগ্যতা, নিরাপত্তা ইত্যাদির মতো বেশ কয়েকটি পরামিতি যাচাই করার জন্য API পরীক্ষা করার জন্য একটি প্রাথমিক পরিবেশ সেটআপ প্রয়োজন। একবার পরীক্ষা শেষ হলে, এটি পরীক্ষার ফলাফল তৈরি করে। .
  2. API পরীক্ষার জন্য আরেকটি প্রয়োজনীয়তা হল সফ্টওয়্যার পণ্যের সাথে সামঞ্জস্যপূর্ণ হতে ডাটাবেস এবং সার্ভার কনফিগার করা।
  3. একটি নির্দিষ্ট সিস্টেমে আপনার সফ্টওয়্যার ইনস্টল করার পরে, API টেস্টিং করার জন্য একটি কল দেওয়া হয়।

API পরীক্ষার জন্য টেস্ট কেস

নির্দিষ্ট পরিস্থিতিতে সিস্টেমের আচরণ যাচাই করার জন্য টেস্ট কেস অপরিহার্য। এটি সব ধরণের ইনপুটের সাথে ধারাবাহিকভাবে আচরণ করতে হবে। গুণমান নিশ্চিতকরণ দলকে সিস্টেমে সম্পাদিত সমস্ত সম্ভাব্য পরীক্ষার ক্ষেত্রে বিবেচনা করতে হবে। এই দলটি নীচে তালিকাভুক্ত বিভিন্ন পরামিতির উপর নির্ভর করে পরীক্ষার কেস ডিজাইন করে:

  1. প্রথম প্যারামিটারটি একটি নির্দিষ্ট ইনপুটের জন্য রিটার্ন মান। একটি নির্দিষ্ট ইনপুট প্রকারের জন্য, সিস্টেমটি সঠিক ফলাফল তৈরি করবে।
  2. পরীক্ষার কেস তৈরি করার সময় বিবেচনা করার আরেকটি পরামিতি কিছুই ফেরত দিচ্ছে না। যদি সিস্টেম একটি নির্দিষ্ট ইনপুট জন্য কোনো মান উত্পাদন না করে. এই ধরনের পরিস্থিতিতে, পরীক্ষকরা সিস্টেমের আচরণ পরীক্ষা করে।
  3. যদি নির্দিষ্ট ইনপুটের ফলাফল অন্যান্য ফাংশন বা ইভেন্টগুলিকে ট্রিগার করে, তবে সিস্টেমটিকে সেই ইভেন্টগুলি ট্রেস করা উচিত।
  4. আপনার পরীক্ষার ক্ষেত্রে ডাটাবেসের উপর ভিত্তি করে একটি পরীক্ষা অন্তর্ভুক্ত করা উচিত। যদি সিস্টেমের কোনো ফাংশন ডাটাবেসে উপস্থিত ডেটা আপডেট করে তবে তা যাচাই করা উচিত।

কিভাবে API টেস্টিং চালানো যায়?

API টেস্টিং একাধিক পর্যায় জড়িত। এখানে কিছু API পরীক্ষার পর্যায় উল্লেখ করা হয়েছে। অন্তর্ভুক্ত অন্যান্য ধাপগুলি SDLC পর্যায়ের মতোই।

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

API পরীক্ষার সময় কি পরামিতি পরীক্ষা করা উচিত?

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

  1. প্রতিক্রিয়া সঠিকতা
  2. HTTP স্ট্যাটাস কোড
  3. প্রতিক্রিয়া পাঠানোর জন্য API দ্বারা সময় নেওয়া হয়, অর্থাত্ প্রতিক্রিয়ার সময়।
  4. সত্যতা যাচাই করে
  5. কর্মক্ষমতা এবং নিরাপত্তা পরীক্ষা.
  6. যদি প্রতিক্রিয়াতে একটি ত্রুটি থাকে, API এর ত্রুটি কোডটি খুঁজে পাওয়া উচিত।

API পরীক্ষায় চ্যালেঞ্জ

এপিআই পরীক্ষা করার সময় কোয়ালিটি অ্যাসুরেন্স দল বিভিন্ন সমস্যার সম্মুখীন হয়। এপিআই পরীক্ষার সম্মুখীন হওয়া কিছু চ্যালেঞ্জ নিয়ে আলোচনা করা যাক।

  1. আমরা জানি যে API পরীক্ষার সাথে জড়িত কোন GUI নেই। এটি কর্মক্ষমতা, নিরাপত্তা এবং নির্ভরযোগ্যতার উপর দৃষ্টি নিবদ্ধ করে। এপিআই পরীক্ষার একটি উল্লেখযোগ্য চ্যালেঞ্জ হল পরীক্ষকরা GUI সম্পর্কে জানেন না। সুতরাং, তাদের জন্য সিস্টেমে ইনপুট প্রদান করা কঠিন হয়ে পড়ে।
  2. যখনই পরীক্ষক সিস্টেমে ইনপুট প্রদান করে, তখন এটি সংশ্লিষ্ট আউটপুট তৈরি করে। উত্পাদিত ফলাফল যাচাই এবং যাচাই করা প্রয়োজন। কিন্তু, API পরীক্ষায়, বৈধতা এবং যাচাইকরণ প্রক্রিয়া বেশ জটিল।
  3. সিস্টেমের কার্যকরী কোডে একটি ব্যতিক্রম-হ্যান্ডলিং ফাংশন অন্তর্ভুক্ত থাকতে পারে। এই ফাংশন পরীক্ষা বাধ্যতামূলক. কিন্তু, পরীক্ষকরা ব্যতিক্রম-হ্যান্ডলিং ফাংশন পরীক্ষা করা কঠিন বলে মনে করেন।
  4. সাধারণভাবে, পরীক্ষার জন্য পরীক্ষকদের কোডিং দক্ষতার কোনো প্রয়োজন নেই। কিন্তু API পরীক্ষায়, পরীক্ষকদের সামান্য কোডিং জ্ঞান থাকা উচিত।
  5. API পরীক্ষার আরেকটি চ্যালেঞ্জ হল কল সিকোয়েন্সিং। সিস্টেমের সঠিক নির্বাহের জন্য সঠিক এবং অনুক্রমিক কলগুলি করতে হবে।
  6. এপিআই পরীক্ষার পরীক্ষকদের সঠিক পরামিতি নির্বাচন করতে হবে এবং যথাযথভাবে শ্রেণীবদ্ধ করতে হবে।

API পরীক্ষার সর্বোত্তম অনুশীলন

  1. পরীক্ষার কেসগুলি এমনভাবে তৈরি করুন যাতে এটি API-এর সমস্ত সম্ভাব্য সমন্বয় কভার করে।
  2. বিবেচনায় নেওয়া সবচেয়ে গুরুত্বপূর্ণ বিষয় হল পরীক্ষার কেসগুলিকে তাদের বিভাগের উপর ভিত্তি করে গ্রুপ করা।
  3. আপনি কোনো পরীক্ষা লেখার আগে, আপনি যে নির্দিষ্ট API এর উপর কাজ করছেন তার ঘোষণাপত্র যোগ করতে হবে।
  4. API পরীক্ষার জন্য পরামিতি নির্বাচন প্রয়োজন। পরীক্ষার ক্ষেত্রে লেখার সময় আপনার সমস্ত পরামিতি অন্তর্ভুক্ত করা উচিত।
  5. আপনাকে API কলকে অগ্রাধিকার দিতে হবে। এটি করা পরীক্ষকদের API কল ফাংশনটি আরও আরামদায়কভাবে চালাতে সহায়তা করবে।
  6. আপনার বিকাশ করা প্রতিটি পরীক্ষার ক্ষেত্রে স্বাধীন হওয়া উচিত এবং সমস্ত তথ্য থাকা উচিত। সমস্ত পরীক্ষার ক্ষেত্রে স্বয়ংসম্পূর্ণ রাখুন।
  7. আপনার সফ্টওয়্যার পণ্যে চেইন টেস্টিং অন্তর্ভুক্ত করবেন না। চেইন টেস্টিং বলতে বোঝায় যে সিস্টেমের সিস্টেমের আউটপুট থেকে পরীক্ষার ডেটা বের করা যা বর্তমানে পরীক্ষা প্রক্রিয়ার অধীনে রয়েছে।
  8. যেহেতু কল সিকোয়েন্সিং API পরীক্ষার একটি উল্লেখযোগ্য চ্যালেঞ্জ, তাই আপনাকে অবশ্যই এটির খুব যত্ন নিতে হবে।

এপিআই টেস্টিং এ কোন ত্রুটি চিহ্নিত করা হয়?

এপিআই পরীক্ষা কার্যকরীভাবে, কর্মক্ষমতা, নির্ভরযোগ্যতা, বা নিরাপত্তা পরীক্ষা করে এবং সফ্টওয়্যার পণ্যের বাগ এবং ত্রুটি সনাক্ত করে। নিম্নলিখিত বাগ বা ত্রুটিগুলি যা API পরীক্ষা সনাক্ত করে:

  1. অব্যবহৃত পতাকা
  2. ত্রুটি পরিস্থিতি পরিচালনা করতে ব্যর্থতা.
  3. ডুপ্লিকেট ফাংশন ব্যবহার
  4. অনুপস্থিত ফাংশন
  5. অবিশ্বস্ততা, যেমন, API থেকে দ্রুত প্রতিক্রিয়া না পাওয়া
  6. মাল্টি-থ্রেডিং জটিলতা
  7. বৈধ যুক্তি মান ভুলভাবে ব্যবহার করা
  8. অসংগঠিত প্রতিক্রিয়া ডেটা (JSON বা XML)
  9. ভুল মেসেজিং
  10. নিরাপত্তা, কর্মক্ষমতা, এবং চাপ সমস্যা.

API পরীক্ষার জন্য ব্যবহৃত সরঞ্জাম

API টেস্টিং সাধারণত API টেস্টিং টুল ব্যবহার করে তাৎক্ষণিকভাবে করা হয়। নীচে API এর পাশাপাশি ইউনিট পরীক্ষার জন্য ব্যবহৃত কিছু স্ট্যান্ডার্ড টেস্টিং টুল রয়েছে:

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

রানস্কোপ, পোস্টম্যান, কার্ল, সিফিক্স, ডটডেস্ক ইত্যাদির মতো আরও অনেক API টেস্টিং টুল রয়েছে।

উপসংহার

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

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

প্রস্তাবিত প্রবন্ধ

  • Unsecapp.Exe কি এবং এটা কি নিরাপদUnsecapp.exe কি এবং এটা কি নিরাপদ?
  • 15 সেরা UML ডায়াগ্রাম টুল এবং সফটওয়্যার15 সেরা UML ডায়াগ্রাম টুল এবং সফটওয়্যার
  • [ফিক্সড] উইন্ডোজ নির্দিষ্ট ডিভাইস, পাথ বা ফাইলের ত্রুটি অ্যাক্সেস করতে পারে না[ফিক্সড] উইন্ডোজ নির্দিষ্ট ডিভাইস, পাথ বা ফাইলের ত্রুটি অ্যাক্সেস করতে পারে না
  • উইন্ডোজ আপডেটের জন্য 16 সংশোধনগুলি উইন্ডোজে কাজ করছে নাউইন্ডোজ আপডেটের জন্য 16 সংশোধনগুলি উইন্ডোজে কাজ করছে না
  • AMD Radeon সেটিংসের জন্য 4টি সমাধান জিতেছে৷AMD Radeon সেটিংসের জন্য 4 ফিক্স খুলবে না
  • জুম স্ক্রিনশট টুল: টিপস এবং কৌশলজুম স্ক্রিনশট টুল: টিপস এবং কৌশল