স্বয়ংক্রিয় ব্যবহারকারী ইন্টারফেস টেস্টিং কোন সমস্যার সমাধান করে?


23

আমরা বর্তমানে স্বয়ংক্রিয় ব্যবহারকারী ইন্টারফেস টেস্টিং অনুসন্ধান করছি (আমরা বর্তমানে স্বয়ংক্রিয় ইউনিট এবং ইন্টিগ্রেশন টেস্টিং করি)।

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

তবে আমি সামগ্রিক সুবিধাটি বোঝার চেষ্টা করছি। মানুষের দৃষ্টিভঙ্গি কী এবং কী ধরণের জিনিসগুলি ভালভাবে কাজ করে এবং কী করে না?

আমাদের সিস্টেম অবিচ্ছিন্ন বিকাশাধীন এবং আমরা নিয়মিত আমাদের (ওয়েব ভিত্তিক) প্ল্যাটফর্মের নতুন সংস্করণ প্রকাশ করি release

এখন পর্যন্ত আমরা যে প্রধান সুবিধাটি দেখতে পাচ্ছি তা হ'ল রিগ্রেশন টেস্টিং, বিশেষত আমাদের প্ল্যাটফর্মের একাধিক ক্লায়েন্ট মোতায়েনের জুড়ে।

সত্যিই অন্য লোকের মতামত খুঁজছেন। আমরা "মনে করি" এটি করা সঠিক জিনিস তবে ইতিমধ্যে ব্যস্ত সময়সূচীতে কিছু অতিরিক্ত অন্তর্দৃষ্টি খুঁজছি।


4
"অটোমেটেড টেস্টিং" শব্দটি কী সমস্যার সমাধান করার চেষ্টা করছে তা বোঝায় না? // ওটো, আপনি যদি "স্বয়ংক্রিয় পরীক্ষার" সাথে যুক্ত আরওআই সম্পর্কে অনুসন্ধান করছেন তবে এটি অন্যরকম প্রশ্ন ...
জিম জি।

উত্তর:


24

আমার দল যখন অটোমেটেড ইউআই পরীক্ষার প্রয়োগ করেছিল তখন প্রচুর দুর্দান্ত ঘটনা ঘটে।

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

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

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

এছাড়াও, আমরা টেস্ট স্যুটটি যে স্ট্রেস টেস্টিং ব্যবহার করেছিলাম তা সোনার ওজনের was আমাদের অ্যাপ্লিকেশন এতে ছুঁড়ে দেওয়া যে কোনও কিছুই নিতে পারে তা জেনে এটি সত্যই আমাকে রাতে আরও ভাল ঘুমাতে সহায়তা করেছিল। আমরা বেশ কয়েকটি পৃষ্ঠাগুলি খুঁজে পেয়েছি যা চাপের মধ্যে রয়েছে যা আমরা লাইভ হওয়ার আগে ঠিক করতে সক্ষম হয়েছি। একদম যথাযথ.

আমরা যে সর্বশেষ জিনিসটি পেয়েছি তা হ'ল কিউএ টিমের কয়েকটি টুইটের সাহায্যে আমরা আমাদের অ্যাপটিতে কিছু এসকিউএল ইঞ্জেকশন পরীক্ষাও করতে পারি। আমরা কিছু দুর্বলতা পেয়েছি যা আমরা দ্রুত সমাধান করতে সক্ষম হয়েছি।

ইউআই টেস্ট স্যুটটির সেটআপটি বেশ ভাল সময় নিয়েছিল। তবে, একবার এটি ছিল আমাদের উন্নয়ন প্রক্রিয়ার একটি কেন্দ্রীয় অঙ্গ হয়ে উঠল।


1
প্রক্রিয়াতে ব্যর্থ পরীক্ষাটি স্বতন্ত্র হওয়াতে পুনরায় পদক্ষেপের জন্য পদক্ষেপগুলি ব্যাখ্যা করার জন্য +1 (আপনার দ্বিতীয় বিষয়)
আইটিহাসআসওয়্যার

একটি ইস্যু: ইউআই ইউনিট পরীক্ষায় কি ইউআই তে সম্ভাব্য পরিবর্তনগুলি রুদ্ধ হয় না [আপনাকে লক করে রাখে] ... যদিও আমি আপত্তি জানাতে পেরেছি কারণ আপনি সেই উপায়ে এমনভাবে বর্ণনা করেছেন যেখানে আবেদনের সামগ্রিক রানটাইমটি ইউনিট পরীক্ষাগুলির চেয়ে তদারক করা হচ্ছে না বরং সিস্টেমের একটি পৃথক উপাদান পরীক্ষা করা হচ্ছে।
ভিক্ষু

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

