సెలీనియం వెబ్‌డ్రైవర్‌లో స్క్రీన్‌షాట్ ఎలా తీసుకోవాలి



సెలీనియం వెబ్‌డ్రైవర్‌లో స్క్రీన్‌షాట్ ఎలా తీసుకోవాలో ఈ కథనం టేక్‌స్క్రీన్‌షాట్ పద్ధతి & టెస్ట్ఎన్‌జి శ్రోతలను ఉపయోగించి స్క్రీన్‌షాట్‌ను ఎలా సంగ్రహించాలో తెలుసుకోవడానికి మీకు సహాయపడుతుంది.

ఆటోమేషన్ టెస్టింగ్ ఆధునిక పరీక్ష యొక్క కొత్త పీపాలో నుంచి నీళ్లు బయిటికి రావడమునకు వేసివుండే చిన్న గొట్టమును నిర్వచించింది మరియు ఇది ఇక్కడే ఉంది. అయితే పరీక్షా ప్రక్రియ విఫలమైతే, మొత్తం స్క్రిప్ట్‌ను తిరిగి పరీక్షించడం చాలా అసౌకర్యంగా ఉంటుంది. ఇక్కడే స్క్రీన్‌షాట్‌లు ఉపయోగపడతాయి, ఎందుకంటే అవి పరీక్ష వైఫల్యాలను తక్షణమే గుర్తించడంలో సహాయపడతాయి. ఈ బ్లాగ్ యొక్క మాధ్యమం ద్వారా స్క్రీన్ షాట్ ఎలా తీసుకోవాలో నేర్చుకుంటాము వెబ్‌డ్రైవర్.

నేను ఈ క్రింది విషయాలను చర్చిస్తాను:

కాబట్టి, ప్రారంభిద్దాం, చేసారో!





సెలీనియం వెబ్‌డ్రైవర్‌లో స్క్రీన్‌షాట్: ఆటోమేషన్ పరీక్షలో స్క్రీన్‌షాట్ ఎందుకు అవసరం?

బగ్ విశ్లేషణకు స్క్రీన్షాట్లు అవసరం. అమలు సమయంలో స్వయంచాలకంగా స్క్రీన్షాట్లను తీసుకోవచ్చు. వెబ్ పేజీని ఆటోమేట్ చేయడానికి మీరు పరీక్ష స్క్రిప్ట్ వ్రాస్తారని అనుకుందాం, ఇది ప్రతిసారీ సరిగ్గా పనిచేస్తుందో లేదో మీరు పర్యవేక్షించరు. స్క్రిప్ట్ దాని పనిని చేయడానికి మీరు అనుమతిస్తారు మరియు మీరు వేరే పనిలో పాల్గొంటారు.

  • అప్లికేషన్ యొక్క ప్రవాహాన్ని అర్థం చేసుకోవడంలో స్క్రీన్షాట్లు మాకు సహాయపడతాయి మరియు తదనుగుణంగా ప్రవర్తిస్తుందో లేదో తనిఖీ చేస్తుంది.
  • మీరు వెబ్‌డ్రైవర్ ఉదాహరణను టేక్‌స్క్రీన్‌షాట్‌కు టైప్‌కాస్ట్ చేయాలి.
  • మీరు ప్రదర్శిస్తున్నప్పుడు ఇది సహాయపడుతుంది క్రాస్ బ్రౌజింగ్ పరీక్ష అమలు యొక్క నివేదికలను వినియోగదారు చూడవలసిన అవసరం ఉన్నందున
  • మీరు హెడ్లెస్ బ్రౌజర్‌లో పనిచేస్తుంటే అమలును ట్రాక్ చేయడం చాలా సులభం అవుతుంది.
  • విఫలమైన పరీక్షల స్క్రీన్ షాట్ కూడా సులభంగా సంగ్రహించబడుతుంది.

ఇప్పుడు, ఒక అనువర్తనాన్ని పరీక్షించేటప్పుడు మీరు స్క్రీన్‌షాట్ ఎలా తీసుకోవచ్చో తెలుసుకుందాం.



సెలీనియం వెబ్‌డ్రైవర్‌లో స్క్రీన్‌షాట్: సెలీనియంలో స్క్రీన్‌షాట్‌ను ఎలా పట్టుకోవాలి?

