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
Impressed with your English, compare to other paid selenium courses your explanation is far better and clean.
This was in fact a superb explanation. I think this video has made handling dynamic table seem like a feather. Appreciated.
Absolutely brilliant approach!! Thank you for putting it up in such a simple manner!!
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!!
So easy and very clear explanation...a never forgetting sessions 👏👏👏 Sharing knowledge is the first step to humanity 😘
Naveen your tutorials are very focused and clear!! Thanks for all your hard work!!
Hi Naveen---Your teaching style is excellent...I really learn many things from your videos. Keep it up
This video was very useful for me to find a solution, thank you so much!
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.
Hi Naveen, your teaching style is outstanding. I learnt a lot by watching your page object model video. Keep it up great work!
This is awesome way of handling dynamic table🙏👌
Really helpful, appreciate your work .
thank you so much sir... perfectly explained
First method worked for me. Thank you for this approach 😊
You are amazing bro....keep uploading videos....u explain every concept very clearly
Fantastic! Thanks a lot Naveen!
Hi Naveen, Who ever ask me for selenium tutorial first I take your name only... as your the best 1
just crispy and clear
Hello Naveen sir, Your simple and clear techniques help me to understand the topic. Keep it up sir.
Awesome tutorial
Excellent explanation , really helpful
Its very useful.......thank you for sharing this video
It was really amazing, & very usefull vedio...thank yow so much..Sir.
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.
great explanation
Amazing ....... thanks Naveen
thanks. I will use today this concept in my code. thanks again . pls make video on complex part
Hi Naveen , your teaching is amazing
U r legend in automation explanation, great sibling😍
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😊
Its worked thank you so much
excellent tutorial.
Thank you Naveen 👍
Helps me a lot.
thanks for sharing
Great explanation sir.. Thanku so much
Really nice explanation
This video helped for me so much thank u bro 😍
Nice and very clear
useful and clear explaination
@naveenautomationlabs
6 жыл бұрын
Thanks Jyoshna!! Keep Learning & Sharing!
Nicely Explained :-) Keep Teaching.
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..
nice explain keep uploading
Super bro
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?
Thanks bro for your smart solution
Awesome
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??
Nice
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..
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
4 жыл бұрын
@Shivanshu Sharma use this : String name= driver.findElement(By.xpath(before_xpath + I + After_xpath)).getText();
@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
3 жыл бұрын
@Shivanshu Sharma u didn't appended i in string name , check once
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.
Hi Naveen.....your teaching is excellent.
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 ?
Thanks!
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
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.
you are guru :)
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
3 жыл бұрын
Go with *contains* keyword
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
Bro ultimate
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
nice video
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
Interesting.
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
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.
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
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 .
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.
Hello Naveen Sir, As per interview point of view is 2nd method preferable ? Can we use it if interviewer asks to handle dynamic webtable?
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.
Hey naveen you have explained it very well, can you please tell how to write a feature file scenario for same webtable in cucumber
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 ?
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.
Hi Naveen, How i can browse thru all the available videos in a sequence Please reply..
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 ?
Can you work this example in IE? Thank you
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 ?
thanku so much sir...this video is enough to crack interview?
Hi Naveen, Firepath does not exists now. Can you please suggest any other add in.?
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
5 жыл бұрын
@Gavi Pujar .. Hey you can try starts with or ends with keyword instead of contains.
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?
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
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
2 жыл бұрын
@@amiereviews5522 whole idea is to uniquely locate the element
Is there anyway to use firepath in firefox 67.0.4?
Hi Naveen.........can you explain how to handle webelements having ::before html tag
hi sir in this xpath after text you are using single slash(/) but after preceding you are using // ---@naveen can you explain this
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
4 жыл бұрын
did you get the answer for this question?
@srivignesh94
2 жыл бұрын
It goes like this : EventFiringWebdriver efb = new EventFiringWebdriver(driver); efb.executeScript("document.querySelector('').scrollTop=500");
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
6 жыл бұрын
Amol Nawale you answered your own question 😊
@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.
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
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.
❤️
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
Hey Naveen its amazing... but if we have the same contact name then how it will handle that??
@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
What will happen if someone deletes the preceding record ( contact_id).. in that case will it fail ?? @naveenautomationlabs
sir how we can add entire rows and columns in dynamic table using excel sheet can you please explain us!!!
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
Hi Naveen, How to select email I'd with respect to Name in table ??
Hi Naveen, nice video. please let me know selenium support salesforce (CRM tool). I need support in salesforce automation through selenium
I can not select row value of a JavaScript table.
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
5 жыл бұрын
U can use standard method i.e for loop