1
@ তায়না আমাকে এই বিষয়ে বিশ্বাস করুন ... এটি ছিল। আমি অবস্থানের ভিত্তিতে [রিগ্রসিটিভ টেস্টিংয়ের জন্য] ইউআই টেস্টটি স্বয়ংক্রিয় করার চেষ্টা করেছি। এটি কাজ করে না, এবং হতাশাব্যঞ্জক। বিটিইউ আমি উপাদানগুলিকে আকাশে সরানোর বিষয়ে উল্লেখ করছিলাম, ভিউ / ইউআই, এবং
থিমেবল ইউআইগুলি

13

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

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

কোনও বিল্ড সার্ভারে (কমপক্ষে দিনে একবার) পরীক্ষা করা স্বয়ংক্রিয়ভাবে চালিত অবশ্যই absolute

আমরা সত্যিই টেস্টারদের খুব বেশি কোড লিখতে চাই না।

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


13

এবং আমরা প্রকৃতপক্ষে পরীক্ষকদের খুব বেশি কোড লিখতে চাই না

আমরা বিপরীত পন্থা গ্রহণ। আমরা পরীক্ষকগণ কোড লেখার চেয়েছিলাম

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

  1. ব্যবহারকারীর গল্প।

  2. অপারেশনাল ধারণা। গল্পটি সম্ভবত কীভাবে কাজ করবে। নকশা পর্যালোচনা.

  3. স্ক্রিন স্কেচ: ইউআই ডিজাইন। এটি দেখতে কেমন হবে।

  4. সেলেনিয়াম স্ক্রিপ্টস। যদি স্ক্রিপ্টগুলি সমস্ত কাজ করে, আমরা মুক্তির কাজটি সম্পন্ন করেছি।

  5. স্ক্রিপ্টটি কাজ না করা পর্যন্ত কোডিং এবং টেস্টিং।

কার্যকারিতা বিদ্যমান তা প্রদর্শনের একমাত্র উপায় স্বয়ংক্রিয় পরীক্ষার testing

ম্যানুয়াল টেস্টিং ত্রুটি-প্রবণ এবং পরিচালনা ওভাররাইডের সাপেক্ষে: "এটি যথেষ্ট ভাল, এই ব্যর্থ পরীক্ষাগুলি সময় মতো এটিকে মুক্তি দেওয়ার মতো ততটা গুরুত্ব দেয় না।"

"একটি স্বয়ংক্রিয় পরীক্ষা ব্যতীত কোনও প্রোগ্রাম বৈশিষ্ট্য কেবল উপস্থিত থাকে না" "

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


2
"পরীক্ষকগণ স্বয়ংক্রিয় চেক লেখেন"। এভাবেই পরীক্ষকদের তাদের কাজ করা উচিত। "পরীক্ষকরা কখনও পরীক্ষার সুযোগ পান" আমার পক্ষে খুব একটা তাৎপর্যপূর্ণ নয়। এর অর্থ কি হতে পারে তা আপনি ব্যাখ্যা করতে পারেন?
এস .লট

3
@ এস.লোট: সম্ভবত ম্যানুয়াল টেস্টিং। অটোমেটেড টেস্টিং দুর্দান্ত তবে সব কিছু নয়। এটি অনেকগুলি অপ্রত্যাশিত ত্রুটি মোডগুলিকে চিহ্নিত করতে পারে না (যেমন লেআউট সমস্যা)। এবং আমি বলব যে শেষ দুটি বাক্যে প্রদর্শিত মৌলবাদটি হ'ল বিপরীত।
মাইকেল বর্গওয়ার্ট

11
Automated testing is the only way to demonstrate that the functionality exists.না এটা না। এক্সপ্লোরারি টেস্টিং বা ম্যানুয়ালি এক্সিকিউট করা পরীক্ষাগুলি কার্যকারিতা উপস্থিত রয়েছে তা দেখায়। এটি স্বয়ংক্রিয় পরীক্ষার মতো ভাল নয়, তবে স্বয়ংক্রিয় পরীক্ষাই পরীক্ষার একমাত্র উপায় নয়।
স্টুপারউজার