సెలీనియంలో స్క్రీన్ షాట్‌ను సంగ్రహించడానికి, మేము ఒక ఇంటర్‌ఫేస్‌ను ఉపయోగించుకోవచ్చు టేక్స్ స్క్రీన్ షాట్. ఈ పద్ధతి iఇది స్క్రీన్‌షాట్‌ను సంగ్రహించి వివిధ మార్గాల్లో నిల్వ చేయగలదని డ్రైవర్‌ను నిర్దేశిస్తుంది.

సింటాక్స్:



ఫైల్ ఫైల్ = ((టేక్స్ స్క్రీన్షాట్) డ్రైవర్) .getScreenshotAs (అవుట్పుట్ టైప్.ఫైల్) స్ట్రింగ్ స్క్రీన్షాట్బేస్ 64 = ((టేక్స్ స్క్రీన్షాట్) డ్రైవర్) .getScreenshotAs (అవుట్పుట్ టైప్.బాస్ 64)

ఎక్కడ అవుట్‌పుట్ టైప్ స్క్రీన్ షాట్ కోసం అవుట్పుట్ రకాన్ని నిర్వచిస్తుంది.

స్క్రీన్‌షాట్‌ను సంగ్రహించి, ఒక నిర్దిష్ట ప్రదేశంలో నిల్వ చేయడానికి, “ getScreenshotAs '

దీన్ని వివరంగా అర్థం చేసుకుందాం

వెబ్‌డ్రైవర్ విస్తరించడం కోసం టేక్స్ స్క్రీన్ షాట్ పద్ధతి, ఇది కిందివాటిని ప్రాధాన్యత క్రమంలో తిరిగి ఇవ్వడానికి బ్రౌజర్‌ని బట్టి ఉత్తమ ప్రయత్నం చేస్తుంది:

  • మొత్తం పేజీ
  • ప్రస్తుత విండో
  • ప్రస్తుత ఫ్రేమ్ యొక్క కనిపించే భాగం
  • బ్రౌజర్‌ను కలిగి ఉన్న మొత్తం ప్రదర్శన యొక్క స్క్రీన్ షాట్
  • HTML మూలకం యొక్క మొత్తం కంటెంట్ - HTML మూలకం యొక్క కనిపించే భాగం

సింటాక్స్:

పైథాన్‌లో దశాంశాన్ని బైనరీగా మార్చండి
X getScreenshotAs (అవుట్‌పుట్ టైప్ (X). లక్ష్యం) వెబ్‌డ్రైవర్ ఎక్సెప్షన్‌ను విసురుతుంది

ఎక్కడ

  • X అనేది పద్ధతి యొక్క తిరిగి వచ్చే రకం
  • లక్ష్యం గమ్యం చిరునామాను కలిగి ఉంది
  • విసురుతాడు అంతర్లీన అమలు స్క్రీన్ షాట్ సంగ్రహానికి మద్దతు ఇవ్వకపోతే.

పరీక్ష కేసు విఫలమైంది

అనువర్తనాన్ని పరీక్షించడం చాలా సులభతరం చేసే కొన్ని గొప్ప కొత్త కార్యాచరణలతో ముందుకు వచ్చింది. దీనికి కారణం జావాస్క్రిప్ట్ శాండ్‌బాక్స్ వెలుపల పరస్పర చర్యను అనుమతిస్తుంది. వెబ్‌డ్రైవర్ నుండి స్క్రీన్‌షాట్‌లను తీయగలగడం కొత్త ఉపయోగకరమైన కార్యాచరణలలో ఒకటి.

మీరు పరీక్ష యొక్క ఏ దశలోనైనా స్క్రీన్షాట్లను తీసుకోవచ్చు, కానీ ఎక్కువగా, ఇది పరీక్ష చేసినప్పుడు ఉపయోగించబడుతుంది విఫలమవుతుంది మరియు స్క్రీన్‌షాట్‌లు తీసుకోవడం విశ్లేషణకు సహాయపడుతుంది కాబట్టి పరీక్ష వైఫల్యం సమయంలో ఏమి జరిగిందో మనం చూడవచ్చు. దీన్ని ఉపయోగించి చేయవచ్చు TestNG ఉల్లేఖనాలు.

