سیلینیم ویب ڈرایور میں اسکرین شاٹ لینے کا طریقہ



سیلینیم ویب ڈرایور میں اسکرین شاٹ لینے کا طریقہ سے متعلق یہ مضمون آپ کو اسکرین شاٹ کے طریقہ کار اور ٹیسٹ این جی سامعین کا استعمال کرتے ہوئے اسکرین شاٹ پر قبضہ کرنے کا طریقہ سیکھنے میں مدد کرتا ہے۔

آٹومیشن ٹیسٹنگ نے جدید دور کے ٹیسٹنگ کے ایک نئے نل کی تعریف کی ہے اور یہیں رہنا ہے۔ تاہم اگر جانچ کا عمل ناکام ہوجاتا ہے تو ، اسکرپٹ کا دوبارہ تجربہ کرنا انتہائی تکلیف دہ ہوگا۔ یہیں سے اسکرین شاٹس کام آتے ہیں ، کیونکہ وہ فوری طور پر ٹیسٹ کی ناکامیوں کا پتہ لگانے میں مدد کرتے ہیں۔ اس بلاگ کے ذریعہ ہم سیکھ لیں گے کہ اسکرین شاٹ میں کیسے لینا ہے ویب ڈرایور

میں مندرجہ ذیل عنوانات پر گفتگو کروں گا:

تو ، چلیں ، لوگوں کو!





سیلینیم ویب ڈرایور میں اسکرین شاٹ: آٹومیشن ٹیسٹنگ میں اسکرین شاٹ کی ضرورت کیوں ہے؟

اسکرین شاٹ بگ تجزیہ کے ل des مطلوبہ ہیں۔ عملدرآمد کے دوران اسکرین شاٹس خود بخود لے سکتے ہیں۔ فرض کریں کہ آپ کسی ویب پیج کو خودکار کرنے کے لئے ٹیسٹ اسکرپٹ لکھتے ہیں تو ، آپ یہ دیکھنے کے لئے نگرانی نہیں کرتے ہیں کہ آیا یہ ہر بار کام کررہا ہے۔ آپ اسکرپٹ کو اپنا کام کرنے دیں گے اور آپ کسی اور کام میں مصروف ہوجائیں گے۔

  • اسکرین شاٹس ایپلی کیشن کے بہاؤ کو سمجھنے میں ہماری مدد کرتا ہے اور جانچ پڑتال کرتا ہے کہ آیا وہ اس کے مطابق سلوک کررہا ہے۔
  • آپ کو ویب اسکرین شاٹ میں ٹائیکسٹ WebDriver مثال دینے کی ضرورت ہے۔
  • جب آپ انجام دے رہے ہو تب یہ مدد کرتا ہے کراس براؤزنگ کی جانچ چونکہ صارف کو پھانسی کی اطلاعات کو دیکھنے کی ضرورت ہوتی ہے
  • اگر آپ ہیڈ لیس براؤزر پر کام کر رہے ہیں تو پھانسی سے باخبر رہنا آسان ہو جائے گا۔
  • ناکام ہونے والے ٹیسٹوں کا اسکرین شاٹ بھی آسانی سے گرفت میں لیا جاسکتا ہے۔

اب ، ہم آگے بڑھیں اور سیکھیں کہ آپ کسی ایپلی کیشن کی جانچ کے دوران اسکرین شاٹ کو کس طرح لے سکتے ہیں۔



سیلینیم ویب ڈرایور میں اسکرین شاٹ: سیلینیم میں اسکرین شاٹ کیسے حاصل کریں؟

سیلینیم میں اسکرین شاٹ حاصل کرنے کے ل To ، ہم انٹرفیس کا استعمال کرسکتے ہیں ، جسے کہتے ہیں اسکرین شاٹ لیتا ہے۔ یہ طریقہ iڈرائیور کو بتاتا ہے ، کہ یہ اسکرین شاٹ پر قبضہ کرسکتا ہے اور اسے مختلف طریقوں سے اسٹور کرسکتا ہے۔

سکرم ماسٹر کے کردار اور ذمہ داریاں پی ڈی ایف

نحو:



فائل فائل = ((ٹیکس اسکرین شاٹ) ڈرائیور) .getScreenshotAs (آؤٹ پٹ ٹائپ.فائل) اسٹرنگ اسکرین شاٹبیس 64 = ((ٹکس اسکرین شاٹ) ڈرائیور).

کہاں آؤٹ پٹ ٹائپ اسکرین شاٹ کے لئے آؤٹ پٹ کی قسم کی وضاحت کرتا ہے۔