1
@ এস.লট - মাইকেল এবং স্টুপারউসারের এটি ঠিক আছে। ম্যানুয়াল এবং পছন্দসই অনুসন্ধানের পরীক্ষা।
লিন্ডন ভ্রোমান

1
মৌলবাদের পক্ষে -১, যেমন মাইকেল লিখেছেন। যুক্তিযুক্ত সিদ্ধান্তে নেওয়ার সময় সেই মনোভাবটি কতটা হাস্যকর তার ব্যাখ্যা করার জন্য joelonsoftware.com/items/2007/12/03.html দেখুন ।
ম্যাসন হুইলারের

5

এখন পর্যন্ত আমরা যে প্রধান সুবিধাটি দেখতে পাচ্ছি তা হ'ল রিগ্রেশন টেস্টিং, বিশেষত আমাদের প্ল্যাটফর্মের একাধিক ক্লায়েন্ট মোতায়েনের জুড়ে।

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

এছাড়াও, এটিকে স্বয়ংক্রিয় করে তৈরি করে আপনি আপনার বিকাশকারীদের পরীক্ষা চালিয়ে নিতে পারেন এবং তাই প্রক্রিয়াটির পরে কেবল বনজ সমস্যার সনাক্ত করা যায়।


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

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

5

আমরা আরও বেশি নমনীয় রেকর্ডারটির কারণে সেলেনিয়াম এবং টেলিরিকের দিকে নজর রেখেছি এবং পরবর্তীকালে পছন্দসই সরঞ্জাম হিসাবে স্থির হয়েছি

আমি নিশ্চিত না যে আপনি এটিতে কতটা নজর রেখেছেন। অবশ্যই অন্যান্য বিকল্প আছে। আপনি কি ওয়াটার , ওয়াটিন , সিকুলির কয়েকটি নাম রেখেছেন ?

এবং আমরা প্রকৃতপক্ষে পরীক্ষকদের খুব বেশি কোড লিখতে চাই না।

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

তবে আমি সামগ্রিক সুবিধাটি বোঝার চেষ্টা করছি। মানুষের দৃষ্টিভঙ্গি কী এবং কী ধরণের জিনিসগুলি ভালভাবে কাজ করে এবং কী করে না?

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

এখন পর্যন্ত আমরা যে প্রধান সুবিধাটি দেখতে পাচ্ছি তা হ'ল রিগ্রেশন টেস্টিং, বিশেষত আমাদের প্ল্যাটফর্মের একাধিক ক্লায়েন্ট মোতায়েনের জুড়ে।

এটিই প্রধান উপকারীতা এবং সঠিকভাবে সেট আপ করা থাকলে, বেশিরভাগ ব্রাউজারগুলি পরীক্ষা করতে পারে যে আপনার একটি ছোট কনফিগারেশন পরিবর্তন প্রয়োজন need

আমরা "মনে করি" এটি করা সঠিক জিনিস তবে ইতিমধ্যে ব্যস্ত সময়সূচীতে কিছু অতিরিক্ত অন্তর্দৃষ্টি খুঁজছি।

যেমনটি আমি আগেই বলেছি, টেস্ট অটোমেশন যথেষ্ট প্রচেষ্টা নেয়, তবে, সঠিকভাবে সম্পন্ন করার পরে, আমি এখনও একটি দলের সাথে দেখা করি নি, যিনি বলেছিলেন "আমি আশা করি আমরা আমাদের পরীক্ষা অটোমেশন সেটআপ না করতাম।"


2
+1 বিশেষত "যারা এই স্ক্রিপ্টগুলি বজায় রাখতে হয় তাদের জন্য আমি খারাপ বোধ করি" for ভালভাবে ডিজাইন করা কোড রক্ষণাবেক্ষণযোগ্য UI পরীক্ষাগুলি রচনার একটি মূল অঙ্গ, বিশেষত ঘন ঘন পরিবর্তিত UI সহ। যদি ওপি'র পরীক্ষকগণ পেজ অবজেক্টগুলি ব্যবহার করতে বা কোডটি পুনরায় ব্যবহার করতে না পারেন তবে আমি ওপিকে কেবল স্থিতিশীল ইউআই স্বয়ংক্রিয়ভাবে বিবেচনা করার পরামর্শ দিই (যদি থাকে তবে)।
এথেল ইভান্স 17

3

