আমি মনে করি পরীক্ষার ধারণার সাথে সবসময় প্রেম-ঘৃণার সম্পর্ক রয়েছে। নিঃসন্দেহে, আপনি যা তৈরি করছেন তা পরীক্ষা করার সুবিধাগুলি সেই একই আবিষ্কারগুলির প্রতিবেদন করা গ্রাহকদের এড়াতে সহায়তা করে। এটি সম্পর্কের ভালবাসার অংশ।
ঘৃণার অংশটি হল যখন প্রকল্পের টাইমলাইন পরীক্ষাকে নিম্ন অগ্রাধিকারে পরিণত করে … প্রায়শই এটি একটি ব্যাকলগ উইশলিস্ট আইটেম হয়ে ওঠে যা বর্তমান স্প্রিন্টে খুব কমই দেখা যায়। এটি প্রায় নিশ্চিত করে যে গ্রাহকরা অপ্রত্যাশিত ফলাফলের সাথে আপনার সাথে যোগাযোগ করবে।
যেহেতু সফ্টওয়্যার ডেভেলপমেন্ট লাইফসাইকেল (SDLCs) পরিপক্ক হয়েছে, টেস্টিং আরও সহজ হয়েছে, যা ডেভেলপারদের একক পরীক্ষা তৈরি করতে দেয় যা সম্পূর্ণরূপে বৈধ হওয়া দিকটিকে কভার করে। চ্যাটজিপিটি বা গিটহাব কো-পাইলটের ব্যবহার এমন পর্যায়ে পরিণত হয়েছে যেখানে এই ধরনের ইউনিট পরীক্ষাগুলি স্বয়ংক্রিয়ভাবে তৈরি করা যেতে পারে। ক্রমাগত ইন্টিগ্রেশন (CI) টুলিং সলিউশন উন্নত হয়েছে যাতে কোনো পুল রিকোয়েস্ট (PR) মার্জ করার আগে উচ্চ মাত্রার কোড কভারেজ প্রয়োগ করা যায়। এটি করার ফলে দলগুলিকে তাদের বিকাশের সাথে বামে স্থানান্তরিত করতে দেয় - বিকাশের পর্যায়ে সমস্যাগুলিকে মোকাবেলা করতে বাধ্য করে এবং পথের সাথে বৈশিষ্ট্যগুলির খরচ কমিয়ে দেয়৷
এই পদ্ধতিটি প্রথাগত API এবং ওয়েব ফ্রেমওয়ার্কের জন্য দুর্দান্ত কাজ করেছে, কিন্তু মোবাইল অ্যাপ্লিকেশন পরীক্ষা করার জন্য প্রায়শই টিমগুলিকে ম্যানুয়াল টেস্টিং করতে হয় — পরিচালনা করা যেতে পারে এমন বিভিন্ন ধরণের ডিভাইস জুড়ে পদক্ষেপগুলির একটি প্রকাশিত তালিকা থেকে সম্পাদন করা।
আমি দেখতে চেয়েছিলাম যে মোবাইল ডেভেলপমেন্ট এবং টেস্টিং শিফট-বাম ধারণাকে কাজে লাগাতে পারে এমন একটি উপায় চিহ্নিত করতে পারি কিনা।
উচ্চ স্তরে, মোবাইল অ্যাপ্লিকেশন স্পেসে বৈশিষ্ট্য এবং কার্যকারিতা পরীক্ষা করার ক্ষমতা থাকতে হবে যেভাবে API এবং ওয়েব ফ্রেমওয়ার্কগুলি আজ পরীক্ষা করছে৷ এর অর্থ হল শারীরিক ডিভাইস বা এমুলেটরগুলির একটি তালিকা ব্যবহার করে ম্যানুয়ালি পরীক্ষা করার ব্যবসা থেকে বেরিয়ে আসা।
মোবাইল পরীক্ষার এই আদর্শ অবস্থা ব্যবহারকারীর কার্যকলাপের উপর দৃষ্টি নিবদ্ধ করে ক্রিপ্টিক পরীক্ষা লেখা এড়াতে UI-চালিত হবে। এই পদ্ধতিটি অভ্যন্তরীণ ভোক্তা বা পণ্য মালিকদের কাছে টুলিংকে প্রসারিত করতে পারে যারা তাদের দৃষ্টিকে বাস্তব হিসাবে যাচাই করতে চান।
প্রথাগত ইউনিট বা ইন্টিগ্রেশন পরীক্ষার মতো, মডিউলগুলি প্রবর্তনের ক্ষমতা মোবাইল অ্যাপ্লিকেশনের ছোট দিকগুলিকে যাচাই করতে পারে এবং বৃহত্তর প্রবাহের জন্য বিল্ডিং ব্লক হিসাবে ব্যবহার করা যেতে পারে। এটি করার মাধ্যমে, দলগুলি "শুষ্ক" থাকতে সক্ষম হবে (নিজেকে পুনরাবৃত্তি করবেন না) এবং সদৃশ কাজ এড়াতে পারবেন।
অবশেষে, গ্রাফিক্যাল UI দ্বারা চালিত হওয়া সত্ত্বেও এই পরীক্ষাগুলিকে CI/CD পাইপলাইনের অংশ হতে সক্ষম হতে হবে।
এই আদর্শ অবস্থায়, মোবাইল সফ্টওয়্যার ইঞ্জিনিয়াররা কার্যকরভাবে তাদের মোবাইল ডেভেলপমেন্ট এবং পরীক্ষার জন্য বাম দিকে স্থানান্তর করতে পারে।
যখন আমি মোবাইল পরীক্ষার জন্য "বামে স্থানান্তর" বলি তখন আমি কী বলতে চাইছি তা স্পষ্ট করা একটি ভাল ধারণা৷
উইকিপিডিয়া নীচে উল্লিখিত হিসাবে পরীক্ষার জন্য বাম স্থানান্তর সংজ্ঞায়িত করে:
“Shift-left testing হল সফটওয়্যার টেস্টিং এবং সিস্টেম টেস্টিং এর একটি পদ্ধতি যেখানে পরীক্ষাটি জীবনচক্রের আগে সঞ্চালিত হয় (অর্থাৎ প্রকল্পের টাইমলাইনে বামে সরানো হয়)। এটা ম্যাক্সিম 'পরীক্ষা তাড়াতাড়ি এবং প্রায়ই' প্রথমার্ধ। এটি 2001 সালে ল্যারি স্মিথ দ্বারা তৈরি করা হয়েছিল।"
কেবলমাত্র বাম দিকের স্থানান্তরকে আলিঙ্গন করলে উন্নয়ন পর্বের সময় ত্রুটিগুলি চিহ্নিত করা যায়। এটি গুরুত্বপূর্ণ কারণ এই সমস্যাটি সমাধান করা যেতে পারে যখন বৈশিষ্ট্যটি উৎসের উপর দৃষ্টি নিবদ্ধ করা প্রকৌশলীর মনে তাজা থাকে।
এখানে বাম স্থানান্তর গ্রহণের কিছু সুবিধা রয়েছে:
শেষ পর্যন্ত, বাম দিকের পরিবর্তনের ধারণাটি একটি প্রতিযোগিতামূলক সুবিধার দিকে নিয়ে যাবে যখন সমাধানগুলি গ্রাহকদের কাছে পৌঁছাবে যেগুলি বৈধ এবং প্রত্যাশিতভাবে কাজ করছে।
গত বছর, আমি আমার " Tricentis Testim ব্যবহার করে গ্রাহক-মুখী অ্যাপের গুণমান উন্নত করা " নিবন্ধে Tricentis Testim-এর ব্যবহার অন্বেষণ করেছি। একটি GO-ভিত্তিক RESTful API এবং Vue.js ওয়েব-ভিত্তিক ক্লায়েন্ট ব্যবহার করে আমার ম্যাজিক 8 বল সলিউশনকে যাচাই করা কতটা সহজ ছিল তাতে আমি মুগ্ধ হয়েছিলাম। আমি দেখতে চেয়েছিলাম যে Tricentis এর কাছে এমন একটি সমাধান আছে যা টিমগুলিকে মোবাইল পরীক্ষার জন্য বামে স্থানান্তরিত করতে দেয়।
দেখা যাচ্ছে, তাদের টোসকা নামে একটি পণ্য রয়েছে।
Tosca পণ্য কোডহীন পরীক্ষা প্রজন্ম প্রদান করে, ছোট মডিউল তৈরি করার অনুমতি দেয় যা পুনরায় ব্যবহার এবং স্বয়ংক্রিয় হতে পারে। এই মডিউলগুলিকে লেগো ব্লক হিসাবে বিবেচনা করা যেতে পারে যেগুলি তাদের মধ্যে একটি প্রমিত চুক্তির নিয়োগের কারণে প্রয়োজনে সংযুক্ত করা যেতে পারে। Tosca আপনার বৈশিষ্ট্যগুলির জন্য মোবাইল পরীক্ষা তৈরি করতে সাহায্য করার জন্য AI ব্যবহার করার ক্ষমতা প্রদান করে আরও ঐতিহ্যগত বিকাশের জীবনচক্রের এক ধাপ কাছাকাছি নিয়ে যায়।
টোসকা ট্রাইসেন্টিস মোবাইল এজেন্টের মাধ্যমে ভারী শেখার বক্ররেখা ছাড়াই ওপেন সোর্স অ্যাপিয়াম প্রকল্পের শক্তি লাভ করে। এটি আমার আগের নিবন্ধে দেওয়া সমস্ত শক্তিকে মোবাইল ডেভেলপমেন্টের সাথে শিফট বাম যাত্রায় অন্তর্ভুক্ত করার অনুমতি দেয়।
ফলস্বরূপ, Tosca প্রকৃত আইফোন, অ্যান্ড্রয়েড, মোবাইল ফোন এবং ট্যাবলেট ডিভাইস জুড়ে নেটিভ, হাইব্রিড এবং ওয়েব মোবাইল অ্যাপের পরীক্ষা করার অনুমতি দেয় এই ডিভাইসগুলিকে রক্ষণাবেক্ষণ ও দখল ছাড়াই৷
টেস্টিম প্রোডাক্টের মতোই, টোসকা সলিউশন সিআই/সিডি পাইপলাইনের অংশ হিসাবে পরীক্ষা চালানোর ক্ষমতা প্রদান করে, যা বাম দিকের পরিবর্তনের প্রয়োগের অনুমতি দেয়।
আপনি সরাসরি আইওএস বা অ্যান্ড্রয়েড ফোনে পরীক্ষা করতে Tosca ব্যবহার করতে পারেন, সেইসাথে অ্যান্ড্রয়েড স্টুডিওর মতো একটি IDE-এর মাধ্যমে উপলব্ধ এমুলেটর বা সিমুলেটরগুলির মাধ্যমে। Tosca ব্যবহার করে, আপনি আপনার অ্যাপ্লিকেশন স্ক্যান করতে পারেন এবং এটি পরীক্ষার কেস তৈরি করতে পারেন:
Tosca একবার টেস্ট কেস তৈরি করলে, আপনি নিজের টেস্ট কেসও তৈরি করতে পারেন।
Tosca এর একটি সুবিধা হল এটি আপনাকে কোড না লিখেই পরীক্ষা লিখতে দেয়। এটি তার মডিউলগুলির লাইব্রেরির মাধ্যমে সম্ভব হয়েছে যা একটি ব্রাউজার খোলা বা একটি ফর্ম পূরণ সহ বেশিরভাগ প্রতিটি ক্রিয়াকে অনুকরণ করতে পারে।
এই উদাহরণে, আমরা আমাদের Tosca মোবাইল পরীক্ষার ক্ষেত্রে তিনটি মডিউল ব্যবহার করেছি। আমরা পরীক্ষা করি:
লক্ষ্য করুন যে আমাদের যা করতে হবে তা হল নমুনা ইনপুট প্রদান করা (স্ক্রিনশটে, আমরা উপরে হাইলাইট করা ধাপ 3 এর জন্য এটি করছি)। একবার পরীক্ষা সম্পূর্ণ হলে, আপনি Tosca-তে একটি ডায়াগনস্টিক রিপোর্ট পাবেন।
Tosca-এর মতো একটি পণ্য ব্যবহার করে, মোবাইল ডেভেলপমেন্টের উপর দৃষ্টি নিবদ্ধ করা সফটওয়্যার ইঞ্জিনিয়াররা তাদের দলকে মোবাইল পরীক্ষার জন্য বাকী বিষ্ঠা কাজে লাগিয়ে প্রতিযোগিতামূলক সুবিধায় রাখতে পারে:
আমার পাঠকরা মনে করতে পারেন যে আমি নিম্নলিখিত মিশনের বিবৃতিতে ফোকাস করেছি, যা আমি মনে করি যে কোনও আইটি পেশাদারের জন্য প্রয়োগ করা যেতে পারে:
“আপনার বৌদ্ধিক সম্পত্তির মূল্যকে প্রসারিত করে এমন বৈশিষ্ট্য/কার্যকারিতা প্রদানে আপনার সময়কে ফোকাস করুন। অন্য সবকিছুর জন্য ফ্রেমওয়ার্ক, পণ্য এবং পরিষেবার সুবিধা নিন।" - জে. ভেস্টার
সর্বোচ্চ উৎপাদনশীলতায় পৌঁছানোর জন্য, মোবাইল ডেভেলপমেন্টের উপর দৃষ্টি নিবদ্ধ সফ্টওয়্যার ইঞ্জিনিয়ারদের মোবাইল পরীক্ষার জন্য বাম স্থানান্তর গ্রহণ করতে হবে। যাইহোক, সমাধান খোঁজার সময় আদর্শ পছন্দের যেকোনো যুক্ত শিক্ষার বক্ররেখা এবং সমর্থনযোগ্যতা বিবেচনা করা উচিত।
Tosca পণ্যটি সমর্থন এবং রক্ষণাবেক্ষণের জন্য অতিরিক্ত উত্স কোড ছাড়াই দলগুলিকে শিফট-বাম অবস্থায় পৌঁছানোর অনুমতি দিয়ে আমার ব্যক্তিগত মিশন বিবৃতি মেনে চলে৷ পণ্যটি নন-ইঞ্জিনিয়ারদের পরীক্ষার বিকাশে অংশগ্রহণ করার অনুমতি দেয়, দলগুলিকে ডিজাইনের মিল প্রত্যাশা নিশ্চিত করতে একটি সুবিধা দেয়।
আমি ব্যক্তিগতভাবে বেশ কয়েক বছর ধরে শিফট বাম পদ্ধতির ব্যবহার করেছি এবং প্রক্রিয়াটি অনুসরণ করার কারণে প্রতিবার ত্রুটি এড়ানোর অভিজ্ঞতার প্রশংসা করি। মোবাইল ডেভেলপমেন্টের বাম পরিবর্তনের ধারণাটি কাজে লাগানোর সময় এসেছে।
একটি সত্যিই মহান দিন আছে!