اسکرین شاٹ پر قبضہ کرنے اور اسے کسی خاص مقام پر محفوظ کرنے کے ل there ، ایک طریقہ موجود ہے جسے ' getScreenshotAs '

آئیے اس کو تفصیل سے سمجھیں

WebDriver میں توسیع کے لئے اسکرین شاٹ لیتا ہے طریقہ ، یہ بہتر ترتیب میں درج ذیل کو واپس کرنے کے لئے براؤزر پر انحصار کرنے کی بہترین کوشش کرتا ہے:

  • پورا صفحہ
  • موجودہ ونڈو
  • موجودہ فریم کا مرئی حصہ
  • براؤزر پر مشتمل پورے ڈسپلے کا اسکرین شاٹ
  • HTML عنصر کا پورا مواد۔ HTML عنصر کا مرئی حصہ

نحو:

X getScreenshotAs (آؤٹ پٹ ٹائپ (X). ہدف) نے WebDriverException کو پھینک دیا

کہاں

  • ایکس طریقہ کار کی واپسی کی قسم ہے
  • ہدف منزل کا پتہ رکھتا ہے
  • پھینک دیتا ہے اگر بنیادی نفاذ اسکرین شاٹ کی گرفتاری کی حمایت نہیں کرتا ہے۔

ٹیسٹ کیس ناکام ہوگیا

کچھ عمدہ نئی افعال کے ساتھ سامنے آیا ہے جو کسی ایپلی کیشن کی جانچ آسان تر بنا دیتا ہے۔ اس کی وجہ یہ ہے کہ جاوا اسکرپٹ سینڈ باکس کے باہر تعامل کی اجازت دیتا ہے۔ نئی کارآمد فعالیت میں سے ایک ویب ڈرایور سے اسکرین شاٹس لینے کے قابل ہے۔

بگ ڈیٹا تجزیہ کی ایپلی کیشنز

آپ ٹیسٹ کے کسی بھی مرحلے پر اسکرین شاٹس لے سکتے ہیں ، لیکن زیادہ تر یہ ٹیسٹ کے وقت استعمال ہوتا ہے ناکام ہوجاتا ہے اور اسکرین شاٹس لینے سے تجزیہ میں مدد ملتی ہے تاکہ ہم دیکھ سکیں کہ ٹیسٹ کی ناکامی کے دوران کیا غلط ہوا۔ یہ استعمال کرکے کیا جاسکتا ہے ٹیسٹ این جی تشریحات۔

ایسا کرنے کے لئے ، پہلے ، مجھے ضرورت ہوگی

  • ایک کلاس بنائیں اور پھر عمل کریںٹیسٹ این جی ‘ ITestListener ' .
  • پھر کوئی طریقہ کال کریں ‘onTestFailure’ .
  • اس طریقہ میں اسکرین شاٹ لینے کے لئے کوڈ شامل کریں۔
  • اسکرین شاٹ لینے کے بجائے ، ٹیسٹ کے طریقہ کار کا نام لیں اور ٹیسٹ کے نام کے ساتھ اسکرین شاٹ لیں اور اسے منزل کے فولڈر میں رکھیں۔

اب ، سوال یہ ہے کہ ٹیسٹ لینسٹر کلاس میں ٹیسٹ این جی کا استعمال کرتے ہوئے ڈرائیور آبجیکٹ کیسے حاصل کیا جائے؟

میں آپ کی مدد کرنے میں مدد کروں گا کہ یہ کرنا کتنا آسان ہے۔

سیلینیم میں اسکرین شاٹ لینے کے ل we ، ہمارے پاس ڈرائیور چیز رکھنے کی ضرورت ہے۔ ITestContext سے ڈرائیور حاصل کریں جس کو بیس سیٹ اپ میں رکھنا ہے جہاں ہمارے ڈرائیور کی مثال تیار کرنا آسان ہے۔ امید ہے کہ آپ لوگ اس سے صاف ہیں۔ آگے بڑھتے ہوئے ، ہم ایک ڈیمو پر ایک نگاہ ڈالیں گے جہاں میں آپ کو یہ سمجھنے میں مدد کروں گا کہ سیلینیم میں اسکرین شاٹ لینا کتنا آسان ہے۔

میں یہاں دو مختلف پروگراموں کی وضاحت کروں گا تاکہ آپ کو سیلینیم میں اسکرین شاٹ لینے کا طریقہ کے بارے میں مناسب اندازہ ہوسکے۔