దీన్ని చేయడానికి, మొదట, నేను అవసరం

  • ఒక తరగతిని సృష్టించి, ఆపై అమలు చేయండిటెస్ట్‌ఎన్‌జి ‘ ITestListener ' .
  • అప్పుడు ఒక పద్ధతిని కాల్ చేయండి ‘OnTestFailure’ .
  • ఈ పద్ధతిలో స్క్రీన్ షాట్ తీసుకోవడానికి కోడ్‌ను జోడించండి.
  • స్క్రీన్ షాట్ తీయడానికి బదులుగా, టెస్ట్ పద్ధతి పేరును పొందండి మరియు పరీక్ష పేరుతో స్క్రీన్ షాట్ తీసుకొని గమ్యం ఫోల్డర్లో ఉంచండి.

ఇప్పుడు, టెస్ట్ఎన్జిని ఉపయోగించి టెస్ట్లిస్టెనర్స్ తరగతిలో డ్రైవర్ ఆబ్జెక్ట్ ఎలా పొందాలో ప్రశ్న.

దీన్ని ఎంత సులభమో అర్థం చేసుకోవడానికి నేను మీకు సహాయం చేస్తాను.

సెలీనియంలో స్క్రీన్ షాట్ తీసుకోవటానికి, మనకు డ్రైవర్ ఆబ్జెక్ట్ ఉండాలి. ITestContext నుండి డ్రైవర్‌ను పొందండి, ఇది మా డ్రైవర్ ఉదాహరణను సృష్టించడం సులభం అయిన బేస్ సెటప్‌లో సెట్ చేయాలి. మీరు అబ్బాయిలు దీనితో స్పష్టంగా ఉన్నారని ఆశిస్తున్నాము. ముందుకు వెళుతున్నప్పుడు, మేము డెమోని పరిశీలిస్తాము, అక్కడ సెలీనియంలో స్క్రీన్ షాట్ తీయడం ఎంత సులభమో అర్థం చేసుకోవడానికి నేను మీకు సహాయం చేస్తాను.

నేను ఇక్కడ రెండు వేర్వేరు ప్రోగ్రామ్‌లను వివరిస్తాను, తద్వారా సెలీనియంలో స్క్రీన్ షాట్ ఎలా తీసుకోవాలో మీకు సరైన ఆలోచన వస్తుంది.

మొదటి ప్రోగ్రామ్ పరీక్ష కేసు యొక్క స్క్రీన్ షాట్‌ను ఎలా విజయవంతంగా పట్టుకోవాలో వివరిస్తుంది. పరీక్ష విఫలమైనప్పుడు స్క్రీన్ షాట్ ఎలా తీసుకోవాలో అర్థం చేసుకోవడానికి రెండవ ప్రోగ్రామ్ మీకు సహాయపడుతుంది.

ప్రాజెక్ట్ నిర్వహణలో సేకరణ నిర్వహణ

సెలీనియం వెబ్‌డ్రైవర్‌లో స్క్రీన్‌షాట్: డెమో

మీరు వెబ్ అప్లికేషన్‌ను పరీక్షించాలనుకున్నప్పుడు చేయవలసిన మొదటి విషయం ఏమిటంటే సెలీనియం జార్ ఫైళ్లు మరియు జావా లైబ్రరీలను కలిగి ఉండటం. మీకు నచ్చిన IDE ని ఎంచుకోవచ్చు. నేను ఎక్లిప్స్ IDE లో పనిచేయడానికి ఇష్టపడతాను ఎందుకంటే ఇది యూజర్ ఫ్రెండ్లీ.

  • నేను బ్రౌజర్ డ్రైవర్‌ను సెట్ చేస్తాను
  • ChromeDriver తో డ్రైవర్ ఉదాహరణను తక్షణం చేయండి.
  • వెబ్‌పేజీ యొక్క URL ను పొందండి.
  • సంబంధిత చర్యలను చేయండి.

ఈ సందర్భంలో, నేను మా అధికారిక వెబ్‌పేజీ యొక్క స్క్రీన్‌షాట్ తీసుకుంటాను

క్రింది కోడ్‌ను చూడండి:

దిగుమతి java.io.File దిగుమతి java.io.IOException దిగుమతి org.apache.commons.io.FileUtils దిగుమతి org.openqa.selenium.OutputType దిగుమతి org.openqa.selenium.TakesScreenshot దిగుమతి org.openqa.selenium.WebDriver దిగుమతి org.openqa .సెలెనియం.క్రోమ్ driver.get ('http://www.edureka.co/') TakesScreenshot ts = (TakesScreenshot) డ్రైవర్ ఫైల్ మూలం = ts.getScreenshotAs (అవుట్‌పుట్ టైప్.ఫైల్) FileUtils.copyFile (మూలం, కొత్త ఫైల్ ('./ స్క్రీన్షాట్లు / స్క్రీన్ .png ')) System.out.println (' స్క్రీన్ షాట్ తీసుకోబడింది ') driver.quit ()}}

పై కోడ్ యొక్క అవుట్పుట్ క్రింద వర్ణించబడింది:

స్క్రీన్‌ఆట్‌పుట్ - సెలీనియంలో స్క్రీన్ షాట్ ఎలా తీసుకోవాలి - ఎడురేకా

మరియు ఫోల్డర్ చిత్రాన్ని కలిగి ఉంటుంది

ఇప్పుడు, పరీక్ష యొక్క స్క్రీన్ షాట్ ఎలా తీసుకోవాలో విఫలమైందని అర్థం చేసుకుందాం

  • ప్రధమ,
  • TestNG XML ఫైల్‌ను జోడించండి.
  • మావెన్ డిపెండెన్సీలను జోడించండి.
  • వెబ్‌డ్రైవర్ ఉదాహరణను కలిగి ఉన్న క్లాస్ బేస్‌క్లాస్‌ను సృష్టించండి.
  • ప్రారంభించడం () మరియు విఫలమైంది () అనే రెండు విధులను నిర్వచించండి
  • ఈ రెండు ఫంక్షన్లను మరొక తరగతిలో కాల్ చేయండి, డెమో ఇది బేస్ క్లాస్‌ను వారసత్వంగా పొందుతుంది.
  • ఈ డెమో క్లాస్ సెటప్ () అనే రెండు పద్ధతులను కలిగి ఉంది, ఇది ప్రారంభ () ఫంక్షన్ అని పిలుస్తుంది, టియర్‌డౌన్ () డ్రైవర్‌ను మూసివేయడంలో సహాయపడుతుంది మరియు స్క్రీన్‌షాట్ టెస్ట్ () ను మేము వాస్తవమైన మరియు ఆశించిన అవుట్‌పుట్‌ను నొక్కి చెబుతాము.
  • ఈ సందర్భంలో, నేను నిజమైన మరియు తప్పుడు రెండింటినీ నొక్కి చెబుతాను, ఇది పరీక్ష కేసు యొక్క వైఫల్యానికి దారితీస్తుంది.
  • వెబ్‌డ్రైవర్ నిర్దిష్ట సంఘటనలను వినడానికి సహాయపడే లిజనర్స్ క్లాస్ అనే మరొక తరగతిని సృష్టించండి.
  • పరీక్ష కేసును వినడానికి ప్రధాన కోడ్‌కు ముందు ఈ కోడ్‌ను డెమో క్లాస్ ist లిస్టెనర్స్ (లిజనర్స్ క్లాస్.క్లాస్) లో జోడించండి.

మీరు ఈ కోడ్‌ను చూడవచ్చు:

బేస్ క్లాస్