আপনি ঠিক বলেছেন যে রিগ্রেশন এক বিশাল। এছাড়াও -

  • আপনার পরীক্ষাগুলি যদি নিয়মিতভাবে লেখা থাকে তবে আপনি পরীক্ষার সেটগুলিকে মেশানো এবং ম্যাচ করে বাক্সটির জন্য আরও ঠাঁই পেতে পারেন

  • আমরা ডেটা লোডের জন্য স্বয়ংক্রিয় পরীক্ষার স্ক্রিপ্টগুলি পুনরায় ব্যবহার করেছি যাতে বড় আকারের পরীক্ষার জন্য আমাদের কোনও ডেটাবেস ক্ল্যাজ করতে না হয়

  • কর্মক্ষমতা পরীক্ষা

  • বহু থ্রেড পরীক্ষা

  • ওয়েব সিস্টেমে - ব্রাউজারগুলির মধ্যে অদলবদল করা এবং ওএসের মধ্যে অদলবদল করা। ব্রাউজারের ধারাবাহিকতার সমস্যাগুলির সাথে, যথাসম্ভব প্রশস্ত বেসকে আঘাত করা একটি বিশাল জিনিস।

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


আপনার প্রথম পয়েন্টের জন্য +1। একটি সফল পরীক্ষা অটোমেশন স্যুট জন্য একেবারে সমালোচনা!
লিন্ডন ভ্রোমান

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

3

একটি মাত্র উদাহরণ: ওয়েবপৃষ্ঠা রেন্ডারিংয়ের সময়কাল সঠিকভাবে পরিমাপ করা

অটোমেশন পরীক্ষা ব্যবহার করে, ওয়েব ব্রাউজারের কার্যকারিতা পরীক্ষা করা আরও সহজ। আপনি গ্রহণযোগ্যতার সর্বাধিক প্রতিক্রিয়া সময় পরিমাপ করার জন্য, কেবলমাত্র আপনার পরীক্ষার স্ক্রিপ্টগুলিতে একটি ধ্রুবক সেট করুন এবং / অথবা এটিকে একটি ফাংশন প্যারামিটার হিসাবে পাস করুন, যেমন এই সিউডোকোডে: $ সেল-> অপেক্ষা_ফোর_পৃষ্ঠ_টো_লোড ($ মাইপেজ, $ ম্যাকটাইম)।

কম মান সহ ক্রস ব্রাউজার পরীক্ষা করা বেশ আলোকিত হতে পারে।

বিকল্পটি হ'ল কর্মচারীরা স্টপ ওয়াচের সাহায্যে সময় পরিমাপ করবে।


3

অটোমেটেড ইউজার ইন্টারফেস টেস্টিংয়ের ক্ষমতাটি সমাধান করে:

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

তবে অন্যরা যেমন উল্লেখ করেছে:

Telerik ...

তার অনেক বেশি নমনীয় রেকর্ডারের কারণে পছন্দের সরঞ্জাম

আমাদের অনেকের জন্য এটি একটি লাল-পতাকা।

এইভাবে রেকর্ড করা স্ক্রিপ্টগুলি দীর্ঘমেয়াদী সমাধান না হয়ে থাকে কারণ:

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

টেলিরিকের কিছু সুবিধা রয়েছে যা বিবেচনা করা উচিত:

  • মোবাইল ক্লায়েন্টদের লক্ষ্য
  • বৃদ্ধি পরিচালনা করার জন্য অন্তর্নির্মিত সরঞ্জামগুলি
  • অ্যান্ড্রয়েড, আইওএস এবং উইন্ডোজ ফোন পরিচালনা করে

ব্যবস্থাগুলি পূরণে সহায়তা করতে পারে এমন একটি পদ্ধতির মধ্যে রয়েছে টুলস পৃষ্ঠা রেকর্ডার ব্যবহার করে প্রাথমিক স্ক্রিপ্টটি রেকর্ড করা তবে তারপরে আইডি এর ক্লাস এবং ডেটা-বৈশিষ্ট্যগুলি ব্যবহার করতে স্ক্রিপ্টটি পরিবর্তন করা যাতে এটি সময়ের সাথে সাথে স্থায়ী হয়। এটি এমন একটি পদ্ধতির যা আমি প্রকৃতপক্ষে ফায়ারফক্স সেলেনিয়াম প্লাগইন ব্যবহার করেছি।


2

