How to Handle Dynamic WebTable - WebDriver Session 14

Ғылым және технология

How to handle dynamic WebTable In Selenium
There are two ways of handling WebTable:
Method - 1:
• Iterate row and column and get the cell value.
• Using for loop
• Get total rows and iterate table
• Put if(string matches) then select the respective checkbox
• Lengthy method
Method - 2:
• Using custom XPath
• Using parent and preceding-sibling tags
• No need to write for loop
• No full iteration of table
• Single line statement
• More dynamic
• Efficient and fast
--Refer/Download the code for this tutorial:
github.com/naveenanimation20/...
===================================================
Subscribe to this channel, and press bell icon to get some interesting videos on Selenium and Automation:
/ naveenautomationlabs
Follow me on my Facebook Page:
/ naveenqtpexpert
~-~~-~~~-~~-~
Follow my Site/Blog: www.naveenautomationlabs.com
========================================================
Please watch: "Selenium & Automation Interview Preparation - By Naveen AutomationLabs"
• Selenium & Automation ...
~-~~-~~~-~~-~ Subscribe to this channel, and press bell icon to get some interesting videos on Selenium and Automation:
kzread.info%20Au...
Follow me on my Facebook Page:
/ naveenqtpexpert
Let's join our Automation community for some amazing knowledge sharing and group discussion on Telegram:
t.me/joinchat/COJqZUPB02r5sB7...
Paid courses (Recorded) videos:
Java & Selenium Course: www.naveenautomationlabs.com/p...
API Course: www.naveenautomationlabs.com/p... ➡️Get Our Courses✔️
📗 Get My Paid Courses at
Paid courses (Recorded) videos:
Java & Selenium Course: www.naveenautomationlabs.com/p...
API Course: www.naveenautomationlabs.com/p...
-------------------------------
✔️SOCIAL NETWORKS
Facebook: / naveenqtpexpert
Twitter: / naveenkhunteta
Blog: www.naveenautomationlabs.com
--------------------------------
Support My Channel✔️Or Buy Me A Coffee
Paypal: paypal.me/naveenkhunteta
Google Pay: naveenanimation20@gmail.com
--------------------------------
✔️Thanks for watching!
देखने के लिए धन्यवाद
Благодаря за гледането
感谢您观看
Merci d'avoir regardé
Grazie per la visione
Gracias por ver
شكرا للمشاهدة

