செலினியம் வெப் டிரைவர்: டெஸ்ட் வழக்கு மேலாண்மை மற்றும் அறிக்கை உருவாக்கத்திற்கான டெஸ்ட்என்ஜி



சோதனை நிகழ்வுகளை நிர்வகிப்பதற்கும் விரிவான சோதனை அறிக்கைகளை உருவாக்குவதற்கும் செலினியத்துடன் டெஸ்ட்என்ஜியைப் பயன்படுத்துவதன் அவசியத்தைப் புரிந்துகொள்ள இந்த செலினியம் வெப் டிரைவர் பயிற்சி உதவும்.

முந்தைய வலைப்பதிவில், உங்கள் முதல் செலினியம் வெப் டிரைவர் சோதனையை எவ்வாறு இயக்குவது என்பதை நான் உங்களுக்குக் கற்றுக் கொடுத்தேன். இந்த வலைப்பதிவில், மேம்பட்ட செலினியம் வெப் டிரைவர் கருத்துக்களை நான் உள்ளடக்குவேன். சோதனை வழக்கு மேலாண்மை மற்றும் சோதனை அறிக்கை உருவாக்கம் தொடர்பாக செலினியம் வெப் டிரைவர் வரம்புகளைக் கொண்டிருப்பதை நான் ஏற்கனவே சில முறை குறிப்பிட்டுள்ளேன். எனவே, மாற்று என்ன? செலினியம் போன்ற பிரபலமான ஒரு கருவி நிச்சயமாக ஒரு பணித்தொகுப்பைக் கொண்டிருக்க வேண்டும்? நிச்சயமாக அது செய்கிறது! இந்த வரம்பை வெல்ல நாம் செலினியம் மற்றும் டெஸ்ட்என்ஜி ஆகியவற்றின் கலவையைப் பயன்படுத்தலாம், அதுவே இந்த வலைப்பதிவின் விவாதத்தின் தலைப்பாக இருக்கும்.

மைக்ரோசாஃப்ட் SQL சர்வர் டுடோரியல் ஆரம்பநிலைக்கு

வழக்கில், நீங்கள் செலினியத்திற்கு புதியவர், மற்றும் அடிப்படை கருத்துகளுக்கு ஒரு அறிமுகம் விரும்பினால், உங்கள் பயணத்தை இங்கிருந்து தொடங்கலாம்: ? இருப்பினும், மற்றவர்கள் இந்த வலைப்பதிவிலிருந்து செலினியத்திற்கான டெஸ்ட்என்ஜி மூலம் தொடங்கலாம்.நிறுவனங்கள் தொழில் வல்லுநர்களை தீவிரமாக வேட்டையாடுகின்றன என்பதையும் நீங்கள் அறிந்து கொள்ள வேண்டும் , மென்பொருள் சோதனையாளர்களுக்கு தேர்ச்சி பெறுவதற்கான முக்கியமான திறமையாக இது அமைகிறது.





சோதனை நிகழ்வுகளில் குறியீட்டை எழுதுவது பிழைத்திருத்த நேரத்தின் ஒரு நல்ல பகுதியை மிச்சப்படுத்துகிறது என்பதை உலகெங்கிலும் உள்ள மென்பொருள் உருவாக்குநர்கள் ஒருமனதாக ஒப்புக்கொள்வார்கள். ஏன்? ஏனென்றால் சோதனை வழக்குகள் வலுவான மற்றும் பிழை இல்லாத குறியீட்டை உருவாக்க உதவுகின்றன. அது எப்படி செய்கிறது? முழு குறியீட்டையும் சிறிய சோதனை நிகழ்வுகளாக உடைப்பதன் மூலம், பின்னர் இந்த ஒவ்வொரு சோதனை நிகழ்வுகளையும் கடந்து / தோல்வியுற்ற நிலைகளை மதிப்பிடுவதன் மூலம், பிழை இல்லாத குறியீட்டை உருவாக்கலாம். சோதனை நிகழ்வுகளில் குறியீட்டை செயல்படுத்துவதை செலினியம் ஆதரிக்கவில்லை என்பதால், அதற்காக நாம் டெஸ்ட்என்ஜியைப் பயன்படுத்த வேண்டும். டெஸ்ட்என்ஜி செலினியம் கட்டமைப்பில் பொருந்துகிறது.

டெஸ்ட்.என்.ஜி. குறிக்கிறது அடுத்த தலைமுறையை சோதிக்கவும் இது ஜுனிட் மற்றும் நுனிட் ஆகியவற்றால் ஈர்க்கப்பட்ட ஒரு திறந்த மூல சோதனை ஆட்டோமேஷன் கட்டமைப்பாகும். நல்லது, ஊக்கமளித்தது மட்டுமல்ல, அந்த இரண்டு கட்டமைப்பிற்கும் மேம்படுத்தல். எனவே இங்கே மேம்படுத்தல் என்ன என்று நீங்கள் கேட்கலாம்.டெஸ்ட்என்ஜியுடனான மேம்படுத்தல் என்னவென்றால், இது கூடுதல் செயல்பாட்டை வழங்குகிறது: சோதனை குறிப்புகள், தொகுத்தல், முன்னுரிமை, அளவுருவாக்கம் மற்றும் குறியீட்டில் வரிசைப்படுத்துதல் நுட்பங்கள் முன்பு சாத்தியமில்லை.



சோதனை நிகழ்வுகளை நிர்வகிப்பதைத் தவிர, டெஸ்ட்என்ஜியைப் பயன்படுத்துவதன் மூலம் சோதனைகளின் விரிவான அறிக்கைகளையும் பெறலாம். தோல்வியுற்ற சோதனை வழக்கையும், அது ஒரு பகுதியாக இருந்த குழுவையும், அது கீழ் வரும் வகுப்பையும் காண்பிக்கும் சுருக்கம் இருக்கும். பிழைகள் இதை துல்லியமாக கண்டுபிடிக்கும்போது, ​​அவற்றை டெவலப்பர்களின் நிவாரணத்திற்கு உடனடியாக சரிசெய்ய முடியும். டெஸ்ட்என்ஜியின் செயல்பாட்டை கீழே உள்ள படம் சித்தரிக்கிறது.