پہلا پروگرام کامیابی کے ساتھ چلائے جانے والے ٹیسٹ کیس کے اسکرین شاٹ پر قبضہ کرنے کا طریقہ سے متعلق ہے۔ دوسرا پروگرام آپ کو یہ سمجھنے میں مدد کرتا ہے کہ ٹیسٹ میں ناکامی کے دوران اسکرین شاٹ کیسے لیا جائے۔

سیلینیم ویب ڈرایور میں اسکرین شاٹ: ڈیمو

جب آپ ویب ایپلیکیشن کی جانچ کرنا چاہتے ہیں تو سب سے پہلے کام میں سیلینیم جار فائلیں اور جاوا لائبریری موجود ہیں۔ آپ اپنی پسند کا IDE منتخب کرسکتے ہیں۔ میں چاند گرہن IDE پر کام کرنا پسند کرتا ہوں کیونکہ یہ صارف دوست ہے۔

  • میں براؤزر ڈرائیور کو متعین کروں گا
  • ChromeDriver کے ساتھ ڈرائیور کی مثال قائم کریں۔
  • ویب پیج کا URL حاصل کریں۔
  • اسی طرح کی کارروائیوں کو انجام دیں۔

اس معاملے میں ، میں اپنے سرکاری ویب پیج کا اسکرین شاٹ لوں گا

نیچے کا کوڈ ملاحظہ کریں:

درآمد java.io.File درآمد java.io.IOException درآمد org.apache.commons.io.FileUtils درآمد org.openqa.selenium.TutScreen شاٹ درآمد org.openqa.selenium.WebDriver درآمد orag.openqa.selenium .selenium.chrome.ChromeDriver پبلک کلاس اسکرین {عوامی جامد باطل اہم (سٹرنگ [] آرگس) نے استثنیٰ {System.setProperty ('webdriver.chrome.driver') پھینک دیا ، 'C: صارفیننیہ_ویدیاڈیسکٹوکروم ڈرائور_یوئن 32 کروم ڈرائیو ڈرایور () driver.get ('http://www.edureka.co/') TakesScreenshot ts = (TakesScreenshot) ڈرائیور فائل کا ذریعہ = ts.getScreenshotAs (آؤٹ پٹ ٹائپ.فائل) FileUtils.copyFile (ماخذ ، نئی فائل ('./ اسکرین شاٹس / اسکرین) .png ')) System.out.println (' اسکرین شاٹ لیا گیا ہے ') ڈرائیور.کوٹ ()}

مندرجہ بالا کوڈ کے لئے آؤٹ پٹ ذیل میں دکھایا گیا ہے۔

اسکرین آؤٹ پٹ - سیلینیم - ایڈورکا میں اسکرین شاٹ کیسے لیں

اور فولڈر میں شبیہہ موجود ہے

ککڑی جاوا سیلینیم ویب ڈرایور کی مثال

اب ، آئیے ہم سمجھتے ہیں کہ کیسے ٹیسٹ کا اسکرین شاٹ لینے میں ناکام رہا

  • پہلا،
  • TestNG XML فائل شامل کریں۔
  • maven انحصار شامل کریں.
  • ایک کلاس بیس کلاس بنائیں جس میں ویب ڈرائور مثال موجود ہو۔
  • دو افعال کی وضاحت کریں یعنی ابتدا () اور ناکام ()
  • ان دونوں افعال کو کسی اور کلاس میں کال کریں ، ڈیمو جو بیس کلاس کو وراثت میں ملتا ہے۔
  • یہ ڈیمو کلاس دو طریقوں کا سیٹ اپ () رکھتی ہے جو ابتداء () فنکشن کو کہتے ہیں ، آنسو ڈاون () ڈرائیور اور اسکرین شاٹسٹ () کو بند کرنے میں مدد کرتا ہے جہاں ہم اصل اور متوقع آؤٹ پٹ پر زور دیتے ہیں۔
  • اس معاملے میں ، میں صحیح اور غلط دونوں پر زور دوں گا جس کے نتیجے میں ٹیسٹ کیس کی ناکامی ہوگی۔
  • ایک اور کلاس بنائیں ، سننے والاکلاس جس سے ویب ڈرائور کو خصوصی واقعات سننے میں مدد ملتی ہے۔
  • اس ٹیسٹ کو سننے کے ل main مرکزی تقریب سے پہلے اس کوڈ کو ڈیمو کلاس @ لسٹنرز (سننے والوں کا طبقہ) میں شامل کریں۔

آپ اس کوڈ کا حوالہ دے سکتے ہیں:

بیس کلاس

پیکیج com.edureka درآمد java.io.File درآمد java.io.IOException درآمد org.apache.commons.io.FileUtils درآمد org.openqa.selenium.OutputType درآمد org.openqa.selenium.Takes اسکرین شاٹ درآمد org.openqa.selenium.WebDriver درآمد کریں org.openqa.selenium.chrome.ChromeDriver درآمد org.testng.annotations.Listeners عوامی کلاس بیس کلاس {عوامی جامد ویب ڈرایور ڈرائیور پبلک جامد باطل ابتدا (). System.setProperty ('webdriver.chrome.driver'، 'C: UsedNeha_dwdd3232). مثال ') ڈرائیور = نیا ChromeDriver () driver.get (' http://www.edureka.co/ ')} عوامی باطل ناکام () {فائل srcFile = ((TakesScreenshot) ڈرائیور). {FileUtils.copyFile (srcFile ، نئی فائل ('/ C: / صارفین / Neha_ वैद्य / ایکلپسی-ورک اسپیس / اسکرینز /' + 'اسکرین شاٹسٹین / ٹیسٹ.jpg'))} کیچ (IOException ای) {e.PrintStackTrace ()}} }

ڈیمو کلاس

پیکیج com.edureka درآمد org.testng.Assert درآمد org.testng.annotations.AfterMethod درآمد org.testng.annotations.BeforeMethod درآمد org.testng.annotations.Listeners درآمد org.testng.annotations.TestListteners (سننے والوں کا شیشہ شیشہ) عوامی کلاس ڈیمو نے بیس کلاس extendBeforeMethod عوامی باطل سیٹ اپ () {ابتداء ()}AfterMethod عوامی باطل آنسو ڈاون () {driver.quit ()} @ ٹسٹ پبلک باطل ٹیک اسکرین شاٹ ٹیسٹ () {Assert.assertEquals (سچ ، غلط)}}