ప్యాకేజీ com.edureka దిగుమతి java.io.File దిగుమతి java.io.IOException దిగుమతి org.apache.commons.io.FileUtils దిగుమతి org.openqa.selenium.OutputType దిగుమతి org.openqa.selenium.TakesScreenshot దిగుమతి org.openqa.selenium.WebDriver org.openqa.selenium.chrome.ChromeDriver దిగుమతి org.testng.annotations.Listeners పబ్లిక్ క్లాస్ బేస్ క్లాస్ {పబ్లిక్ స్టాటిక్ వెబ్‌డ్రైవర్ డ్రైవర్ పబ్లిక్ స్టాటిక్ శూన్య ప్రారంభ (). exe ') driver = new ChromeDriver () driver.get (' http://www.edureka.co/ ')} పబ్లిక్ శూన్యత విఫలమైంది () {ఫైల్ srcFile = ((TakesScreenshot) డ్రైవర్) .getScreenshotAs (OutputType.FILE) ప్రయత్నించండి {FileUtils.copyFile (srcFile, new File ('/ C: / Users / Neha_Vaidya / eclipse-workspace / Screens /' + 'ScreenhotsTaken / tests.jpg'))} క్యాచ్ (IOException ఇ) {e.printStackTrace ()}} }

డెమోక్లాస్

ప్యాకేజీ com.edureka దిగుమతి org.testng.Assert దిగుమతి org.testng.annotations.AfterMethod దిగుమతి org.testng.annotations.BeforeMethod దిగుమతి org.testng.annotations.Listeners దిగుమతి org.testng.annotations.Test istListeners (ListenersClass.class) క్లాస్ డెమో బేస్ క్లాస్‌ను విస్తరించింది e e ముందు విధానం పబ్లిక్ శూన్యమైన సెటప్ () {ప్రారంభించడం () after after మెథడ్ పబ్లిక్ శూన్య టియర్‌డౌన్ () {driver.quit () @ est టెస్ట్ పబ్లిక్ శూన్యమైన టేక్‌స్క్రీన్‌షాట్ టెస్ట్ () {Assert.assertEquals (true, false)}}

లిజనర్స్ క్లాస్

జావాలో జిట్ కంపైలర్ అంటే ఏమిటి
ప్యాకేజీ com.edureka దిగుమతి org.testng.ITestContext దిగుమతి org.testng.ITestListener దిగుమతి org.testng.ITestResult పబ్లిక్ క్లాస్ లిజనర్స్క్లాస్ బేస్ క్లాస్ విస్తరిస్తుంది ITestListener {పబ్లిక్ శూన్యత onTestStart (ITestResult result) TO // TODO ఆటో-ఉత్పత్తి పద్ధతి (ITestResult result) TO // TODO ఆటో-జనరేటెడ్ మెథడ్ స్టబ్} పబ్లిక్ శూన్యత onTestFailure (ITestResult result) {System.out.println ('విఫలమైన పరీక్ష') విఫలమైంది ()} పబ్లిక్ శూన్యత onTestSkpped (ITestResult result) {// TODO Auto- ఉత్పత్తి చేసిన పద్ధతి స్టబ్} పబ్లిక్ శూన్యత onTestFailedButWithinSuccessPercentage (ITestResult result) TO // TODO ఆటో-జనరేటెడ్ మెథడ్ స్టబ్} పబ్లిక్ శూన్యత ఆన్‌స్టార్ట్ (ITestContext context) TO // TODO ఆటో-జనరేటెడ్ స్టబ్} పబ్లిక్ శూన్యత ఆన్‌ఫినిష్ (ITestContext Auto) TO // TODO -జనరేటెడ్ పద్ధతి స్టబ్}}

అవుట్పుట్ ఈ పద్ధతిలో వర్ణించబడింది:

దీనితో, మేము ఈ “సెలీనియం వెబ్‌డ్రైవర్‌లో స్క్రీన్‌షాట్ ఎలా తీసుకోవాలి” బ్లాగును ముగించాము. మీరు ఈ కథనాన్ని ఆస్వాదించారని మరియు పరీక్షా కేసును ఎలా అమలు చేయాలో అర్థం చేసుకున్నారని నేను ఆశిస్తున్నాను. మాకు ప్రశ్న ఉందా? దయచేసి “సెలీనియం వెబ్‌డ్రైవర్‌లో స్క్రీన్‌షాట్ ఎలా తీసుకోవాలి” అనే వ్యాఖ్యల విభాగంలో పేర్కొనండి మరియు మేము మీ వద్దకు తిరిగి వస్తాము. మీరు సెలీనియం వెబ్‌డ్రైవర్ గురించి మరింత తెలుసుకోవాలనుకుంటే మరియు అదే విధంగా వృత్తిని నిర్మించాలనుకుంటే, మా చూడండి ఇది బోధకుడు నేతృత్వంలోని ప్రత్యక్ష శిక్షణ మరియు నిజ జీవిత ప్రాజెక్ట్ అనుభవంతో వస్తుంది. ఈ శిక్షణ మీకు సెలీనియం పరీక్షను లోతుగా అర్థం చేసుకోవడానికి సహాయపడుతుంది మరియు ఈ అంశంపై పాండిత్యం సాధించడంలో మీకు సహాయపడుతుంది.