testng - செலினியம் வெப் டிரைவர்

எனவே, டெஸ்ட்என்ஜி எவ்வாறு வேலையைச் செய்கிறது? இந்த கேள்விக்கு பதில் அளிக்கப்படும்இந்த செலினியம் வெப் டிரைவர் டுடோரியல் வலைப்பதிவின் அடுத்த பகுதி, டெஸ்ட்என்ஜியைப் பயன்படுத்தி பல்வேறு சோதனை நிகழ்வுகளை எவ்வாறு நிர்வகிப்பது என்பது பற்றி நான் விவாதிக்கிறேன்.



டெஸ்ட்என்ஜியுடன் செலினியம் வெப் டிரைவர்

சோதனை வழக்குகளை பின்வரும் வழிகளில் ஒன்றை வரையறுத்து நிர்வகிக்கலாம்:

  1. சோதனை சிறுகுறிப்புகள்
  2. முன்னுரிமை
  3. சோதனை வழக்குகளை முடக்குகிறது
  4. முறை சார்பு
  5. தொகுத்தல்
  6. கூற்றுக்கள்
  7. அறிக்கை தலைமுறை

விளக்க ஆரம்பிக்கிறேன்இந்த செயல்பாடுகள் ஒவ்வொன்றும்.

சோதனை சிறுகுறிப்புகள்

முதலில், இந்த கேள்வியை நாமே கேட்டுக்கொள்வோம்: நாம் ஏன் சிறுகுறிப்புகளைப் பயன்படுத்த வேண்டும்? அவற்றை எப்போது பயன்படுத்தலாம்? செயல்படுத்தப்பட வேண்டிய அடுத்த முறையை கட்டுப்படுத்த செலினியத்தில் உள்ள சிறுகுறிப்புகள் பயன்படுத்தப்படுகின்றன. சோதனைக் குறியீட்டில் உள்ள ஒவ்வொரு முறைக்கும் முன் சோதனை சிறுகுறிப்புகள் வரையறுக்கப்படுகின்றன. எந்தவொரு முறையும் சிறுகுறிப்புகளுடன் முன்னொட்டு இல்லை என்றால், அந்த முறை புறக்கணிக்கப்படும் மற்றும் சோதனைக் குறியீட்டின் ஒரு பகுதியாக செயல்படுத்தப்படாது. அவற்றை வரையறுக்க, முறைகளை வெறுமனே ‘உடன் குறிக்க வேண்டும் Est சோதனை ‘. உதாரணமாக கீழே உள்ள குறியீடு துணுக்கைப் பாருங்கள்.