এটি "বিশেষজ্ঞের পরীক্ষা" করে তোলে ("এক্সপ্লোরারি টেস্টিংয়ের অনুরূপ" তবে শেষ ব্যবহারকারী বা দলের জ্ঞানের সাথে প্রচুর পরিমাণে জ্ঞানের সাথে সদস্যদের দ্বারা পরিচালিত) সম্পাদন, ফলাফল রেকর্ড, পরিমাপ এবং স্বয়ংক্রিয়করণ সহজ করে তোলে।


2

আমি এটি ভিন্ন পটভূমি থেকে এসেছি। আমার পূর্ববর্তী নিয়োগকর্তাগুলিতে, আমরা বাণিজ্যিক স্বয়ংক্রিয় পরীক্ষার সরঞ্জামগুলি তৈরি করেছি (QALoad, QARun, TestPartner, সিল্কস্টেস্ট, সিল্কਪਰোমার)।

আমরা দুটি ভূমিকা ভরাট হিসাবে স্বয়ংক্রিয় UI পরীক্ষায় দেখেছি:

  1. সম্পূর্ণ রিগ্রেশন টেস্টিং

  2. পরীক্ষার পরিবেশগুলির স্বয়ংক্রিয় সেটআপ

আমরা রাতের ভিত্তিতে রিগ্রেশন টেস্টগুলি সম্পাদন করার জন্য সরঞ্জামগুলিতে ভারী ঝুঁকির সাথে। আমাদের কাছে ইউআই এবং ব্যবসায়িক যুক্তির মধ্যে কিছু ভাঙ্গেনি তা যাচাই করার জন্য সমস্ত বোতাম এবং কথোপকথন পরীক্ষা করার ক্ষমতা কেবল আমাদের ছিল না।

আরও গুরুত্বপূর্ণ পরীক্ষাগুলির জন্য, আমরা দেখতে পেয়েছি যে একটি একক ব্যক্তি বেশ কয়েকটি ভিএম স্পিন করতে পারে এবং সত্যিকারের পরীক্ষায় পৌঁছতে স্ক্রিপ্টগুলি ব্যবহার করতে পারে। এটি তাদেরকে গুরুত্বপূর্ণ বিটগুলিতে ফোকাস করতে দেয় এবং 24-পদক্ষেপের পরীক্ষার কেসটি অনুসরণ না করে অনুসরণ করে।

অটোমেটেড টেস্টিংয়ের একমাত্র সমস্যাটি হ'ল নকল বা অপ্রয়োজনীয় পরীক্ষাগুলি বাদ দেওয়ার জন্য কোনও ধরণের তদারকি ছাড়াই বাক্সের উপরে অনেকগুলি পরীক্ষার ডাম্প করা। প্রতিবার এবং পরে আমাদের ফিরে যেতে হবে এবং জিনিসগুলি আবার ছাঁটাই করতে হবে যাতে স্যুটটি 12 ঘন্টার মধ্যে সম্পূর্ণ হতে পারে।


2

যে কোনও ধরণের স্বয়ংক্রিয় পরীক্ষণ রিগ্রেশন টেস্টের ব্যবস্থা করে; যে টেস্টটি কাজ করত তা চালিয়ে আপনি যাচাই করেছেন যে আপনি যা কিছু যোগ করেছেন তা নির্বিশেষে এটি এখনও কাজ করে (বা না)। পরীক্ষাটি কোনও ইন্টিগ্রেশন টেস্ট (যা সাধারণত ইউআইটিকে স্পর্শ করে না) বা এএটি (সাধারণত যা প্রয়োজন ইউআইয়ের হয়) ।

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

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


0

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

  • আপনি কি নির্ধারণ করছেন কোনও অনুকরণ অনুসারে কোনও উপাদান কাজ করে?
  • আপনি কি বিভিন্ন সম্ভাব্য ইনপুট এবং আউটপুটগুলির পরীক্ষা করতে চান?
  • উপাদান পরীক্ষা করে?
  • বা আপনি "এটি কাজ করে" পরীক্ষা করার চেষ্টা করছেন?

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


-1

আমার অভিজ্ঞতায়, স্বয়ংক্রিয় ব্যবহারকারী ইন্টারফেস টেস্টিং সহ অনেক শূন্যস্থান কভার করে:

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

1
এটি কীভাবে এই জিনিসগুলির সাথে সহায়তা করে? আপনি কিছুটা বিশদভাবে জানাতে পারলে ভাল লাগবে।
হাল্ক

-1

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

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

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