سننے والا کلاس

پیکیج com.edureka درآمد org.testng.ITestContext درآمد org.testng.ITestListener درآمد org.testng.ITestResult عوامی طبقے کے سامعین کے طبقے نے توسیع کی ہے BasClass ITestListener {پبلک باطل آنٹیسٹ اسٹارٹ (ITestResult نتیجہ) {// ٹٹو آٹو جنریٹڈ اسٹڈ پبلک ویڈائک طریقہ پر (ITestResult نتیجہ) {// ٹوڈو آٹو جنریٹڈ میٹ اسٹب} پبلک باطل آنٹیسٹ فیلر (ITestResult نتیجہ) {System.out.println ('ناکام ٹیسٹ') ناکام ()} پبلک باطل آنٹیسٹ اسکائپڈ (ITestResult نتیجہ) {// TODO Auto- پیدا شدہ طریقہ اسٹب} ٹسٹ فیلڈ بٹ وِتھِن سَسَس پرسنٹیج (ITestResult نتیجہ) {// ٹوڈو آٹو جنریٹڈ اسٹب} پبلک باطل آن اسٹارٹ (ITestContext سیاق و سباق) {// TODO آٹو جنریٹڈ اسٹب} پبلک باطل آن فائنش (ITestContext سیاق و سباق) TO // جنریٹڈ طریقہ اسٹب}

آؤٹ پٹ کو اس انداز میں دکھایا گیا ہے:

اس کے ساتھ ، ہم اس 'سیلینیم ویب ڈرایور میں اسکرین شاٹ لینے کا طریقہ' بلاگ کو ختم کردیں گے۔ مجھے امید ہے کہ آپ لوگوں نے اس مضمون سے لطف اندوز ہوئے ہوں گے اور جانچ کیس چلانے کا طریقہ سمجھا ہوگا۔ ہمارے لئے ایک سوال ہے؟ براہ کرم 'سیلینیم ویب ڈرایور میں اسکرین شاٹ کیسے لیں' کے تبصرے سیکشن میں اس کا ذکر کریں اور ہم آپ کو واپس ملیں گے۔ اگر آپ سیلینیم ویب ڈرائور کے بارے میں مزید معلومات حاصل کرنا چاہتے ہیں اور اسی میں اپنا کیریئر بنانا چاہتے ہیں تو ہمارا چیک کریں جو انسٹرکٹر کی زیر قیادت براہ راست تربیت اور حقیقی زندگی کے منصوبے کے تجربے کے ساتھ آتا ہے۔ یہ تربیت آپ کو سیلینیم ٹیسٹنگ کو گہرائی میں سمجھنے اور اس موضوع پر مہارت حاصل کرنے میں مدد فراہم کرے گی۔