தொகுப்பு சோதனை இறக்குமதி org.openqa.selenium.WebDriver இறக்குமதி org.openqa.selenium.firefox.FirefoxDriver இறக்குமதி org.testng.annotations.AfterClass இறக்குமதி org.testng.annotations.AfterMethod இறக்குமதி org.testng.annotations.BeforeClass இறக்குமதி org.testng.annotations.BeforeClass இறக்குமதி முன் முறை இறக்குமதி org.testng.annotations.Test பொது வகுப்பு TestAnnotations @ est சிறந்த பொது வெற்றிடமான myTestMethod () {System.out.println ('உள்ளே முறை: - myTestMethod') வெப் டிரைவர் இயக்கி = புதிய ஃபயர்பாக்ஸ் டிரைவர் () இயக்கி.ஜெட் ('http: //www.seleniumframework.com/Practiceform/ ') சரம் தலைப்பு = driver.getTitle () System.out.println (title) driver.quit () @ before முறைக்கு முன் பொது வெற்றிடத்தை () {System.out.println (' இது குறியீட்டுத் துண்டு முறைக்கு முன் செயல்படுத்தப்படுகிறது: - myTestMethod ') System.setProperty (' webdriver.gecko.driver ',' C: UsersVardhanworkspaceSeleniumProjectfilesgeckodriver.exe ')} afterAfterMethod public void afterMethod () {System.out. குறியீட்டின் முறைக்குப் பிறகு செயல்படுத்தப்படுகிறது: - myTestMethod ') class கிளாஸுக்கு முன் பொது வெற்றிடத்தை (கிளாஸ் () {சிஸ்டே m.out.println ('வகுப்பு செயல்படுத்தப்படுவதற்கு முன்பு இந்த குறியீடு செயல்படுத்தப்படுகிறது') @ after கிளாஸ் () after System.out.println ('வகுப்பு செயல்படுத்தப்பட்ட பின் இந்த குறியீடு துண்டு செயல்படுத்தப்படுகிறது') after கிளாஸ் பொது வெற்றிடத்திற்குப் பிறகு. }

மேலே உள்ள குறியீட்டில், நான் ஒரு ‘பிரதான’ முறையை வரையறுக்கவில்லை என்பதை நீங்கள் கவனித்திருப்பீர்கள். இருப்பினும், எனக்கு வேறு 5 முறைகள் வரையறுக்கப்பட்டுள்ளன. அவை ‘myTestMethod’, ‘beforeMethod’, ‘afterMethod’, ‘beforeClass’ மற்றும் ‘afterClass’. மேலும், குறியீட்டில் உள்ள முறைகளின் வரையறையின் வரிசையைக் கவனியுங்கள், ஏனெனில் அவை இதே வரிசையில் செயல்படுத்தப்படாது.

‘MyTestMethod’ முறை குறிக்கப்படுகிறது Est சோதனை , மற்றும் இது செயல்படுத்தப்பட வேண்டிய முக்கிய முறை அல்லது குறியீடு ஆகும். இந்த முறை செயல்படுத்தப்படுவதற்கு முன்னும் பின்னும் பிற சிறுகுறிப்பு முறைகள் செயல்படுத்தப்படும். ‘முன் முறை’ உடன் குறிக்கப்படுவதால் E முன் முறை , ‘myTestMethod’ செயல்படுத்தப்படுவதற்கு முன்பு இது செயல்படுத்தப்படும். இதேபோல், ‘afterMethod’ உடன் குறிக்கப்படுகிறது FterAfterMethod , இதனால் இது ‘myTestMethod’ க்கு பிறகு செயல்படுத்தப்படும்.

இருப்பினும், ‘பிஃபோர் கிளாஸ்’ உடன் குறிக்கப்படுகிறது EBeforeClass , அதாவது வர்க்கம் செயல்படுத்தப்படுவதற்கு முன்பே இது செயல்படுத்தப்படும். இங்கே எங்கள் வகுப்பு பெயர் சோதனை குறிப்புகள் , இதனால் வகுப்பு செயல்படுத்தப்படுவதற்கு முன்பு, ‘பிஃபோர் கிளாஸுக்குள்’ உள்ள குறியீட்டின் பகுதி செயல்படுத்தப்படும். இதேபோல், ‘afterClass’ உடன் குறிக்கப்படுகிறது FterAfterMethod , இதனால் வகுப்பிற்குப் பிறகு செயல்படுத்தப்படும் சோதனை குறிப்புகள் செயல்படுத்தப்படுகிறது.

மரணதண்டனை ஒழுங்கு குறித்து உங்களுக்கு இன்னும் குழப்பம் இருந்தால், கீழேயுள்ள துணுக்கை நிச்சயமாக உங்களுக்கு உதவும்.

1. முன்சூட் 2. முன்செலுத்தல் 3. முன் வகுப்பு 4. முன் முறை 5. முன் முறை 5. சோதனை 6. பின் முறை 7. பின் வகுப்பு 8. பிறகு வகுப்பு 9. பிறகு சோதனை 9. பிறகு சூட்

மேலே உள்ள குறியீட்டின் வெளியீடு:

வகுப்பு செயல்படுத்தப்படுவதற்கு முன்பு இந்த குறியீடு செயல்படுத்தப்படுகிறது: இந்த குறியீடு முறைக்கு முன் செயல்படுத்தப்படுகிறது: - myTestMethod இன்சைடு முறை: - myTestMethod 1493192682118 கெக்கோட்ரைவர் INFO 127.0.0.1 இல் கேட்கிறது 1493192682713 mozprofile :: profile INFO சுயவிவரப் பாதை .wGkcwvwXkl2y 1493192682729 கெக்கோட்ரைவர் :: மரியோனெட் தகவல் தொடக்க உலாவி சி: நிரல் கோப்புகள் (x86) மொஸில்லா ஃபயர்பாக்ஸைர்ஃபாக்ஸ். எக்ஸ் 1493192682729 கெக்கோட்ரைவர் :: மரியோனெட் தகவல் லோக்கல் ஹோஸ்டில் மரியோனெட்டுடன் இணைகிறது: கட்டிடம் /moz2_slave/m-rel-w32-000000000000000000/build/src/ipc/chromium/src/chrome/common/ipc_channel_win.cc, வரி 346 1493192688316 மரியோனெட் INFO துறைமுகத்தில் கேட்பது 59792 ஏப்ரல் 26, 2017 1g14:49. openqa.selenium.remote.ProtocolHandshake createSession INFO: கண்டறியப்பட்ட பேச்சுவழக்கு: W3C JavaScript பிழை: http://t.dtscout.com/i/?l=http%3A%2F%2Fwww.seleniumframework.com%2FPracticeform%2F&j=, line 1: TypeError: document.getElementsByTagNa நான் (...) [0] வரையறுக்கப்படாத செலினியம் கட்டமைப்பு | பயிற்சி வடிவம் 1493192695134 மரியோனெட் தகவல் புதிய இணைப்புகள் இனி ஏற்றுக்கொள்ளப்படாது ஏப்ரல் 26, 2017 1:14:57 PM org.openqa.selenium.os.UnixProcess அழிக்க SEVERE: PID 6724 உடன் செயல்முறையை கொல்ல முடியவில்லை இந்த குறியீடு துண்டு முறைக்குப் பிறகு செயல்படுத்தப்படுகிறது: - myTestMethod வகுப்பு செயல்படுத்தப்பட்ட பின் இந்த குறியீடு செயல்படுத்தப்படுகிறது PASSED: myTestMethod =============================== =========== இயல்புநிலை சோதனை சோதனைகள் இயங்கும்: 1, தோல்விகள்: 0, தவிர்க்கிறது: 0 ===================== ====================== ======================= ================== இயல்புநிலை தொகுப்பு மொத்த சோதனைகள் இயங்கும்: 1, தோல்விகள்: 0, தவிர்க்கிறது: 0 ============= =============================

மேலே உள்ள வெளியீட்டில் இருந்து நீங்கள் பார்க்க முடிந்தபடி, சோதனைகளின் எண்ணிக்கை 1 மற்றும் தோல்வியுற்றது 0 ஆகும். இதன் பொருள் குறியீடு வெற்றிகரமாக உள்ளது. முறைகளை செயல்படுத்தும் வரிசை கூட வரிசையில் இருக்கும்நான்முன்னர் குறிப்பிட்டது.

உங்கள் கணினியில் இந்த குறியீட்டை நீங்கள் இயக்கும்போது, ​​செலினியம் வெப் டிரைவர் உங்கள் பயர்பாக்ஸ் உலாவியை உடனடிப்படுத்தும், செலினியம் கட்டமைப்பின் நடைமுறை படிவத்திற்கு செல்லவும், உலாவி நிகழ்வை மூடி, உங்கள் கிரகண ஐடிஇயில் மேலே காட்டப்பட்டுள்ள அதே வெளியீட்டைக் காண்பிக்கும்.

எனது குறியீட்டில் 5 வெவ்வேறு சிறுகுறிப்புகளை மட்டுமே பயன்படுத்தினேன். ஆனால் செயல்படுத்தப்பட வேண்டிய அடுத்த முறையை கட்டுப்படுத்த இன்னும் பல சிறுகுறிப்புகள் உள்ளன. சிறுகுறிப்புகளின் முழு பட்டியல் விவரிக்கப்பட்டுள்ளதுமேசைகீழே:

EBeforeSuite - உடன் குறிக்கப்பட்ட முறை EBeforeSuite தொகுப்பில் உள்ள அனைத்து சோதனைகளும் இயங்குவதற்கு முன்பு இயங்கும்.

FterAfterSuite - உடன் குறிக்கப்பட்ட முறை FterAfterSuite தொகுப்பில் உள்ள அனைத்து சோதனைகளும் இயங்கிய பின் இயங்கும்.

EBeforeTest - உடன் குறிக்கப்பட்ட முறை EBeforeTest ஒரு வகுப்பைச் சேர்ந்த எந்த சோதனை முறையும் இயங்குவதற்கு முன்பு இயங்கும்.

AfterAfterTest - உடன் குறிக்கப்பட்ட முறை AfterAfterTest ஒரு வகுப்பைச் சேர்ந்த அனைத்து சோதனை முறைகளும் இயங்கிய பின் இயங்கும்.

E முன் குழு - உடன் குறிக்கப்பட்ட முறை E முன் குழு ஒவ்வொரு குழுவும் இயங்குவதற்கு முன்பு இயங்கும்.

AfterAfterGroup - உடன் குறிக்கப்பட்ட முறை AfterAfterGroup ஒவ்வொரு குழுவும் இயங்கிய பின் இயங்கும்.

EBeforeClass - உடன் குறிக்கப்பட்ட முறை EBeforeClass தற்போதைய வகுப்பில் முதல் சோதனை முறை செயல்படுத்தப்படுவதற்கு முன்பு ஒரு முறை இயங்கும்.

@வகுப்பிற்கு பிறகு - உடன் குறிக்கப்பட்ட முறை @வகுப்பிற்கு பிறகு தற்போதைய வகுப்பில் உள்ள அனைத்து சோதனை முறைகளும் இயங்கிய பின் ஒரு முறை இயங்கும்.

E முன் முறை - உடன் குறிக்கப்பட்ட முறை E முன் முறை ஒரு வகுப்பினுள் எந்த சோதனை முறையும் இயங்குவதற்கு முன்பு இயங்கும்.

FterAfterMethod - உடன் குறிக்கப்பட்ட முறை FterAfterMethod ஒரு வகுப்பினுள் ஒவ்வொரு சோதனை முறையும் இயங்கிய பின் இயங்கும்.

Est சோதனை - உடன் குறிக்கப்பட்ட முறை Est சோதனை முழு நிரலிலும் முக்கிய சோதனை முறை. இந்த முறையைச் சுற்றி பிற சிறுகுறிப்பு முறைகள் செயல்படுத்தப்படும்.

டெஸ்ட்என்ஜி அறிக்கையின் ஸ்கிரீன் ஷாட்கீழே தற்போது: -

முன்னுரிமை

வெவ்வேறு முறைகள் எவ்வாறு வரையறுக்கப்படுகின்றன என்பதைப் பற்றி நாங்கள் பேசினோம் Est சோதனை முறை. ஆனால், ஒன்றுக்கு மேற்பட்டவை இருந்தால் என்ன Est சோதனை முறை மற்றும் அவற்றுக்கிடையே மரணதண்டனை வரிசையை வரையறுக்க விரும்புகிறீர்களா?

அந்த விஷயத்தில், நம்மால் முடியும்பிசிறுகுறிப்பு சோதனை நிகழ்வுகளுக்கு ஒரு எண்ணை ஒதுக்குவதன் மூலம் அவற்றை கஷ்டப்படுத்துங்கள். சிறிய எண், அதிக முன்னுரிமை. சோதனை நிகழ்வுகளை வரையறுக்கும்போது முன்னுரிமையை அளவுருக்களாக ஒதுக்கலாம். ஆனால், எந்த முன்னுரிமையும் ஒதுக்கப்படவில்லை என்றால், சோதனைகளின் அகர வரிசைப்படி சிறுகுறிப்பு சோதனை முறைகள் செயல்படுத்தப்படும். சோதனை சிறுகுறிப்புகளின் அளவுருக்களை கீழே உள்ள பகுதியில் பாருங்கள்குறியீடு.

Est சோதனை (முன்னுரிமை = 2) பொது நிலையான வெற்றிடமான முதல் சோதனை () {system.out.println ('முன்னுரிமை # 2 காரணமாக இது சோதனை வழக்கு எண் இரண்டு') est est சோதனை (முன்னுரிமை = 1) பொது நிலையான வெற்றிடமான இரண்டாவது சோதனை () { system.out.println ('முன்னுரிமை # 1 காரணமாக இது டெஸ்ட் வழக்கு நம்பர் ஒன்') @ est டெஸ்ட் பப்ளிக் ஸ்டாடிக் வெற்றிட ஃபைனல் டெஸ்ட் () {system.out.println ('முன்னுரிமை இல்லாததால் இது இறுதி சோதனை வழக்கு' )}

சோதனை வழக்குகளை முடக்குகிறது

இன்னும் சுவாரஸ்யமான ஒன்றை உங்களுக்குக் காட்டுகிறேன். நூற்றுக்கணக்கான சோதனை நிகழ்வுகளைக் கொண்ட ஒரு மில்லியன் வரிகளைக் கொண்ட ஒரு குறியீடு உங்களிடம் இருந்தால், நீங்கள் ஒரு சோதனை முறையை மட்டுமே முடக்க விரும்பினால் என்ன செய்வது? அதற்கு பதிலாக குறியீட்டின் எந்த பகுதியையும் நீக்க தேவையில்லை, அந்த சோதனை முறையை நாம் முடக்கலாம்.

தொலை முறை அழைப்பு ஜாவா உதாரணம்

சோதனை வழக்கை முடக்கும் செயல் அளவுருக்கள் வழியாகவும் செய்யப்படுகிறது. நாம் அமைக்கலாம் இயக்கப்பட்டது ‘பொய்’ என்பதற்கான பண்பு. இயல்பாக, எல்லா சோதனை நிகழ்வுகளும் இயக்கப்பட்டிருக்கும், எனவே ஒவ்வொரு முறையும் ஒரு சோதனை எழுதும்போது அவற்றை வரையறுக்க வேண்டிய அவசியமில்லை. கீழே உள்ள மூன்றாவது மற்றும் நான்காவது முறைகளின் அளவுருக்களைப் பாருங்கள்குறியீடு.

Est சோதனை (முன்னுரிமை = 2, இயக்கப்பட்ட = உண்மை) பொது நிலையான வெற்றிடமான முதல் சோதனை () {system.out.println ('முன்னுரிமை # 2 காரணமாக இது சோதனை வழக்கு எண் இரண்டு') est est சோதனை (முன்னுரிமை = 1, இயக்கப்பட்ட = உண்மை ) பொது நிலையான வெற்றிட செகண்ட் டெஸ்ட் () {system.out.println ('முன்னுரிமை # 1 காரணமாக இது சோதனை வழக்கு எண் ஒன்று') est est சோதனை (இயக்கப்பட்ட = பொய்) பொது நிலையான வெற்றிடமான ஸ்கிப்டெஸ்ட் () {system.out.println ( 'இது முடக்கப்பட்டதால் இது தவிர்க்கப்பட்ட சோதனை வழக்கு') est est சோதனை (இயக்கப்பட்ட = உண்மை) பொது நிலையான வெற்றிடமான இறுதி சோதனை () {system.out.println ('இது இறுதி சோதனை வழக்கு, இது இயக்கப்பட்டிருக்கிறது மற்றும் முன்னுரிமை இல்லை ')}

முறை சார்பு

இப்போது உங்களுக்கு ஒரு சூழ்நிலை ஏற்பட்டால், ஒரு நிபந்தனையை திருப்திப்படுத்தினால் மட்டுமே ஒரு குறிப்பிட்ட குறியீடு செயல்படுத்தப்பட வேண்டும் அல்லது ஒரு குறிப்பிட்ட முறை வெற்றிகரமாக செயல்பட்டால் மட்டுமே, அதைப் பயன்படுத்தி நாங்கள் அதைச் செய்யலாம் சார்ந்ததுஒன் முறை (). இது அடிப்படையில் முறை சார்பு நிலை, மற்றொரு முறையைப் பொறுத்து ஒரு முறை செயல்படுத்தப்படும். நாங்கள் கூடுதலாக அமைத்தால் எப்போதும் இயக்கவும் உண்மைக்கான பண்பு, பின்னர் முறை சார்ந்த முறையின் தோல்வி / பாஸ் நிலையைப் பொருட்படுத்தாமல் முறை செயல்படுத்தப்படும். கீழே உள்ள குறியீடு துணுக்கில் உள்ள குறியீட்டைப் பாருங்கள்.

Public டெஸ்ட் பப்ளிக் ஸ்டாடிக் வெற்றிடமான ஃபர்ஸ்ட் டெஸ்ட் () {system.out.println ('இது செயல்படுத்தப்படும் முதல் டெஸ்ட் வழக்கு') @ est டெஸ்ட் (சார்ந்ததுஆன் மெதட்ஸ் = {'ஃபர்ஸ்ட் டெஸ்ட்'}) பொது நிலையான வெற்றிடமான செகண்ட் டெஸ்ட் (). println ('இது செயல்படுத்தப்படும் இரண்டாவது டெஸ்ட் வழக்கு இது ஒரு சார்பு முறை') est est சோதனை (சார்ந்ததுஆன் முறைகள் = Second 'செகண்ட் டெஸ்ட்'}) பொது நிலையான வெற்றிடமான ஃபைனல் டெஸ்ட் () {system.out.println ('இது இறுதி சோதனை வழக்கு இது எப்படியும் செயல்படுத்தப்படும். ')}

இப்போது, ​​இது சோதனையின் மற்றொரு முக்கியமான அம்சத்திற்கு நம்மை அழைத்துச் செல்கிறதுசிறுகுறிப்புகள் தொகுத்தல் .

தொகுத்தல்

குறியீட்டில் எங்கள் சோதனை வழக்கின் ஒரு பகுதியாக பல முறைகள் இருக்கும் என்பதை இப்போது நீங்கள் அறிந்து கொள்ள வேண்டும். 100 சோதனை வழக்குகள் உள்ளன என்று சொல்லலாம், ஆனால், எங்கள் அடுத்த சோதனையில் 20 சோதனை வழக்குகளை மட்டுமே செயல்படுத்த விரும்புகிறோம். நாங்கள் அதை செய்ய முடியும் என்று நினைக்கிறீர்களா? நிச்சயமாக எங்களால் முடியும்.

நாம் பயன்படுத்தலாம் குழுக்கள் இந்த நோக்கத்திற்கான பண்பு. பல சோதனை நிகழ்வுகளுக்கு ஒரு குழு பெயரை நாம் ஒதுக்கலாம், பின்னர் முழு குறியீட்டிற்கு பதிலாக குழுவை இயக்க தேர்வு செய்யலாம். புரிந்துகொள்ள கீழே உள்ள குறியீடு துணுக்கைப் பாருங்கள்குழுக்களை உருவாக்குவது எப்படி.

Est சோதனை (குழுக்கள் = My 'MyGroup'}) பொது நிலையான வெற்றிடமான FirstTest () {system.out.println ('இது குழுவின் ஒரு பகுதி: MyGroup')} est சோதனை (குழுக்கள் = My 'MyGroup'}) பொது நிலையான செகண்ட் டெஸ்ட் () {system.out.println ('இது குழுவின் ஒரு பகுதியாகும்: மைக்ரூப்') @ est டெஸ்ட் பொது நிலையான வெற்றிட மூன்றாம் சோதனை () {system.out.println ('ஆனால், இது ஒரு பகுதியாக இல்லை குழு: மைக்ரூப் ')}

டெஸ்ட்என்ஜி கூற்றுக்கள்

இது இப்போது டெஸ்ட்என்ஜியின் அடுத்த தலைப்புக்கு நம்மை அழைத்துச் செல்கிறது. பெயர் குறிப்பிடுவது போல, ஒரு சோதனை தேர்ச்சி / தோல்வி நிலையை தீர்மானிக்க சோதனை முறைகளில் வலியுறுத்தல்கள் பயன்படுத்தப்படலாம். ஒரு அறிக்கையின் உண்மை / தவறான நிலையின் அடிப்படையில், சோதனைகள் கடந்து / தோல்வியடையும்.

கீழேயுள்ள குறியீட்டில் நான் 3 சோதனை முறைகளைச் சேர்த்துள்ளேன், இதில் முதல் மற்றும் மூன்றாவது முறைகள் பாஸ் நிபந்தனையையும் இரண்டாவது முறை தோல்வி நிலையையும் கொண்டிருக்கும். குறியீட்டை நீங்களே பாருங்கள்.

தொகுப்பு சோதனை இறக்குமதி org.testng.annotations.Test இறக்குமதி org.testng.annotations.BeforeMethod இறக்குமதி org.openqa.selenium.WebDriver இறக்குமதி org.openqa.selenium.firefox.FirefoxDriver இறக்குமதி org.testng.Assert import org.testng.annotations. பொது வகுப்பு வலியுறுத்தல்கள் {e முறைக்கு முன் பொது வெற்றிடத்தை () {System.setProperty ('webdriver.gecko.driver', 'C: UsersVardhanworkspaceSeleniumProjectfilesgeckodriver.exe')} பொது பூலியன் isEqual (int a, int b = if என்றால்) . void testEquality2 () {Assert.assertEquals (true, isEqual (10, 11)) System.out.println ('இது ஒரு தோல்வி நிலை') public est பொது பொது வெற்றிட getTitle () {WebDriver இயக்கி = புதிய FirefoxDriver () இயக்கி. get ('https://www.gmail.com') சரம் தலைப்பு = driver.getTitle () Assert.assertEquals (தலைப்பு, 'Gmail') System.out.println ('இது மீண்டும் ஒரு பாஸ் நிபந்தனை')} }

இந்த மரணதண்டனைக்குப் பிறகு உருவாக்கப்படும் அறிக்கையைப் பார்க்கும்போது, ​​மூன்று சோதனைகளில் ஒன்று தோல்வியுற்றது மற்றும் இரண்டு தேர்ச்சி பெற்றதை நீங்கள் கவனிப்பீர்கள். கவனிக்க வேண்டிய மற்றொரு முக்கியமான விஷயம் என்னவென்றால், ஒரு கூற்று தோல்வியுற்றால், அந்த சோதனையில் உள்ள மற்ற கட்டளைகள் / குறியீடுகளின் கோடுகள் தவிர்க்கப்படும். வலியுறுத்தல் வெற்றிகரமாக இருக்கும்போது மட்டுமே, அந்த சோதனையில் அடுத்த வரி குறியீடு செயல்படுத்தப்படும். கீழே உள்ள வெளியீட்டை பாருங்கள் system.out.println முதல் மற்றும் மூன்றாவது முறைகளுக்கு மட்டுமே செயல்படுத்தப்பட்டுள்ளது.

UsersVardhanAppDataLocalTemp ust_mozprofile.Z7X9uFdKODvi 1493277977994 geckodriver :: பொம்மலாட்ட தகவல் தொடங்கி உலாவி சி: நிரல் கோப்புகள் (x86) மோசில்லா Firefoxirefox.exe 1493277977998 geckodriver :: பொம்மலாட்ட தகவல் 1493277977348 127.0.0.1:47035 1493277977993 mozprofile :: சுயவிவத் தகவல் பயன்படுத்தி சுயவிவரப் பாதை சி மீது geckodriver தகவல் கேட்பது லோக்கல் ஹோஸ்டில் மரியோனெட்டுடன் இணைக்கிறது: 50758 [ஜி.பீ. 6920] எச்சரிக்கை: குழாய் பிழை: 109: கோப்பு சி: / பில்ட்ஸ் / மோஸ் 2_ஸ்லேவ் / எம்-ரெல்-டபிள்யூ 32-000000000000000000 / பில்ட் / எஸ்.ஆர்.சி / ஐ.பி.சி / குரோமியம் / எஸ்.ஆர்.சி / குரோம் / காமன் / ஐ.பி.சி_சனல்_வின். cc, line 346 1493277981742 மரியோனெட் தகவல் துறைமுகத்தில் கேட்பது 50758 ஏப்ரல் 27, 2017 12:56:22 PM org.openqa.selenium.remote.ProtocolHandshake createSession INFO: கண்டறியப்பட்ட கிளைமொழி: W3C இது மீண்டும் ஒரு பாஸ் நிபந்தனை இது கடந்த கால: getTitle PASSED: testEquality1 FAILED: testEquality2 java.lang.AssertionError: எதிர்பார்க்கப்படுகிறது [தவறானது] ஆனால் org.testng.Assert.fail (Assert.java:93) இல் org.testng.Assert.failNotEquals (Assert.java: 512) org.testng.Assert.assertE இல் org.testng.Assert.assertEquals (Assert.java:115) இல் org.testng.Assert.assertEquals (Assert.java:304) org.testng.Assert.assertEquals (Assert.java) இல் qualsImpl (Assert.java:134) : 314) testng.Assertions.testEquality2 (Assertions.java:38) at sun.reflect.NativeMethodAccessorImpl.invoke0 (நேட்டிவ் முறை) sun.reflect.NativeMethodAccessorImpl.invoke (அறியப்படாத மூல) sun.reflect.DelegatingM மூல) java.lang.reflect.Method.invoke (அறியப்படாத மூல) org.testng.internal.MethodInvocationHelper.invokeMethod (MethodInvocationHelper.java:108) org.testng.internal.Invoker.invokeMetho org.testng.internal.Invoker.invokeTestMethod (Invoker.java:869) இல் org.testng.internal.Invoker.invokeTestMethods (Invoker.java:1193) org.testng.internal.TestMethodWorker ) org.testng.internal.TestMethodWorker.run (TestMethodWorker.java:109) org.testng.TestRunner.privateRun (TestRunner.java:744) இல் org.testng.TestRu இல் org.testng.SuiteRunner.runTest (SuiteRunner.java:380) இல் org.testng.SuiteRunner.runSequential (SuiteRunner.java:375) org.testng.SuiteRunner.privateRunner (nite.run.java:602) .java: 340) org.testng.SuiteRunner.run (SuiteRunner.java:289) org.testng.SuiteRunnerWorker.runSuite (SuiteRunnerWorker.java:52) org.testng.SuiteRunnerWorker.run (SuiteRunnerWork6) org.testng.TestNG.runSuitesSequential (TestNG.java:1301) இல் org.testng.TestNG.runSuitesLocally (TestNG.java:1226) org.testng.TestNG.runSuites (TestNG.java:1144) இல் org.testng இல். Org.testng.remote.AbstractRemoteTestNG.run (AbstractRemoteTestNG.java:132) இல் org.testng.remote.RemoteTestNG.initAndRun (RemoteTestNG.java:230) இல் TestNG.run (TestNG.java:1115) .RemoteTestNG.main (RemoteTestNG.java:76) ===================================== ======= இயல்புநிலை சோதனை சோதனைகள் இயங்கும்: 3, தோல்விகள்: 1, தவிர்க்கிறது: 0 ========================= ================= ========================= =============== இயல்புநிலை தொகுப்பு மொத்த சோதனைகள் இயங்கும்: 3, தோல்விகள்: 1, தவிர்க்கிறது: 0 ================================= ===========

எனவே, சோதனை வழக்கு மேலாண்மை தொடர்பான கருத்துகளின் முடிவு அது. எங்களுக்கு இன்னும் ஒரு தலைப்பு உள்ளது, அது அறிக்கை உருவாக்கம். இந்த செலினியம் வெப் டிரைவர் டுடோரியலில் அறிக்கை உருவாக்கம் என்பது கடைசி தலைப்பு, ஏனென்றால் எல்லாவற்றிற்கும் மேலாக அறிக்கைகளை உருவாக்க முடியும்சோதனைகள் செயல்படுத்தப்படுகின்றன.

சரம் பிளவு பல டிலிமிட்டர்கள் ஜாவா

அறிக்கை தலைமுறை

நீங்கள் கவனிக்க வேண்டிய மிக முக்கியமான விஷயம் என்னவென்றால், அறிக்கை ஒரு .xml கோப்பு வழியாக மட்டுமே உருவாக்கப்படும். இதன் பொருள், இது ஒரு முறையாக இருந்தாலும், அல்லது அது ஒரு வகுப்பாக இருந்தாலும், அல்லது நீங்கள் சோதிக்க விரும்பும் குழுவாக இருந்தாலும், அவை அனைத்தும் .xml கோப்பில் குறிப்பிடப்பட வேண்டும்.

எனவே முதலில் நீங்கள் உங்கள் திட்டத்தின் கீழ் ஒரு புதிய கோப்புறையை உருவாக்கலாம், மேலும் அந்த கோப்புறையின் உள்ளே ஒரு புதிய கோப்பை உருவாக்கி கோப்பிற்கு ஒரு பெயரைக் கொடுத்து .xml நீட்டிப்புடன் சேமிக்கலாம். தொகுப்பு எக்ஸ்ப்ளோரரில் வலது கிளிக் செய்வதன் மூலம் புதிய கோப்புறையையும் கோப்பையும் உருவாக்கலாம். நீங்கள் கோப்பை உருவாக்கியதும், சாளரத்தின் அடிப்பகுதியில் இருந்து மூல தாவலுக்குச் சென்று, கீழேயுள்ள துணுக்கில் குறிப்பிடப்பட்டுள்ளபடி உள்ளமைவுகளை உள்ளிடவும்.

 

முதல் வரி எக்ஸ்எம்எல் ஆவண வகை வரையறை. அனைத்து சோதனை அறிக்கைகளுக்கும் இது நிலையானது மற்றும் கட்டாயமாகும். ஆனால், மற்ற வரிகள் மிகவும் சுய விளக்கமளிக்கும். தொகுப்பு, சோதனை, வகுப்புகள் மற்றும் வகுப்பிற்கான திறந்த குறிச்சொற்களைப் பயன்படுத்தினேன். வகுப்புகள் குறிச்சொல் அதற்குள் ஒன்று அல்லது அதற்கு மேற்பட்ட வகுப்பைக் கொண்டிருக்கலாம். எனவே, நாங்கள் பல வகுப்புகளை சோதிக்கும் இடத்தில் ஒரு அறிக்கையை உருவாக்க விரும்பினால் அதைப் பயன்படுத்தலாம். குறிப்பாக நீண்ட குறியீட்டை சோதிக்க விரும்பும் டெவலப்பர்களுக்கு இது எளிது.

எப்படியும் எங்கள் அறிக்கைக்குத் திரும்பும்போது, ​​அந்த குறிச்சொற்களைத் திறந்த பிறகு ஒவ்வொரு தொகுப்பு அல்லது சோதனை அல்லது வகுப்பிற்கு நீங்கள் பெயரிடலாம் மற்றும் நீங்கள் திறக்கும் ஒவ்வொரு குறிச்சொல்லையும் மூட நினைவில் கொள்ளுங்கள். எனது தொகுப்பு பெயரை வழங்கியுள்ளேன் டெஸ்ட் என்ஜிக்கள் , சோதனை பெயர் என சோதனை சிறுகுறிப்புகள் மற்றும் வர்க்கப் பெயர் testng.TestAnnotations. வர்க்கப் பெயர் வடிவமைப்பில் உள்ளது என்பதை நினைவில் கொள்க ' packagename.classname ’ .

இந்த கோப்பை நீங்கள் டெஸ்ட்என்ஜி தொகுப்பாக இயக்கும்போது, ​​செயல்படுத்தல் தொடங்கும், மேலும் விரிவான சோதனை அறிக்கைகளைப் பெறுவீர்கள். உங்கள் கன்சோல் தாவலில் சோதனை வெளியீட்டையும் அடுத்த தாவலில் சோதனை தொகுப்பின் முடிவையும் பெறுவீர்கள். எனது குறியீட்டை செயல்படுத்துவதற்காக நான் உருவாக்கிய அறிக்கைஇல்கீழே உள்ள ஸ்கிரீன் ஷாட். இந்த நேரத்தில், ஒரு சூட் பெயர், சோதனை பெயர், வகுப்பு பெயர் மற்றும் அவை ஒவ்வொன்றையும் செயல்படுத்த எடுக்கும் நேரத்துடன் இருப்பதை நீங்கள் கவனிப்பீர்கள்.

நீங்கள் HTML அறிக்கையை (குறியீட்டு அறிக்கை அல்லது கிடைக்கக்கூடிய அறிக்கை) காண விரும்பினால், நீங்கள் செல்லலாம் சோதனை-வெளியீடு உங்கள் பணியிடத்தில் திட்ட அடைவுக்குள் கோப்புறை. அவற்றைக் கிளிக் செய்வதன் மூலம், அறிக்கைகளை பிற்காலத்தில் கூட பார்க்கலாம். அவற்றின் திரைக்காட்சிகள் கீழே.

குறியீட்டு அறிக்கை : - -

கிடைக்கக்கூடிய அறிக்கை : - -

எனவே இந்த செலினியம் வெப் டிரைவர் டுடோரியல் வலைப்பதிவின் முடிவுக்கு நம்மை அழைத்துச் செல்கிறது. உங்கள் முடிவில் கிரகணத்தை அமைப்பதற்கும், பல்வேறு செலினியம் தொகுப்புகளை நிறுவுவதற்கும், டெஸ்ட்என்ஜியை நிறுவுவதற்கும், உங்கள் சோதனை நிகழ்வுகளை எழுதுவதைத் தொடங்குவதற்கும் இது நேரம்.

இந்த வலைப்பதிவில் விளக்கப்பட்டுள்ள பல்வேறு கருத்துகளின் ஆர்ப்பாட்டத்திற்கு சாட்சியாக கீழே உள்ள செலினியம் வெப் டிரைவர் டுடோரியல் வீடியோவை நீங்கள் பார்க்கலாம்.

செலினியம் பயிற்சி | செலினியத்திற்கான டெஸ்ட்என்ஜி கட்டமைப்பு | எடுரேகா

இந்த எடுரேகா செலினியம் பயிற்சி வீடியோ செலினியம் வெப் டிரைவரின் ஆழமான விவரங்கள் மூலம் உங்களை அழைத்துச் செல்லும். வெப் டிரைவர் கட்டளைகளின் அடிப்படைகளைத் துலக்க விரும்பும் ஆரம்ப மற்றும் தொழில் வல்லுநர்களுக்கு இந்த செலினியம் டுடோரியல் வீடியோ சிறந்தது மற்றும் பல்வேறு சோதனை நிகழ்வுகளை நிர்வகிக்க செலினியத்துடன் டெஸ்ட்என்ஜி எவ்வாறு பயன்படுத்தப்படலாம் என்பதை அறியவும்.

நீங்கள் செலினியம் கற்றுக் கொள்ள விரும்பினால் மற்றும் சோதனைக் களத்தில் ஒரு தொழிலை உருவாக்க விரும்பினால், எங்கள் ஊடாடும், நேரடி-ஆன்லைனில் பாருங்கள் இங்கே, இது உங்கள் கற்றல் காலம் முழுவதும் உங்களுக்கு வழிகாட்ட 24 * 7 ஆதரவுடன் வருகிறது.

எங்களுக்கு ஒரு கேள்வி கிடைத்ததா? கருத்துகள் பிரிவில் இதைக் குறிப்பிடவும், நாங்கள் உங்களைத் தொடர்புகொள்வோம்.