Пікірлер: 159

  • @Aditya_Valluru
    @Aditya_Valluru3 жыл бұрын

    Impressed with your English, compare to other paid selenium courses your explanation is far better and clean.

  • @bipinmnair007
    @bipinmnair0074 жыл бұрын

    This was in fact a superb explanation. I think this video has made handling dynamic table seem like a feather. Appreciated.

  • @trahamatrah8250
    @trahamatrah82502 жыл бұрын

    Absolutely brilliant approach!! Thank you for putting it up in such a simple manner!!

  • @Star-vg7ix
    @Star-vg7ix Жыл бұрын

    Simple ways to approach a complex matter! Well done Naveen. I worked on a past project where all of the latest technology was incorporated..NOTHING worked!!

  • @smartashok14
    @smartashok142 жыл бұрын

    So easy and very clear explanation...a never forgetting sessions 👏👏👏 Sharing knowledge is the first step to humanity 😘

  • @seemapathania8877
    @seemapathania88773 жыл бұрын

    Naveen your tutorials are very focused and clear!! Thanks for all your hard work!!

  • @fatimafayyaz3261
    @fatimafayyaz32615 жыл бұрын

    Hi Naveen---Your teaching style is excellent...I really learn many things from your videos. Keep it up

  • @TheAzza9885
    @TheAzza98854 жыл бұрын

    This video was very useful for me to find a solution, thank you so much!

  • @ektadesai5713
    @ektadesai57133 жыл бұрын

    Hi Naveen, hats off to your web table explanation. I have seen so many courses but the web table concept is not so clear. After watching this video, I am so happy that now I am very much clear in web table handling. Thank you so much. Keep it up.

  • @sejalpatel6232
    @sejalpatel62323 жыл бұрын

    Hi Naveen, your teaching style is outstanding. I learnt a lot by watching your page object model video. Keep it up great work!

  • @pwk232
    @pwk2322 жыл бұрын

    This is awesome way of handling dynamic table🙏👌

  • @subhashinianumolu5037
    @subhashinianumolu50373 жыл бұрын

    Really helpful, appreciate your work .

  • @gauravgauru
    @gauravgauru5 жыл бұрын

    thank you so much sir... perfectly explained

  • @sudha540
    @sudha5402 жыл бұрын

    First method worked for me. Thank you for this approach 😊

  • @rahulpandey181
    @rahulpandey1815 жыл бұрын

    You are amazing bro....keep uploading videos....u explain every concept very clearly

  • @qateam9361
    @qateam93615 жыл бұрын

    Fantastic! Thanks a lot Naveen!

  • @dfordeewakar9230
    @dfordeewakar92304 жыл бұрын

    Hi Naveen, Who ever ask me for selenium tutorial first I take your name only... as your the best 1

  • @GaneshRavipudi
    @GaneshRavipudi2 жыл бұрын

    just crispy and clear

  • @omkarpotdar2763
    @omkarpotdar27632 жыл бұрын

    Hello Naveen sir, Your simple and clear techniques help me to understand the topic. Keep it up sir.

  • @charlesosei5236
    @charlesosei52366 жыл бұрын

    Awesome tutorial

  • @sachintatkare.9362
    @sachintatkare.93626 жыл бұрын

    Excellent explanation , really helpful

  • @nileshshegokar4146
    @nileshshegokar41465 жыл бұрын

    Its very useful.......thank you for sharing this video

  • @sridevidurga5317
    @sridevidurga53174 жыл бұрын

    It was really amazing, & very usefull vedio...thank yow so much..Sir.

  • @Anitagupta321
    @Anitagupta3218 ай бұрын

    Thank you so much Naveen for providing these very very useful videos, your way of explaining is excellent....I learnt a lot from your videos.

  • @satya5566
    @satya55666 жыл бұрын

    great explanation

  • @aadiandadvikvlogs
    @aadiandadvikvlogs4 жыл бұрын

    Amazing ....... thanks Naveen

  • @H_25146u
    @H_25146u6 жыл бұрын

    thanks. I will use today this concept in my code. thanks again . pls make video on complex part

  • @mamathapusulri8749
    @mamathapusulri87494 жыл бұрын

    Hi Naveen , your teaching is amazing

  • @bestcricketbowling9947
    @bestcricketbowling99472 жыл бұрын

    U r legend in automation explanation, great sibling😍

  • @omkarpotdar2763
    @omkarpotdar2763 Жыл бұрын

    Superb Naveen!! Very very useful tricks you are given for handling dynamic table.. This help me a lot in my project. Thank you very much😊

  • @kirangaikwad4109
    @kirangaikwad41095 жыл бұрын

    Its worked thank you so much

  • @jdhung
    @jdhung3 жыл бұрын

    excellent tutorial.

  • @prakashvish3988
    @prakashvish39882 жыл бұрын

    Thank you Naveen 👍

  • @jaydevdas1597
    @jaydevdas1597 Жыл бұрын

    Helps me a lot.

  • @myfocus7447
    @myfocus74476 жыл бұрын

    thanks for sharing

  • @snigdhaagarwal6663
    @snigdhaagarwal66632 жыл бұрын

    Great explanation sir.. Thanku so much

  • @CrayonsSpices
    @CrayonsSpices4 жыл бұрын

    Really nice explanation

  • @mahendra6273
    @mahendra62732 жыл бұрын

    This video helped for me so much thank u bro 😍

  • @parimalaperiyasamy7859
    @parimalaperiyasamy78594 жыл бұрын

    Nice and very clear

  • @myfocus7447
    @myfocus74476 жыл бұрын

    useful and clear explaination

  • @naveenautomationlabs

    @naveenautomationlabs

    6 жыл бұрын

    Thanks Jyoshna!! Keep Learning & Sharing!

  • @meghraj
    @meghraj5 жыл бұрын

    Nicely Explained :-) Keep Teaching.

  • @bhagyab7793
    @bhagyab77935 жыл бұрын

    Hi Naveen, explained very well.. it could be better if you would have explained how you can pass the td or anchor value dynamically to that xpath by creating some method. And some more explanation when user wants to verify a perticular row values or column vlaues..

  • @amitbhardwaj7824
    @amitbhardwaj78243 жыл бұрын

    nice explain keep uploading

  • @vijayraghav12
    @vijayraghav124 жыл бұрын

    Super bro

  • @balachandarniginam8394
    @balachandarniginam83946 жыл бұрын

    Hi Naveen, Is there any customized xpath for selecting an element in 3rd row and 3rd column? or we only use absolute xpath for that?

  • @lliiiBodyiiill
    @lliiiBodyiiill3 жыл бұрын

    Thanks bro for your smart solution

  • @rangabharath4253
    @rangabharath42534 жыл бұрын

    Awesome

  • @benjaminfrank9166
    @benjaminfrank91664 жыл бұрын

    It was really amazing ...I have one question sir....Where did you learn all this?? I want to do this all by myself but i cannot think like you sir..I want to do that without taking reference from other codes....I just want to make my own code with my own logic...What should i do for that??? Can you please help me out??

  • @silapradhan3979
    @silapradhan39796 жыл бұрын

    Nice

  • @anuak2084
    @anuak20846 жыл бұрын

    Hi Naveen, This Video is really useful for me... But could you please explain one or more scenarios for dynamic web Table with different XPath axes methods..

  • @ravichaubey
    @ravichaubey4 жыл бұрын

    Hi Naveen, Thanks for your wonderful videos which really help a person to think about automation. Your explanation are superb which help people to understand any things about Java or selenium very easily.....Thanks bro for nice work which you do for people.....god bless you always

  • @manishdadhich168

    @manishdadhich168

    4 жыл бұрын

    @Shivanshu Sharma use this : String name= driver.findElement(By.xpath(before_xpath + I + After_xpath)).getText();

  • @manishdadhich168

    @manishdadhich168

    4 жыл бұрын

    @Shivanshu Sharma use this : String before_xpath= "//*[@id=\"vContactsForm\"]/table/tbody/tr["; String after_xpath= "]/td[1]/input"; for (int i=5; i

  • @Srhnu449

    @Srhnu449

    3 жыл бұрын

    @Shivanshu Sharma u didn't appended i in string name , check once

  • @savithabs
    @savithabs6 жыл бұрын

    Hi Naveen, Thanks for this video. Could you please let us know how do we handle handle a web table whose columns load as we scroll the page and so does rows. And if we have to update the [td ] of a row, in say some 5th page, how do we handle this.

  • @sushantananda5910
    @sushantananda59106 жыл бұрын

    Hi Naveen.....your teaching is excellent.

  • @navenreddyaleti7446
    @navenreddyaleti74465 жыл бұрын

    it's very good session Naveen thanks but am requesting you to do one video for ancestor,descendant,following siblings and how to identified row all elements(all columns in a row) using only one xpath ?

  • @real_hello_kitty
    @real_hello_kitty3 жыл бұрын

    Thanks!

  • @amolnawale2177
    @amolnawale21776 жыл бұрын

    Hi Naveen.....For the second approach of customized Xpath using siblings, what if the name we are looking for is not visible in the table. The name may appear somewhere down at the bottom of the table and we have to use scroll bar to see that name. In that case, if the name is not visible, then it may throw ElementNotFound exception. How do we handle such scenarios where we can scroll down to the required name?

  • @naveenautomationlabs

    @naveenautomationlabs

    6 жыл бұрын

    its a very rare case, but still u can scroll down using javascript executor using scrolling view method to that specific element to make it visible first, then use custom path using siblings.

  • @sadiaaslam1012
    @sadiaaslam10125 жыл бұрын

    you are guru :)

  • @vineethvanga3634
    @vineethvanga36344 жыл бұрын

    Hi Naveen In one of my recent interview the question was what if the table dynamically changes it’s columns like if new columns are added and referring to data in that column I need to select the checkbox Could you help me with logic for these, I don’t want to change the XPath though new columns are getting added

  • @vasanthmsd1179

    @vasanthmsd1179

    3 жыл бұрын

    Go with *contains* keyword

  • @chandanrai6302
    @chandanrai63026 жыл бұрын

    hi sir thanks for your video,please clear my one doubt if in web table duplicate name is available and unique transation id is available then how to verify the data on the basics of the transation id please let me know REPLY

  • @shankarlingam4702
    @shankarlingam47024 жыл бұрын

    Bro ultimate

  • @priscilla11731
    @priscilla117315 жыл бұрын

    Hi Naveen,thanks for the tutorial,my question is how about if i do not know the number of raws what do i do, and another question is how do we deal with a for loop that loops on empty columns and raws?please assist i am actually blocked ,the table i am looping trough is having hidden raws and columns and my script is failing

  • @velumanieswaran9868
    @velumanieswaran98685 жыл бұрын

    nice video

  • @saiteja3533
    @saiteja35335 жыл бұрын

    Hi Naveen thank u for all your videos ....one question in this video 17 min 21 seconds u r correcting one xpath there u wrote tr["+i+"] ..can't we write tr[i] directly

  • @thiery572
    @thiery5726 жыл бұрын

    Interesting.

  • @gokusaiyan6809
    @gokusaiyan68093 жыл бұрын

    Hi naveen , I hope you be able to reply me, If i wish to add more rows, is there any way, just like arrays.length or string.length() so that i don't have to hard code terminating condition in loop

  • @vanajakatabathula8024
    @vanajakatabathula80243 жыл бұрын

    Hi Sir, Can I know how to write xpath for a checkbox based on its two preceding siblings. In your example only, if I want to write xpath for checkbox based on both Name and Company, how can we write? please explain.

  • @rupamrouth4820
    @rupamrouth48205 жыл бұрын

    Hi Naveen, if web table has lots of data and has pagination, just like your Contacts page have, will this way may I resolve the problem? Because of how many paginations is there and which pagination number the actual search data will be present is unpredictable in runtime. Could you suggest please. Thanks

  • @anitak2196
    @anitak21962 жыл бұрын

    How to selecting the grid say some from 4 th column 3rd row to 6th column 7th row and right click and copy the values .

  • @DineshKumar-jm9ll
    @DineshKumar-jm9ll5 жыл бұрын

    If I'm having one output in console. I need to found exact name in the table and I have to click. For eg if I have a printed "test test" in the console using get text. Now I have pick up the value from the console and I need to search in the table and click.

  • @artidhayagude3213
    @artidhayagude32133 жыл бұрын

    Hello Naveen Sir, As per interview point of view is 2nd method preferable ? Can we use it if interviewer asks to handle dynamic webtable?

  • @MahendraVidyarthi
    @MahendraVidyarthi5 жыл бұрын

    Hi Naveen, what if we don’t have table with tr and td, instead data is being populated using div?? How to get those table into HashMap.

  • @sudeeptalekar
    @sudeeptalekar3 жыл бұрын

    Hey naveen you have explained it very well, can you please tell how to write a feature file scenario for same webtable in cucumber

  • @nikitabakshi3349
    @nikitabakshi33494 жыл бұрын

    Hi naveen , I am not able to locate the contacts button because I am not able to find the frame in the CRM website example that you have used. Can you please help me out how can we find the frame within the new CRM webpage ?

  • @selvaraniselvamani6848
    @selvaraniselvamani68485 жыл бұрын

    Hi Naveen, I am using chropath in firefox 67.0.4. It works fine for other webapps. But in CRMPRO site, its working fine in login page .when it moves to next page, it is not inspecting any element. Please could you help me with it.

  • @sriharshamishra5167
    @sriharshamishra51674 жыл бұрын

    Hi Naveen, How i can browse thru all the available videos in a sequence Please reply..

  • @aniketmahajan795
    @aniketmahajan7955 жыл бұрын

    nice explaination but i have one query in this like if you have 3 " test2 test2 " names in one record how can i handle it ?

  • @abraham8058
    @abraham80585 жыл бұрын

    Can you work this example in IE? Thank you

  • @pranalilanjewar3726
    @pranalilanjewar37263 жыл бұрын

    Hi Naveen, I am trying to use this logic of webtable in POM but i am getting "Cannot invoke "com.hrm.qa.pages.Recruitment.clickOnCheckBox()" because "this.recruitment" is null" error, I am not getting what will be the return when I click in checkbox. Can u pls help me ?

  • @barkhachetwani9735
    @barkhachetwani97354 жыл бұрын

    thanku so much sir...this video is enough to crack interview?

  • @yogisingh170
    @yogisingh1703 жыл бұрын

    Hi Naveen, Firepath does not exists now. Can you please suggest any other add in.?

  • @gavipujar7776
    @gavipujar77765 жыл бұрын

    Hi Naveen, i facing issue with following xpath //td[text()='Heavyweight Coated Paper'] in this xpath the text 'Heavyweight Coated Paper' is present but the problem is it has  , so it is not recognized becaouse of that. I can use contains instead of text equal, but the problem the patter of the text we search may be sub set another text in the same td exp: i am searching for 'Heavyweight Coated Paper ' there is other text like "super Heavyweight Coated Paper', so contains dose not work here. So could you please let me know how to search exact text which has   Thanks, Gavi

  • @sumeetbisht9319

    @sumeetbisht9319

    5 жыл бұрын

    @Gavi Pujar .. Hey you can try starts with or ends with keyword instead of contains.

  • @shrutibogale9377
    @shrutibogale93774 жыл бұрын

    hi Naveen i have a doubt if that checkbox is at 7th place instead of 3 then whatever xpath is there will be one parent and 5 preceeding sibling then how will this xpath works?

  • @srisindhura8312
    @srisindhura83125 жыл бұрын

    Hi Naveen.. Good explanation. But in my test case i have only one to call..then how to write for this ? help us Thnx in advance

  • @amiereviews5522

    @amiereviews5522

    4 жыл бұрын

    Hey i know this comment is one year old but i hope u still read this, when i m trying to do the same thing it only gives me one td and one tr i dont have any input or nothing. So in this case i m supposed to do this parent sibling thing??? Hope u reply

  • @bihari1422

    @bihari1422

    2 жыл бұрын

    @@amiereviews5522 whole idea is to uniquely locate the element

  • @selvaraniselvamani6848
    @selvaraniselvamani68485 жыл бұрын

    Is there anyway to use firepath in firefox 67.0.4?

  • @krushnasahoo9740
    @krushnasahoo97405 жыл бұрын

    Hi Naveen.........can you explain how to handle webelements having ::before html tag

  • @sourav_96
    @sourav_965 жыл бұрын

    hi sir in this xpath after text you are using single slash(/) but after preceding you are using // ---@naveen can you explain this

  • @imranmohammad1423
    @imranmohammad14234 жыл бұрын

    Hi Naveen, appreciate all your tutorials, full of knowledge as always, I wanted to share my interview experience, I recently attended an interview, they asked me this tricky question and I could not give the exact solution hope you can help me with this : "We have a big web table in our webpage consisting of lots of rows which are visible only by scrolling down vertical scroller in that table (not webpage scroller) each row is defined as separate table tag in html, how do i get to view the last row in that big table and print text from it?" My answer was we can use javascript executor and call scrollintoview method, but he said it works only at page level not for scrolling table inside the webpage. Appreciate your comments...

  • @bhagyashreepatel8754

    @bhagyashreepatel8754

    4 жыл бұрын

    did you get the answer for this question?

  • @srivignesh94

    @srivignesh94

    2 жыл бұрын

    It goes like this : EventFiringWebdriver efb = new EventFiringWebdriver(driver); efb.executeScript("document.querySelector('').scrollTop=500");

  • @amolnawale2177
    @amolnawale21776 жыл бұрын

    Hi Naveen, One more question. What if there is no Scrolling down option available but instead developers have provided the pagination option like - Previous, 1,2,3... Next, etc. with each page holding 10 records. And if the element that we are looking for appears on the 5th page. Fortunately, in one of my projects, developers have provided the pagination option and have also given a Search textbox above the table using which we can search the record directly and then interact with it. This has made my life easier. But what if there is no search textbox and the user has to click on the Page Numbers to look for the element of his interest. Then how do we handle such case.

  • @karanks2519

    @karanks2519

    6 жыл бұрын

    Amol Nawale you answered your own question 😊

  • @mitu14888

    @mitu14888

    5 жыл бұрын

    I am facing same problem. I want to search text from 5th page 2 column..then how to use pagination.I tried many but not getting result. If u got answer then tell me.

  • @bihari1422
    @bihari14222 жыл бұрын

    line no 48: the range of for loop is from 4 to 7. If we are truely considering the dynamic scenario then we will face issue again. Suppose next time we visit the page then 50 rows appear in the table then i think Method 1 will not be suitable. Although I am very clear with method 2 approach but Naveen is there any way to overcome challenge of method 1?? Posted on: 13March 2022

  • @Gaurav12081
    @Gaurav120813 жыл бұрын

    Hi naveen can you guide me how do i handle a web table which has 1000 of records and all records are in same page. If i scroll down more and more data keeps on loading which also takes some 4 to 5 seconds to load.Please guide me i think only you can help me.

  • @mukulsharma9977
    @mukulsharma99772 жыл бұрын

    ❤️

  • @lokeshreddy4072
    @lokeshreddy40726 жыл бұрын

    Hi Naveen can u explain this also , we have web table like u shown in that table have first name lable and last name labels , then subject names also there, will give one full name like LOKESH Is a first name REDDY Is last name, you just find the name is there in that table or not, if name there you have to print name with subject marks also can u do this program for me , u can take any example

  • @ruchikaarzare5800
    @ruchikaarzare58004 жыл бұрын

    Hey Naveen its amazing... but if we have the same contact name then how it will handle that??

  • @divyangjani7600

    @divyangjani7600

    3 жыл бұрын

    than i guess you also need to put one more condition in if loop if(element.contain("name")&&i=1) driver.findelement.click

  • @ShubhamMishra-lo6wz
    @ShubhamMishra-lo6wz3 жыл бұрын

    What will happen if someone deletes the preceding record ( contact_id).. in that case will it fail ?? @naveenautomationlabs

  • @Pittakatalu_From_USA
    @Pittakatalu_From_USA4 жыл бұрын

    sir how we can add entire rows and columns in dynamic table using excel sheet can you please explain us!!!

  • @bhavikapatel7421
    @bhavikapatel74213 жыл бұрын

    Hi Naveen, I m trying to execute same concept on "ui.cogmento.com/contacts" by using xpath driver.findElement(By.xpath("//td[contains(text(),'Test 2 Test 2')]/parent::*//preceding-sibling::td//input[@type='checkbox'])")).click(); This xpath is showing proper as highlighted on elements section of browser. But, when i m executing script, at that time its not finding this element. Thanks in advance

  • @rinkusaw6670
    @rinkusaw66706 жыл бұрын

    Hi Naveen, How to select email I'd with respect to Name in table ??

  • @hiteshshah5058
    @hiteshshah50583 жыл бұрын

    Hi Naveen, nice video. please let me know selenium support salesforce (CRM tool). I need support in salesforce automation through selenium

  • @rehabasak6645
    @rehabasak66455 жыл бұрын

    I can not select row value of a JavaScript table.

  • @neetigogo
    @neetigogo5 жыл бұрын

    Hi Naveen, I wanted to select the checkboxes based on the company name, I gave two records the same company name say 'Natural ltd' and I want to select both of them, how I can do that?

  • @siddiqsyed5911

    @siddiqsyed5911

    5 жыл бұрын

    U can use standard method i.e for loop

Келесі