title
Selenium Tutorial For Beginners | What Is Selenium? | Selenium Automation Testing Tutorial | Edureka
description
π₯ Edureka Selenium Training (Use Code "πππππππππ"): https://www.edureka.co/selenium-certification-training
This Edureka Selenium tutorial video (Selenium Blog Series: https://goo.gl/VGBJHx) will give you an introduction to software testing. It talks about the drawbacks of manual testing and reasons why automation testing is the way forward. In this Selenium tutorial, you will also get to learn the different suites of Selenium and what are the features and shortcomings of Selenium as an automation testing tool. Watch the video till the very end to witness a demonstration which shows the power of Selenium as an automation testing tool.
Go through the slides in Slideshare: https://www.slideshare.net/EdurekaIN/selenium-tutorial-for-beginners-what-is-selenium-selenium-automation-testing-tutorial-edureka
For doubts & queries on Selenium, post the same on Edureka Community: https://www.edureka.co/community/selenium
Click on the time-stamp below to move directly to the topic you are interested in.
00:00 Introduction
02:20 Challenges with manual testing
03:32 How automation testing beats manual testing?
13:49 Selenium as an automation testing tool
20:34 Advantages & Disadvantages of Selenium
29:48 Selenium vs. QTP vs. IBM RFT
33:41 Selenium suite of tools
37:35 Hands-on: Testing a dynamic web application
πΉSelenium playlist: https://goo.gl/NmuzXE
πΉSelenium Blog List: https://bit.ly/39ZUAwR
- - - - - - - - - - - - - - - - -
π’π’ ππ¨π© ππ ππ«ππ§ππ’π§π ππππ‘π§π¨π₯π¨π π’ππ¬ ππ¨ ππππ«π§ π’π§ ππππ πππ«π’ππ¬ π’π’
β© NEW Top 10 Technologies To Learn In 2024 - https://www.youtube.com/watch?v=vaLXPv0ewHU
Subscribe to our channel to get video updates. Hit the subscribe button above: https://goo.gl/6ohpTV
Instagram: https://www.instagram.com/edureka_learning
Facebook: https://www.facebook.com/edurekaIN/
Twitter: https://twitter.com/edurekain
LinkedIn: https://www.linkedin.com/company/edureka
Telegram: https://t.me/edurekaupdates
- - - - - - - - - - - - - - - - -
#edureka #SeleniumEdureka #Selenium #SeleniumAutomation #SeleniumTesting #SeleniumTutorial #SeleniumTraining
- - - - - - - - - - - - - -
How it Works?
1. This is a 5 Week Instructor led Online Course, 20 hours of assignment and 30 hours of project work
2. We have a 24x7 One-on-One LIVE Technical Support to help you with any problems you might face or any clarifications you may require during the course.
3. At the end of the training you will have to undergo a 2-hour LIVE Practical Exam based on which we will provide you a Grade and a Verifiable Certificate!
- - - - - - - - - - - - - -
About the Course:
Selenium is the most popular tool used to automate the testing of web applications. In this Course, you will learn about Selenium 3.0 and its various components such as Selenium IDE, Selenium WebDriver, and Selenium GRID. You learn to set up your environment so that you are ready to start using Selenium for testing your web applications. Browsers such as Chrome, Firefox, and IE are used to test the web applications. In addition, you will experience to work with Selenium IDE, Selenium WebDriver, Selenium GRID, different frameworks such as Data Driven, Keyword Driven, Hybrid and Cross browser testing.
- - - - - - - - - - - - - -
Who should go for this course?
Selenium is a new and booming Technology in Software Industry that helps you automate the testing of your applications. Professionals with basic knowledge of Object Oriented Programming can easily take up this course.
- - - - - - - - - - - - - -
Why learn Selenium?
For any project, Companies are rapidly inclining towards open source automated testing tools that will enable them to cut down the cost and effort that manual testing involves. Selenium is one such open source automated testing tool for websites. Performance, execution speed, and browser interaction of Selenium is too fast than any other automation tool. In addition, Selenium supports different operating systems along with support for different programming languages such as Python, Pearl, Ruby, PHP, .NET, C#, and Java; and various browsers, thereby making Selenium ahead of any other Automation tool.
Customer Review:
Tom Tully says, βI wanted to learn Selenium Webdriver in a live, real course, not self paced, so there would be pressure on me to finish. Edureka accomplished this at a price far lower than an in-person class, and as far as I know they are the only internet class that has live lectures on this subject. Teacher was very knowledgeable. I learned basic use of Selenium. No problem with me being in US and teacher in India. They have US 800 number.β
- - - - - - - - - - - - - -
For more information, Please write back to us at sales@edureka.co or call us at IND: 9606058406 / US: +18338555775 (toll free).
detail
{'title': 'Selenium Tutorial For Beginners | What Is Selenium? | Selenium Automation Testing Tutorial | Edureka', 'heatmap': [{'end': 2380.848, 'start': 2286.451, 'weight': 0.868}, {'end': 4860.823, 'start': 4758.141, 'weight': 0.91}, {'end': 6686.629, 'start': 6408.239, 'weight': 0.862}], 'summary': "This tutorial series provides a comprehensive introduction to selenium and automation testing, covering its components, advantages, drawbacks, transition from manual testing, limitations, setup, and fundamental webdriver functions, offering a detailed exploration of selenium's features and techniques.", 'chapters': [{'end': 1197.099, 'segs': [{'end': 220.594, 'src': 'embed', 'start': 193.557, 'weight': 4, 'content': [{'end': 201.342, 'text': "it's boring, it's time consuming, it's tedious and there's a tendency to make mistakes and errors, because to error is human.", 'start': 193.557, 'duration': 7.785}, {'end': 209.107, 'text': 'And if somebody has to do 100 plus or 1, 000 plus transactions, believe me, even I will tend to insert a mistake.', 'start': 201.843, 'duration': 7.264}, {'end': 211.389, 'text': 'Anybody would tend to insert a mistake.', 'start': 209.267, 'duration': 2.122}, {'end': 217.272, 'text': "So now let's see how automation testing will take over manual testing.", 'start': 212.35, 'duration': 4.922}, {'end': 220.594, 'text': 'Automation testing beats manual testing.', 'start': 218.173, 'duration': 2.421}], 'summary': 'Automation testing beats manual testing due to time-consuming, error-prone nature of manual testing.', 'duration': 27.037, 'max_score': 193.557, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/5FUdrBq-WFo/pics/5FUdrBq-WFo193557.jpg'}, {'end': 351.515, 'src': 'embed', 'start': 318.604, 'weight': 1, 'content': [{'end': 321.247, 'text': 'Automation testing beats manual testing.', 'start': 318.604, 'duration': 2.643}, {'end': 324.11, 'text': 'So these are the points how they beat manual testing.', 'start': 321.527, 'duration': 2.583}, {'end': 337.743, 'text': 'Faster execution, more accurate, lesser investment in human resources, supports regression testing, frequent executions, supports light out execution.', 'start': 324.77, 'duration': 12.973}, {'end': 340.826, 'text': "So let's understand all these points in detail.", 'start': 338.163, 'duration': 2.663}, {'end': 342.667, 'text': 'Faster execution.', 'start': 341.466, 'duration': 1.201}, {'end': 345.89, 'text': 'Now we need to understand why is it faster.', 'start': 343.508, 'duration': 2.382}, {'end': 351.515, 'text': "So you all will think that okay that's the script and we'll just run the script and that's absolutely correct.", 'start': 345.93, 'duration': 5.585}], 'summary': 'Automation testing is faster, more accurate, and requires lesser investment in human resources compared to manual testing.', 'duration': 32.911, 'max_score': 318.604, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/5FUdrBq-WFo/pics/5FUdrBq-WFo318604.jpg'}, {'end': 578.112, 'src': 'embed', 'start': 549.33, 'weight': 2, 'content': [{'end': 556.332, 'text': 'keeping in mind that these test cases will test the major functionality of the application.', 'start': 549.33, 'duration': 7.002}, {'end': 563.263, 'text': 'we want to check the major flow or major functions or major components of that application.', 'start': 557.032, 'duration': 6.231}, {'end': 568.612, 'text': "So that's how that regression test suite is created, having major test cases.", 'start': 563.924, 'duration': 4.688}, {'end': 578.112, 'text': "Now, when it comes to regression testing, it means whenever there's a bug fix or let's say, whenever there's an enhancement,", 'start': 569.505, 'duration': 8.607}], 'summary': 'Creating a regression test suite to cover major functionality of the application.', 'duration': 28.782, 'max_score': 549.33, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/5FUdrBq-WFo/pics/5FUdrBq-WFo549330.jpg'}, {'end': 1001.837, 'src': 'embed', 'start': 978.115, 'weight': 0, 'content': [{'end': 985.442, 'text': 'It supports Java, Python, Perl, Ruby, C Sharp, C JavaScript, and I think a few must not be mentioned here.', 'start': 978.115, 'duration': 7.327}, {'end': 987.564, 'text': 'Supports different OS.', 'start': 986.042, 'duration': 1.522}, {'end': 995.213, 'text': 'So, whether you talk about Linux, whether you talk about Windows, any version, whether you talk about Mac, whether you talk about iOS,', 'start': 988.43, 'duration': 6.783}, {'end': 1001.837, 'text': 'whether you talk about Android, whether you talk about Ubuntu, all major operating systems are supported by Selenium.', 'start': 995.213, 'duration': 6.624}], 'summary': 'Selenium supports java, python, perl, ruby, c sharp, c javascript and all major operating systems.', 'duration': 23.722, 'max_score': 978.115, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/5FUdrBq-WFo/pics/5FUdrBq-WFo978115.jpg'}], 'start': 0.282, 'title': 'Introduction to selenium and automation testing', 'summary': 'Provides an introductory class on selenium, covering challenges with manual testing, automation testing advantages, selenium components, and a demonstration of selenium webdriver for web application testing. it also explores the transition from manual to automation testing, highlighting the importance of manual testing concepts, the drawbacks of manual testing, and the advantages of automation testing, including faster execution, accuracy, and reduced investment in human resources.', 'chapters': [{'end': 77.489, 'start': 0.282, 'title': 'Introduction to selenium', 'summary': 'Provides an introductory class on selenium, covering topics such as challenges with manual testing, automation testing advantages, selenium components, and a demonstration of selenium webdriver for web application testing.', 'duration': 77.207, 'highlights': ['The instructor, Akanksha, from Edureka, will be covering topics including challenges with manual testing, automation testing advantages, Selenium components, and a demonstration of Selenium WebDriver for web application testing.', "Edureka is a platform for live online knowledge gaining, and today's session will focus on Selenium, including its advantages, disadvantages, and comparison with other tools.", 'The session will also include a hands-on use case demonstrating the use of Selenium WebDriver, with the setup environment and an example using a web application, possibly Edureka.']}, {'end': 511.711, 'start': 77.489, 'title': 'Automation testing: advantages and process', 'summary': 'Explores the transition from manual to automation testing, highlighting the importance of manual testing concepts, the drawbacks of manual testing, and the advantages of automation testing, including faster execution, accuracy, and reduced investment in human resources.', 'duration': 434.222, 'highlights': ['Automation testing beats manual testing with benefits such as faster execution, more accurate results, and reduced investment in human resources.', 'Manual testing involves tedious and time-consuming tasks, such as loading and validating transactions, while automation testing simplifies these processes and reduces the potential for errors.', 'Automation testing involves creating test scripts, automated test suites, auto-generation of result files, and reports, which contribute to efficient and effective testing processes.']}, {'end': 1197.099, 'start': 512.071, 'title': 'Automation testing with selenium', 'summary': 'Discusses the benefits of automation testing, particularly regression testing, and highlights the advantages of using selenium as an automation testing tool, emphasizing its open-source nature, wide language and os support, and its ability to automate functional and regression testing.', 'duration': 685.028, 'highlights': ['Selenium is an open-source suite of tools for automating web browsers, supporting functional and automation testing, which can be used without any licensing cost.', 'Regression testing involves a set of test cases designed to test the major functionality or components of an application, and automation can save time and money by enabling frequent execution of the test suite.', 'Selenium offers support for multiple programming languages such as Java, Python, Perl, Ruby, C Sharp, and JavaScript, making it versatile for different users and projects.', 'Selenium provides support for various operating systems and web browsers, including Linux, Windows, Mac, iOS, Android, and multiple major browsers, ensuring broad compatibility.', 'Functional testing involves testing the call flows and components of a web application, and can be automated using Selenium, showcasing its flexibility and applicability to different types of applications.']}], 'duration': 1196.817, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/5FUdrBq-WFo/pics/5FUdrBq-WFo282.jpg', 'highlights': ['Selenium offers support for multiple programming languages such as Java, Python, Perl, Ruby, C Sharp, and JavaScript, making it versatile for different users and projects.', 'Automation testing beats manual testing with benefits such as faster execution, more accurate results, and reduced investment in human resources.', 'Regression testing involves a set of test cases designed to test the major functionality or components of an application, and automation can save time and money by enabling frequent execution of the test suite.', 'Selenium provides support for various operating systems and web browsers, including Linux, Windows, Mac, iOS, Android, and multiple major browsers, ensuring broad compatibility.', 'Manual testing involves tedious and time-consuming tasks, such as loading and validating transactions, while automation testing simplifies these processes and reduces the potential for errors.']}, {'end': 2014.464, 'segs': [{'end': 1220.978, 'src': 'embed', 'start': 1197.099, 'weight': 3, 'content': [{'end': 1204.505, 'text': 'okay?. Now, when it comes to automation testing, You can automate functional testing and you can automate your regression test suite as well.', 'start': 1197.099, 'duration': 7.406}, {'end': 1210.79, 'text': 'Automation testing is that you have to write scripts to run some test cases.', 'start': 1204.966, 'duration': 5.824}, {'end': 1213.112, 'text': 'Now for this automation testing.', 'start': 1211.45, 'duration': 1.662}, {'end': 1220.978, 'text': 'you can have individual scripts for practicing, but when it comes to real time, you actually need to create automation test suite.', 'start': 1213.112, 'duration': 7.866}], 'summary': 'Automation testing includes writing scripts for functional and regression testing, requiring creation of an automation test suite.', 'duration': 23.879, 'max_score': 1197.099, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/5FUdrBq-WFo/pics/5FUdrBq-WFo1197099.jpg'}, {'end': 1285.154, 'src': 'embed', 'start': 1246.694, 'weight': 4, 'content': [{'end': 1247.995, 'text': "Let's understand those as well.", 'start': 1246.694, 'duration': 1.301}, {'end': 1252.378, 'text': "We'll talk about disadvantages first and then we'll talk about advantages.", 'start': 1248.455, 'duration': 3.923}, {'end': 1255.621, 'text': 'Supports only web applications.', 'start': 1253.279, 'duration': 2.342}, {'end': 1258.633, 'text': "Now it doesn't support mobile applications.", 'start': 1256.431, 'duration': 2.202}, {'end': 1266.179, 'text': "It supports web applications and it doesn't even support any desktop application.", 'start': 1260.334, 'duration': 5.845}, {'end': 1267.36, 'text': "So that's there.", 'start': 1266.659, 'duration': 0.701}, {'end': 1269.922, 'text': 'Selenium only supports your web applications.', 'start': 1267.6, 'duration': 2.322}, {'end': 1273.029, 'text': 'Only user community is available.', 'start': 1271.028, 'duration': 2.001}, {'end': 1285.154, 'text': "Now people say that's a big drawback because if you talk about QTP and if you talk about other tools all right major tools that are being used in the market today for automation,", 'start': 1273.549, 'duration': 11.605}], 'summary': 'Selenium supports only web applications, lacks mobile and desktop support with only user community available.', 'duration': 38.46, 'max_score': 1246.694, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/5FUdrBq-WFo/pics/5FUdrBq-WFo1246694.jpg'}, {'end': 1429.073, 'src': 'embed', 'start': 1403.665, 'weight': 7, 'content': [{'end': 1413.688, 'text': "Now, I consider this as a disadvantage because in WebDriver, which is basically used by all the companies, we don't have any reporting facility here.", 'start': 1403.665, 'duration': 10.023}, {'end': 1422.752, 'text': "You either need to include that reporting thing in your framework by automating this, or you'll have to use third party tools like TestNG.", 'start': 1414.169, 'duration': 8.583}, {'end': 1429.073, 'text': "So you'll integrate TestNG along with Selenium WebDriver to get the reports in HTML format probably.", 'start': 1423.365, 'duration': 5.708}], 'summary': 'Webdriver lacks built-in reporting; consider using testng for html reports.', 'duration': 25.408, 'max_score': 1403.665, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/5FUdrBq-WFo/pics/5FUdrBq-WFo1403665.jpg'}, {'end': 1512.863, 'src': 'embed', 'start': 1488.788, 'weight': 6, 'content': [{'end': 1497.397, 'text': "We've got other tools like APM and stuff for doing that kind of testing, okay? All right, limited support for image-based testing.", 'start': 1488.788, 'duration': 8.609}, {'end': 1505, 'text': "Now you can take a screenshot using Selenium, that's there, but you cannot compare two images.", 'start': 1498.038, 'duration': 6.962}, {'end': 1510.922, 'text': "Let's say for any kind of verification, you want to compare two images for verification.", 'start': 1505.601, 'duration': 5.321}, {'end': 1512.863, 'text': 'That is not there in Selenium.', 'start': 1511.522, 'duration': 1.341}], 'summary': 'Selenium has limited support for image-based testing, including the inability to compare two images for verification.', 'duration': 24.075, 'max_score': 1488.788, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/5FUdrBq-WFo/pics/5FUdrBq-WFo1488788.jpg'}, {'end': 1598.035, 'src': 'embed', 'start': 1571.978, 'weight': 0, 'content': [{'end': 1576.47, 'text': "Any programming language you talk about? Major programming language and we've got support for it from Selenium.", 'start': 1571.978, 'duration': 4.492}, {'end': 1580.484, 'text': 'Next one, support almost every operating system.', 'start': 1577.202, 'duration': 3.282}, {'end': 1587.148, 'text': "So that I've already told you whether you've got Ubuntu, whether you've got any version of Windows, whether you are using Mac,", 'start': 1580.644, 'duration': 6.504}, {'end': 1589.209, 'text': "whether you're using Linux.", 'start': 1587.148, 'duration': 2.061}, {'end': 1590.39, 'text': "you've got a support for it.", 'start': 1589.209, 'duration': 1.181}, {'end': 1592.992, 'text': 'Support multiple browsers.', 'start': 1591.07, 'duration': 1.922}, {'end': 1596.534, 'text': "So let's say you prefer to work with Chrome.", 'start': 1593.772, 'duration': 2.762}, {'end': 1598.035, 'text': "Okay, that's your choice.", 'start': 1596.954, 'duration': 1.081}], 'summary': 'Selenium supports major programming languages, all operating systems, and multiple browsers.', 'duration': 26.057, 'max_score': 1571.978, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/5FUdrBq-WFo/pics/5FUdrBq-WFo1571978.jpg'}, {'end': 2019.445, 'src': 'embed', 'start': 1993.328, 'weight': 2, 'content': [{'end': 2000.031, 'text': "It could be in a few scenarios in case of major bugs, okay, but I haven't felt that there's any major bugs so far.", 'start': 1993.328, 'duration': 6.703}, {'end': 2002.112, 'text': "I haven't come across any major bug here.", 'start': 2000.051, 'duration': 2.061}, {'end': 2006.114, 'text': "But even if there's an open source community, believe me, you get the answers.", 'start': 2002.712, 'duration': 3.402}, {'end': 2007.454, 'text': "Let's say you're stuck somewhere.", 'start': 2006.174, 'duration': 1.28}, {'end': 2010.436, 'text': "You just Google it and you'll get millions of answers.", 'start': 2007.955, 'duration': 2.481}, {'end': 2014.464, 'text': 'So it could be a drawback, but not that major.', 'start': 2011.323, 'duration': 3.141}, {'end': 2019.445, 'text': 'And these points obviously are taking over QTP and RFT.', 'start': 2015.124, 'duration': 4.321}], 'summary': 'No major bugs encountered so far. open source community provides solutions. drawback not major. points taking over qtp and rft.', 'duration': 26.117, 'max_score': 1993.328, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/5FUdrBq-WFo/pics/5FUdrBq-WFo1993328.jpg'}], 'start': 1197.099, 'title': 'Selenium in automation testing', 'summary': 'Covers automation testing with selenium, including functional and regression testing, creation of automation test suite using frameworks, and its advantages and disadvantages such as support for multiple programming languages, operating systems, and browsers, alongside limitations in mobile testing and lack of reporting facility.', 'chapters': [{'end': 1290.496, 'start': 1197.099, 'title': 'Automation testing with selenium', 'summary': 'Covers automation testing with selenium, including the automation of functional and regression testing, the creation of automation test suite using frameworks, and the advantages and disadvantages of selenium, including its limitation to web applications and lack of dedicated support.', 'duration': 93.397, 'highlights': ['Selenium only supports web applications and lacks support for mobile and desktop applications.', 'Automation testing involves writing scripts to run test cases, and creating automation test suite using frameworks.', 'The disadvantages of Selenium include its limitation to web applications and lack of dedicated support, while its advantages include a strong user community.']}, {'end': 2014.464, 'start': 1291.323, 'title': 'Selenium: advantages and disadvantages', 'summary': 'Highlights the advantages and disadvantages of using selenium, an open source automation test tool, including its support for multiple programming languages, operating systems, and browsers, alongside its limitations in mobile testing, image-based testing, and lack of reporting facility.', 'duration': 723.141, 'highlights': ['Supports multiple programming languages', 'Supports multiple browsers', 'Open source software', 'Limited support for image-based testing', 'No reporting facility']}], 'duration': 817.365, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/5FUdrBq-WFo/pics/5FUdrBq-WFo1197099.jpg', 'highlights': ['Supports multiple programming languages', 'Supports multiple browsers', 'Open source software', 'Automation testing involves writing scripts to run test cases, and creating automation test suite using frameworks', 'The disadvantages of Selenium include its limitation to web applications and lack of dedicated support, while its advantages include a strong user community', 'Selenium only supports web applications and lacks support for mobile and desktop applications', 'Limited support for image-based testing', 'No reporting facility']}, {'end': 2645.974, 'segs': [{'end': 2078.789, 'src': 'embed', 'start': 2043.229, 'weight': 0, 'content': [{'end': 2047.15, 'text': "We had one, selenium one, we had selenium two, and now it's selenium three.", 'start': 2043.229, 'duration': 3.921}, {'end': 2052.871, 'text': 'In selenium three, RC has been deprecated and has been moved to a legacy package.', 'start': 2047.73, 'duration': 5.141}, {'end': 2057.853, 'text': 'IDE, RC, WebDriver, and GRID.', 'start': 2054.672, 'duration': 3.181}, {'end': 2061.295, 'text': 'So version one had IDE, RC, and GRID.', 'start': 2058.393, 'duration': 2.902}, {'end': 2063.456, 'text': 'There was no WebDriver in selenium one.', 'start': 2061.315, 'duration': 2.141}, {'end': 2068.978, 'text': 'Version two had IDE, RC, WebDriver, and GRID.', 'start': 2064.896, 'duration': 4.082}, {'end': 2078.789, 'text': "Version 3 IDE, RC, WebDriver and CRIT but then you can consider it not being there as well because it's been deprecated now.", 'start': 2069.844, 'duration': 8.945}], 'summary': 'Selenium has evolved through versions 1, 2, and 3, with changes in supported components, including deprecation of rc and introduction of webdriver.', 'duration': 35.56, 'max_score': 2043.229, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/5FUdrBq-WFo/pics/5FUdrBq-WFo2043229.jpg'}, {'end': 2141.737, 'src': 'embed', 'start': 2118.106, 'weight': 1, 'content': [{'end': 2126.21, 'text': "And if you read this line carefully, it's a plugin, which comes only for Firefox, which is used to create and execute test cases.", 'start': 2118.106, 'duration': 8.104}, {'end': 2129.231, 'text': 'So you can create and execute test cases here.', 'start': 2126.47, 'duration': 2.761}, {'end': 2131.212, 'text': "I'll just quickly give you a demonstration.", 'start': 2129.311, 'duration': 1.901}, {'end': 2132.532, 'text': "Let's go through the slide now.", 'start': 2131.252, 'duration': 1.28}, {'end': 2139.736, 'text': 'It records and plays back the interactions with the user, sorry, which the user had with the web browser.', 'start': 2133.173, 'duration': 6.563}, {'end': 2141.737, 'text': 'Record and play.', 'start': 2140.576, 'duration': 1.161}], 'summary': 'Firefox plugin for creating and executing test cases, records and plays back user interactions.', 'duration': 23.631, 'max_score': 2118.106, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/5FUdrBq-WFo/pics/5FUdrBq-WFo2118106.jpg'}, {'end': 2316.987, 'src': 'embed', 'start': 2286.451, 'weight': 4, 'content': [{'end': 2293.794, 'text': 'Now, go to Download here, and you might just have to scroll down a bit to find IDE.', 'start': 2286.451, 'duration': 7.343}, {'end': 2295.475, 'text': "Okay, it's right here.", 'start': 2294.475, 'duration': 1}, {'end': 2304.399, 'text': 'Now, can you see that Selenium IDE? Download latest released version from addons.mozilla.org.', 'start': 2295.495, 'duration': 8.904}, {'end': 2309.541, 'text': "So you're supposed to get IDE from this link and not through the menu here.", 'start': 2304.419, 'duration': 5.122}, {'end': 2310.682, 'text': 'Click here.', 'start': 2310.222, 'duration': 0.46}, {'end': 2313.164, 'text': 'It says Add to Firefox.', 'start': 2311.643, 'duration': 1.521}, {'end': 2316.987, 'text': "I already have it, so I'm not gonna click on Add to Firefox.", 'start': 2313.404, 'duration': 3.583}], 'summary': 'Download selenium ide from addons.mozilla.org, not through the menu.', 'duration': 30.536, 'max_score': 2286.451, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/5FUdrBq-WFo/pics/5FUdrBq-WFo2286451.jpg'}, {'end': 2380.848, 'src': 'heatmap', 'start': 2286.451, 'weight': 0.868, 'content': [{'end': 2293.794, 'text': 'Now, go to Download here, and you might just have to scroll down a bit to find IDE.', 'start': 2286.451, 'duration': 7.343}, {'end': 2295.475, 'text': "Okay, it's right here.", 'start': 2294.475, 'duration': 1}, {'end': 2304.399, 'text': 'Now, can you see that Selenium IDE? Download latest released version from addons.mozilla.org.', 'start': 2295.495, 'duration': 8.904}, {'end': 2309.541, 'text': "So you're supposed to get IDE from this link and not through the menu here.", 'start': 2304.419, 'duration': 5.122}, {'end': 2310.682, 'text': 'Click here.', 'start': 2310.222, 'duration': 0.46}, {'end': 2313.164, 'text': 'It says Add to Firefox.', 'start': 2311.643, 'duration': 1.521}, {'end': 2316.987, 'text': "I already have it, so I'm not gonna click on Add to Firefox.", 'start': 2313.404, 'duration': 3.583}, {'end': 2321.309, 'text': 'If you want to get Selenium IDE in your Firefox, just click on this button.', 'start': 2317.347, 'duration': 3.962}, {'end': 2327.073, 'text': "It might ask you to restart Firefox, Restart, and you'll get an icon looking like this.", 'start': 2321.85, 'duration': 5.223}, {'end': 2330.555, 'text': "Can you see here? That's Selenium IDE.", 'start': 2327.213, 'duration': 3.342}, {'end': 2333.197, 'text': "Now what I'm going to do is I'm gonna click on it.", 'start': 2331.196, 'duration': 2.001}, {'end': 2335.699, 'text': 'A plugin window will get opened up.', 'start': 2333.898, 'duration': 1.801}, {'end': 2340.355, 'text': "So that's exactly what we just saw inside the slide.", 'start': 2336.71, 'duration': 3.645}, {'end': 2349.083, 'text': "This is another window, it's a plugin for Firefox, okay? you have this record button which is already enabled.", 'start': 2341.116, 'duration': 7.967}, {'end': 2352.564, 'text': 'If you can read it now recording, click to stop recording.', 'start': 2349.103, 'duration': 3.461}, {'end': 2360.206, 'text': "That means whatever you'll do on your Firefox browser, this tool or this plugin is going to record it in steps.", 'start': 2352.644, 'duration': 7.562}, {'end': 2362.647, 'text': 'And then these are the buttons to play them.', 'start': 2360.786, 'duration': 1.861}, {'end': 2367.208, 'text': "So what I'm going to do is I'll pull it down, okay, I'll just minimize it.", 'start': 2363.187, 'duration': 4.021}, {'end': 2371.689, 'text': "We'll do something on Firefox and let's see what gets recorded here.", 'start': 2367.568, 'duration': 4.121}, {'end': 2375.03, 'text': "So let's say I'm gonna open Amazon.", 'start': 2372.089, 'duration': 2.941}, {'end': 2380.848, 'text': "Okay, now I'm opening Amazon, and then let's say I'm going to today's deals.", 'start': 2375.745, 'duration': 5.103}], 'summary': 'Downloading and installing selenium ide in firefox, then demonstrating its features.', 'duration': 94.397, 'max_score': 2286.451, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/5FUdrBq-WFo/pics/5FUdrBq-WFo2286451.jpg'}, {'end': 2608.339, 'src': 'embed', 'start': 2552.369, 'weight': 2, 'content': [{'end': 2556.492, 'text': 'So it records and it plays back the recorded steps.', 'start': 2552.369, 'duration': 4.123}, {'end': 2558.454, 'text': "That's what IDE is about.", 'start': 2557.013, 'duration': 1.441}, {'end': 2564.989, 'text': "Now there's more to it, all right? You just saw in the slide that we can export the test cases.", 'start': 2559.505, 'duration': 5.484}, {'end': 2568.452, 'text': 'If you want to save the test case, you can save the test case.', 'start': 2565.47, 'duration': 2.982}, {'end': 2570.534, 'text': 'You can save it as also.', 'start': 2568.972, 'duration': 1.562}, {'end': 2571.935, 'text': 'You can do that on your own.', 'start': 2570.714, 'duration': 1.221}, {'end': 2574.697, 'text': "Let's understand the export feature.", 'start': 2572.575, 'duration': 2.122}, {'end': 2577.619, 'text': "That's export test case as.", 'start': 2575.578, 'duration': 2.041}, {'end': 2579.08, 'text': 'Just look at the option.', 'start': 2578.099, 'duration': 0.981}, {'end': 2581.842, 'text': 'Take a few seconds to read these options.', 'start': 2579.641, 'duration': 2.201}, {'end': 2587.667, 'text': 'So it is providing support for C sharp, Java, Python, Ruby.', 'start': 2583.023, 'duration': 4.644}, {'end': 2595.715, 'text': 'I will be telling you about Selenium WebDriver, along with TestNG and Java, right?', 'start': 2588.533, 'duration': 7.182}, {'end': 2599.816, 'text': "So I'm gonna use Java, I'm gonna use Selenium WebDriver and I'm gonna use TestNG.", 'start': 2595.755, 'duration': 4.061}, {'end': 2604.497, 'text': "Let's say I want these steps in that language format.", 'start': 2600.376, 'duration': 4.121}, {'end': 2608.339, 'text': 'I will use this option, Java TestNG and WebDriver.', 'start': 2605.118, 'duration': 3.221}], 'summary': 'Ide records and plays back steps, supports c#, java, python, ruby, selenium webdriver, and testng.', 'duration': 55.97, 'max_score': 2552.369, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/5FUdrBq-WFo/pics/5FUdrBq-WFo2552369.jpg'}], 'start': 2015.124, 'title': 'Selenium: components, deprecated features, and ide features', 'summary': 'Covers selenium components - ide, rc, webdriver, and grid - highlighting the deprecation of rc in selenium 3 and its transition to a legacy package. it also discusses selenium ide features such as recording, exporting test cases, and provides a demonstration of its usage.', 'chapters': [{'end': 2162.103, 'start': 2015.124, 'title': 'Selenium: components and deprecated features', 'summary': 'Discusses the components of selenium - ide, rc, webdriver, and grid - and highlights the deprecation of rc in selenium 3, with its transition to a legacy package due to its drawbacks and limited browser compatibility.', 'duration': 146.979, 'highlights': ['Selenium 3 has deprecated RC and moved it to a legacy package due to its drawbacks and limited browser compatibility.', 'Selenium suite of tools comprises IDE, RC, WebDriver, and Grid, with RC being deprecated in Selenium 3, transitioning to a legacy package.', 'Selenium IDE is a Firefox plugin used for creating and executing test cases, recording and playing back user interactions with the web browser.', 'Selenium IDE records and plays back user interactions with the web browser, making it a record and play tool for creating and executing test cases.']}, {'end': 2645.974, 'start': 2162.723, 'title': 'Selenium ide features and demo', 'summary': 'Discusses the features of selenium ide, including recording and exporting test cases, and provides a demonstration of how to use selenium ide to record and play back steps, as well as export test cases in various programming languages.', 'duration': 483.251, 'highlights': ['Selenium IDE allows for recording and playing back test case steps, providing a convenient way to automate testing processes.', 'The export feature of Selenium IDE supports various programming languages such as C sharp, Java, Python, and Ruby, providing flexibility in saving test cases in different language formats.', 'Instructions on obtaining Selenium IDE are provided, emphasizing the need to download it from the official Selenium website rather than through other sources.', 'The process of obtaining and installing Selenium IDE from the official source is explained in detail, highlighting the steps to follow for Firefox browser installation.', 'Selenium IDEβs ability to export test cases is showcased, with a demonstration of saving test cases in Java TestNG and WebDriver formats.']}], 'duration': 630.85, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/5FUdrBq-WFo/pics/5FUdrBq-WFo2015124.jpg', 'highlights': ['Selenium suite includes IDE, RC, WebDriver, and Grid, with RC deprecated in Selenium 3', 'Selenium IDE records and plays back user interactions, used for creating and executing test cases', 'Selenium IDE allows recording and playing back test case steps, automating testing processes', 'Selenium IDE supports exporting test cases in C#, Java, Python, and Ruby formats', 'Selenium IDE should be obtained from the official Selenium website for installation']}, {'end': 3233.437, 'segs': [{'end': 2675.019, 'src': 'embed', 'start': 2646.314, 'weight': 7, 'content': [{'end': 2656.986, 'text': "I did not give any extension to this file, and if you open it, That's a whole Java file using Java, Selenium WebDriver, and TestNG.", 'start': 2646.314, 'duration': 10.672}, {'end': 2665.61, 'text': 'These at the red sign, if you see here and here, okay, these are TestNG annotations.', 'start': 2657.526, 'duration': 8.084}, {'end': 2675.019, 'text': "So you won't understand the annotations as of now because we haven't gone through TestNG, but this is coming because I chose TestNG as the option.", 'start': 2666.528, 'duration': 8.491}], 'summary': 'The file contains a java program using selenium webdriver and testng annotations.', 'duration': 28.705, 'max_score': 2646.314, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/5FUdrBq-WFo/pics/5FUdrBq-WFo2646314.jpg'}, {'end': 2765.608, 'src': 'embed', 'start': 2727.012, 'weight': 0, 'content': [{'end': 2731.014, 'text': "But if you just rely on these scripts, you can't learn Selenium.", 'start': 2727.012, 'duration': 4.002}, {'end': 2734.97, 'text': "Plus, there are other things also which you can't do with Selenium.", 'start': 2731.929, 'duration': 3.041}, {'end': 2739.271, 'text': "You can't do your regression testing or the entire functional testing.", 'start': 2734.99, 'duration': 4.281}, {'end': 2745.493, 'text': 'Okay, you can run small scripts, you can create small scripts, but you cannot do a full-fledged testing here.', 'start': 2739.651, 'duration': 5.842}, {'end': 2754.756, 'text': "And it's clearly written, even if you go to the documentation on selenium-hq.org, it says that it's basically for prototyping and syntaxing.", 'start': 2746.333, 'duration': 8.423}, {'end': 2759.538, 'text': "Don't prefer it for a full-fledged testing, right? Plus, there are other things also.", 'start': 2754.796, 'duration': 4.742}, {'end': 2760.838, 'text': "Let's say you want to do looping.", 'start': 2759.598, 'duration': 1.24}, {'end': 2764.267, 'text': 'Looping as in you want to perform something again and again.', 'start': 2761.525, 'duration': 2.742}, {'end': 2765.608, 'text': "You can't do it with Selenium.", 'start': 2764.407, 'duration': 1.201}], 'summary': 'Selenium is limited for full-fledged testing; not suitable for regression or functional testing. also lacks capabilities like looping.', 'duration': 38.596, 'max_score': 2727.012, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/5FUdrBq-WFo/pics/5FUdrBq-WFo2727012.jpg'}, {'end': 2881.462, 'src': 'embed', 'start': 2853.71, 'weight': 6, 'content': [{'end': 2858.554, 'text': "Test cases can be exported to different programming language, as you've already seen,", 'start': 2853.71, 'duration': 4.844}, {'end': 2861.777, 'text': "and I think that's the major thing that you should know about IDE.", 'start': 2858.554, 'duration': 3.223}, {'end': 2865.66, 'text': "Enables learning of Selenium's script syntax.", 'start': 2862.277, 'duration': 3.383}, {'end': 2872.025, 'text': 'So like I mentioned, when it comes to syntaxing or prototyping, that time you can use Selenium IDE.', 'start': 2866.24, 'duration': 5.785}, {'end': 2876.618, 'text': "but when we get to WebDriver, believe me, you'll forget IDE.", 'start': 2872.935, 'duration': 3.683}, {'end': 2878.539, 'text': "You'll forget IDE.", 'start': 2877.519, 'duration': 1.02}, {'end': 2881.462, 'text': "Initially. it's okay to just understand.", 'start': 2879.44, 'duration': 2.022}], 'summary': "Selenium ide enables exporting test cases to different programming languages and supports learning selenium's script syntax.", 'duration': 27.752, 'max_score': 2853.71, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/5FUdrBq-WFo/pics/5FUdrBq-WFo2853710.jpg'}, {'end': 2931.831, 'src': 'embed', 'start': 2900.389, 'weight': 2, 'content': [{'end': 2901.569, 'text': 'Let me complete this as well.', 'start': 2900.389, 'duration': 1.18}, {'end': 2904.211, 'text': 'Supports only Mozilla Firefox.', 'start': 2902.23, 'duration': 1.981}, {'end': 2909.635, 'text': "So that's a plugin for Firefox and it doesn't come as a plugin for any other browser.", 'start': 2904.411, 'duration': 5.224}, {'end': 2913.157, 'text': 'Not suitable for dynamic web applications.', 'start': 2910.335, 'duration': 2.822}, {'end': 2920.002, 'text': 'Why is it not suitable? See, what is dynamic? Dynamic means when something can change at any point of time.', 'start': 2913.577, 'duration': 6.425}, {'end': 2921.422, 'text': "It's not static.", 'start': 2920.602, 'duration': 0.82}, {'end': 2923.604, 'text': "It's not gonna remain the same all the time.", 'start': 2921.503, 'duration': 2.101}, {'end': 2925.685, 'text': "It's gonna change dynamically.", 'start': 2924.004, 'duration': 1.681}, {'end': 2931.831, 'text': 'Dynamic thing could be the entire page or it could be a few elements of the page right?', 'start': 2927.045, 'duration': 4.786}], 'summary': 'Plugin supports only mozilla firefox, not suitable for dynamic web applications.', 'duration': 31.442, 'max_score': 2900.389, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/5FUdrBq-WFo/pics/5FUdrBq-WFo2900389.jpg'}, {'end': 3006.485, 'src': 'embed', 'start': 2977.679, 'weight': 4, 'content': [{'end': 2980.44, 'text': 'No support for programming logic or a language.', 'start': 2977.679, 'duration': 2.761}, {'end': 2985.041, 'text': "As in you can't, you know, it automatically, you can't write your own scripts.", 'start': 2980.88, 'duration': 4.161}, {'end': 2988.362, 'text': 'You can export scripts, but you cannot write your own scripts.', 'start': 2985.441, 'duration': 2.921}, {'end': 2989.302, 'text': "It's an IDE.", 'start': 2988.482, 'duration': 0.82}, {'end': 2992.963, 'text': "It's not a programming interface, okay? It's an IDE.", 'start': 2989.802, 'duration': 3.161}, {'end': 2996.072, 'text': 'Data-driven testing, not possible.', 'start': 2994.11, 'duration': 1.962}, {'end': 3001.039, 'text': 'That I mentioned that you cannot do testing when you have to provide a data set.', 'start': 2996.173, 'duration': 4.866}, {'end': 3006.485, 'text': "Let's say you want to give 100 user IDs and passwords and you want to test a login form.", 'start': 3001.079, 'duration': 5.406}], 'summary': 'Ide does not support programming logic or data-driven testing', 'duration': 28.806, 'max_score': 2977.679, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/5FUdrBq-WFo/pics/5FUdrBq-WFo2977679.jpg'}, {'end': 3117.664, 'src': 'embed', 'start': 3088.891, 'weight': 5, 'content': [{'end': 3090.352, 'text': "Let's go back to the presentation.", 'start': 3088.891, 'duration': 1.461}, {'end': 3094.015, 'text': 'No centralized maintenance.', 'start': 3092.254, 'duration': 1.761}, {'end': 3098.978, 'text': 'So we do not have anything that maintains these elements.', 'start': 3094.375, 'duration': 4.603}, {'end': 3101.06, 'text': 'No centralized location.', 'start': 3099.299, 'duration': 1.761}, {'end': 3109.286, 'text': "Now when I'll be telling you about finding elements, I'll be also talking about HTML document, DOM, which is called data object model.", 'start': 3101.64, 'duration': 7.646}, {'end': 3114.642, 'text': 'which actually is the entire model of the objects of the webpage.', 'start': 3110.72, 'duration': 3.922}, {'end': 3117.664, 'text': "So we'll talk about those things in detail later.", 'start': 3115.083, 'duration': 2.581}], 'summary': 'No centralized maintenance for webpage elements, but will discuss html document and dom later.', 'duration': 28.773, 'max_score': 3088.891, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/5FUdrBq-WFo/pics/5FUdrBq-WFo3088891.jpg'}], 'start': 2646.314, 'title': 'Limitations of selenium ide', 'summary': 'Delves into the drawbacks of selenium ide, highlighting its limited capabilities such as restricted browser support, lack of programming logic, and unsuitability for data-driven testing and dynamic web applications.', 'chapters': [{'end': 2900.349, 'start': 2646.314, 'title': 'Selenium ide features and limitations', 'summary': 'Discusses the limitations of selenium ide, emphasizing its use for prototyping and syntaxing, and its inability to perform full-fledged testing, data-driven testing, looping, and taking screenshots.', 'duration': 254.035, 'highlights': ['Selenium IDE is suitable for prototyping and syntaxing, but inadequate for full-fledged testing, data-driven testing, looping, and taking screenshots, as highlighted by the speaker.', 'TestNG annotations and Java concepts are utilized in the provided Java file, demonstrating the integration of TestNG and Selenium WebDriver in a full-fledged script.', 'The speaker advises against relying solely on Selenium IDE for learning, as it hinders the comprehensive understanding of Selenium and its capabilities, specifically for regression testing and entire functional testing.', 'The IDE allows for editing and creating test cases, executing test suites, debugging and enhancing test cases, and exporting test cases to different programming languages, providing flexibility and functionality for users.', "The chapter emphasizes the limited use of Selenium IDE and its importance mainly for learning Selenium's script syntax, suggesting that users should transition to WebDriver for comprehensive testing purposes."]}, {'end': 3233.437, 'start': 2900.389, 'title': 'Drawbacks of selenium ide', 'summary': 'Discusses the limitations of selenium ide, including its compatibility with only mozilla firefox, unsuitability for dynamic web applications, inability to support programming logic, data-driven testing, and centralized maintenance of objects and elements.', 'duration': 333.048, 'highlights': ['Selenium IDE only supports Mozilla Firefox, limiting its usage to this specific browser.', 'The tool is not suitable for dynamic web applications as it cannot handle dynamic elements effectively using pre-recorded scripts.', 'No support for programming logic or language, preventing users from writing their own scripts and conducting data-driven testing.', 'The tool lacks centralized maintenance of objects and elements, hindering efficient management of elements on a web page.']}], 'duration': 587.123, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/5FUdrBq-WFo/pics/5FUdrBq-WFo2646314.jpg', 'highlights': ['Selenium IDE is suitable for prototyping but inadequate for full-fledged testing, data-driven testing, looping, and taking screenshots.', 'Selenium IDE only supports Mozilla Firefox, limiting its usage to this specific browser.', 'The tool is not suitable for dynamic web applications as it cannot handle dynamic elements effectively using pre-recorded scripts.', 'The speaker advises against relying solely on Selenium IDE for learning, hindering the comprehensive understanding of Selenium and its capabilities.', 'No support for programming logic or language, preventing users from writing their own scripts and conducting data-driven testing.', 'The tool lacks centralized maintenance of objects and elements, hindering efficient management of elements on a web page.', "The chapter emphasizes the limited use of Selenium IDE and its importance mainly for learning Selenium's script syntax, suggesting that users should transition to WebDriver for comprehensive testing purposes.", 'TestNG annotations and Java concepts are utilized in the provided Java file, demonstrating the integration of TestNG and Selenium WebDriver in a full-fledged script.', 'The IDE allows for editing and creating test cases, executing test suites, debugging and enhancing test cases, and exporting test cases to different programming languages, providing flexibility and functionality for users.']}, {'end': 4096.751, 'segs': [{'end': 3289.19, 'src': 'embed', 'start': 3256.952, 'weight': 0, 'content': [{'end': 3267.96, 'text': "Now what will I do? I will read every paragraph first and then I'll explain it, okay? All right, Jason Huggins, realized.", 'start': 3256.952, 'duration': 11.008}, {'end': 3272.203, 'text': 'Now before I read this line, let me introduce Jason Huggins to you.', 'start': 3268.38, 'duration': 3.823}, {'end': 3277.459, 'text': 'He was the developer of the first Selenium JavaScript.', 'start': 3273.135, 'duration': 4.324}, {'end': 3279.221, 'text': 'Jason Huggins.', 'start': 3277.459, 'duration': 1.762}, {'end': 3289.19, 'text': 'okay?. Jason Huggins realized that the repetitious manual testing of their application was becoming more and more inefficient.', 'start': 3279.221, 'duration': 9.969}], 'summary': 'Jason huggins, developer of first selenium javascript, realized inefficiency of manual testing.', 'duration': 32.238, 'max_score': 3256.952, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/5FUdrBq-WFo/pics/5FUdrBq-WFo3256952.jpg'}, {'end': 3391.922, 'src': 'embed', 'start': 3365.204, 'weight': 1, 'content': [{'end': 3369.307, 'text': 'He made it open source, which was later renamed as Selenium Core.', 'start': 3365.204, 'duration': 4.103}, {'end': 3374.71, 'text': 'So this JavaScript test runner actually became Selenium Core.', 'start': 3369.947, 'duration': 4.763}, {'end': 3380.034, 'text': 'So, if anybody asks you, what was the very first thing that came into existence?', 'start': 3374.77, 'duration': 5.264}, {'end': 3388.159, 'text': "Selenium Core was the first thing that came into existence in Selenium's life, or Selenium's life cycle.", 'start': 3380.034, 'duration': 8.125}, {'end': 3391.922, 'text': 'It was not the RC server, it was Selenium Core.', 'start': 3388.82, 'duration': 3.102}], 'summary': "Selenium core, originally a javascript test runner, was the first thing to come into existence in selenium's life cycle.", 'duration': 26.718, 'max_score': 3365.204, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/5FUdrBq-WFo/pics/5FUdrBq-WFo3365204.jpg'}, {'end': 3462.689, 'src': 'embed', 'start': 3426.207, 'weight': 3, 'content': [{'end': 3428.927, 'text': "Okay, now let's read the next paragraph.", 'start': 3426.207, 'duration': 2.72}, {'end': 3431.568, 'text': 'The same origin policy issue.', 'start': 3429.488, 'duration': 2.08}, {'end': 3435.989, 'text': 'It prohibits JavaScript code, understand it.', 'start': 3432.268, 'duration': 3.721}, {'end': 3446.571, 'text': 'It prohibits JavaScript code from accessing elements from a domain that is different from where it was launched.', 'start': 3436.189, 'duration': 10.382}, {'end': 3448.611, 'text': "I'll read it again.", 'start': 3447.911, 'duration': 0.7}, {'end': 3462.689, 'text': 'Same origin policy prohibits JavaScript code from accessing elements from a domain that is different from where it was launched.', 'start': 3449.585, 'duration': 13.104}], 'summary': 'The same origin policy prohibits javascript code from accessing elements from a different domain.', 'duration': 36.482, 'max_score': 3426.207, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/5FUdrBq-WFo/pics/5FUdrBq-WFo3426207.jpg'}, {'end': 3774.278, 'src': 'embed', 'start': 3749.757, 'weight': 2, 'content': [{'end': 3760.544, 'text': 'This is the reason why, prior to Selenium, RC Testers needed to install local copies of Selenium Core, a JavaScript program,', 'start': 3749.757, 'duration': 10.787}, {'end': 3766.967, 'text': 'and the web server containing the web application being tested so that they belong to the same domain.', 'start': 3760.544, 'duration': 6.423}, {'end': 3774.278, 'text': 'So what were these testers required to do? He made it open source, Jason made it open source, Selenium Core.', 'start': 3767.973, 'duration': 6.305}], 'summary': 'Selenium core was made open source to simplify testing process for rc testers.', 'duration': 24.521, 'max_score': 3749.757, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/5FUdrBq-WFo/pics/5FUdrBq-WFo3749757.jpg'}, {'end': 3816.101, 'src': 'embed', 'start': 3793.992, 'weight': 4, 'content': [{'end': 3803.996, 'text': 'testers using Selenium Core had to install the whole application under test and the web server on their local computers because of the restrictions imposed by same origin policy.', 'start': 3793.992, 'duration': 10.004}, {'end': 3811.339, 'text': "So another thought work engineer, that's what I said in the beginning, there is a whole team involved.", 'start': 3804.716, 'duration': 6.623}, {'end': 3816.101, 'text': "There's not just one person, there's a whole team involved behind the Selenium generations.", 'start': 3811.399, 'duration': 4.702}], 'summary': 'Testers using selenium core faced restrictions due to same origin policy, highlighting the teamwork involved.', 'duration': 22.109, 'max_score': 3793.992, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/5FUdrBq-WFo/pics/5FUdrBq-WFo3793992.jpg'}], 'start': 3233.457, 'title': 'Selenium core, same origin policy, and selenium rc', 'summary': 'Covers the inception and evolution of selenium core, the significance of the same origin policy in javascript access across domains, and the development of selenium remote control (rc) to overcome policy restrictions, along with its drawbacks in speed and communication.', 'chapters': [{'end': 3462.689, 'start': 3233.457, 'title': 'Selenium core and same origin policy', 'summary': "Explains the inception of selenium core as the first thing in selenium's life cycle, its evolution from a javascript program created by jason huggins, its renaming to selenium core, and the significance of the same origin policy issue in prohibiting javascript code from accessing elements from a different domain.", 'duration': 229.232, 'highlights': ["Jason Huggins created the JavaScript program, Selenium Core, to automate browser actions in response to inefficient manual testing, marking its significance as the first thing in Selenium's life cycle.", "Selenium Core, initially known as JavaScript Test Runner, was made open source and became the foundation of Selenium's automation capabilities, showcasing its evolution and impact.", 'The same origin policy issue was explained, highlighting its role in restricting JavaScript code from accessing elements from a different domain, emphasizing a key limitation in web automation.']}, {'end': 4096.751, 'start': 3463.469, 'title': 'Understanding same origin policy and selenium rc', 'summary': 'Explains the concept of same origin policy, its impact on javascript access across domains, and the development of selenium remote control (rc) to overcome the policy restrictions, including the drawbacks of rc in terms of speed and communication.', 'duration': 633.282, 'highlights': ['Selenium Remote Control (RC) was developed to overcome the restrictions imposed by the same origin policy, allowing Selenium Core and the web application under test to be tricked into appearing from the same domain using an HTTP proxy.', "The chapter explains the same origin policy, which restricts JavaScript from accessing elements from different domains, and its impact on Selenium Core's functionality, leading to the development of Selenium RC.", 'Selenium Core faced drawbacks due to the same origin policy, which required local installation of Selenium Core and the web server for the application under test, making it impractical in certain scenarios.']}], 'duration': 863.294, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/5FUdrBq-WFo/pics/5FUdrBq-WFo3233457.jpg', 'highlights': ["Jason Huggins created Selenium Core to automate browser actions, marking its significance as the first thing in Selenium's life cycle.", "Selenium Core, initially known as JavaScript Test Runner, became the foundation of Selenium's automation capabilities, showcasing its evolution and impact.", 'Selenium Remote Control (RC) was developed to overcome the same origin policy restrictions, allowing Selenium Core and the web application under test to appear from the same domain using an HTTP proxy.', 'The same origin policy issue was explained, highlighting its role in restricting JavaScript code from accessing elements from a different domain, emphasizing a key limitation in web automation.', 'Selenium Core faced drawbacks due to the same origin policy, requiring local installation of Selenium Core and the web server for the application under test, making it impractical in certain scenarios.']}, {'end': 4945.065, 'segs': [{'end': 4223.509, 'src': 'embed', 'start': 4169.996, 'weight': 3, 'content': [{'end': 4179.6, 'text': 'Now when you send the instructions, server will get started, your instruction will go to Selenium Core who is sitting inside your browser.', 'start': 4169.996, 'duration': 9.604}, {'end': 4184.939, 'text': 'Selenium Core will then send the instruction to your browser.', 'start': 4180.537, 'duration': 4.402}, {'end': 4191.943, 'text': 'So there was no direct communication between your script and the browser or the web application.', 'start': 4185.42, 'duration': 6.523}, {'end': 4196.826, 'text': 'Two more things are in between, your RC server and your Selenium Core.', 'start': 4192.624, 'duration': 4.202}, {'end': 4199.607, 'text': 'This thing is making it slow.', 'start': 4197.446, 'duration': 2.161}, {'end': 4206.602, 'text': 'All right, drawback is that every communication with the RC server is time consuming and hence RC is slow.', 'start': 4200.459, 'duration': 6.143}, {'end': 4211.324, 'text': "Now that I have explained the diagram also, I believe you've got this point.", 'start': 4206.662, 'duration': 4.662}, {'end': 4217.786, 'text': 'From Selenium version three onwards, RC has been deprecated and moved to a legacy package.', 'start': 4212.224, 'duration': 5.562}, {'end': 4219.927, 'text': "Let's go to the next slide.", 'start': 4218.847, 'duration': 1.08}, {'end': 4223.509, 'text': 'My favorite tool and most widely used, WebDriver.', 'start': 4220.087, 'duration': 3.422}], 'summary': 'Selenium core slows down communication with rc server, leading to slowness. selenium version three deprecated rc and moved to a legacy package. webdriver is the most widely used tool.', 'duration': 53.513, 'max_score': 4169.996, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/5FUdrBq-WFo/pics/5FUdrBq-WFo4169996.jpg'}, {'end': 4501.459, 'src': 'embed', 'start': 4467.923, 'weight': 1, 'content': [{'end': 4472.164, 'text': 'The other tools must also be using some technique to find these elements.', 'start': 4467.923, 'duration': 4.241}, {'end': 4473.764, 'text': 'Then only they can automate them.', 'start': 4472.204, 'duration': 1.56}, {'end': 4490.608, 'text': "In Selenium, we've got eight element locator techniques, which means in eight ways I can identify these elements and then I can act upon them.", 'start': 4474.704, 'duration': 15.904}, {'end': 4493.553, 'text': "Let's get back to the slideshow now.", 'start': 4491.952, 'duration': 1.601}, {'end': 4499.498, 'text': 'It is saying test cases are created and executed using elements.', 'start': 4494.374, 'duration': 5.124}, {'end': 4501.459, 'text': 'So now you know what elements are.', 'start': 4499.718, 'duration': 1.741}], 'summary': 'Selenium offers 8 element locator techniques for automation.', 'duration': 33.536, 'max_score': 4467.923, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/5FUdrBq-WFo/pics/5FUdrBq-WFo4467923.jpg'}, {'end': 4593.211, 'src': 'embed', 'start': 4563.211, 'weight': 6, 'content': [{'end': 4567.574, 'text': "Selenium IDE supports only IDE, doesn't have programming interface.", 'start': 4563.211, 'duration': 4.363}, {'end': 4571.097, 'text': 'So when we were going through IDE, you just saw that.', 'start': 4567.975, 'duration': 3.122}, {'end': 4579.163, 'text': "We don't have any programming interface, as in I cannot call any interface or any function or any class within that.", 'start': 4571.537, 'duration': 7.626}, {'end': 4582.465, 'text': "But yes, of course, I've got a development environment there.", 'start': 4579.503, 'duration': 2.962}, {'end': 4586.088, 'text': 'Fast as it interacts with browser directly.', 'start': 4583.286, 'duration': 2.802}, {'end': 4593.211, 'text': 'Now with WebDriver, we got rid of RC server, we got rid of your core as well.', 'start': 4587.006, 'duration': 6.205}], 'summary': 'Selenium ide supports only ide, no programming interface. webdriver removes rc server and core.', 'duration': 30, 'max_score': 4563.211, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/5FUdrBq-WFo/pics/5FUdrBq-WFo4563211.jpg'}, {'end': 4642.04, 'src': 'embed', 'start': 4614.342, 'weight': 0, 'content': [{'end': 4617.725, 'text': 'Selenium web driver makes direct calls to the browser.', 'start': 4614.342, 'duration': 3.383}, {'end': 4623.63, 'text': 'Initially, this point is difficult to understand because it is using terms.', 'start': 4618.886, 'duration': 4.744}, {'end': 4630.036, 'text': "if you've just heard of Selenium or if you've just decided to work with Selenium, you might not have heard about them.", 'start': 4623.63, 'duration': 6.406}, {'end': 4634.677, 'text': 'Each browser has its own driver.', 'start': 4631.295, 'duration': 3.382}, {'end': 4638.018, 'text': 'What does this mean? On which the application runs.', 'start': 4634.897, 'duration': 3.121}, {'end': 4642.04, 'text': 'Selenium WebDriver makes direct calls to the browser.', 'start': 4638.919, 'duration': 3.121}], 'summary': 'Selenium web driver makes direct calls to the browser, each browser has its own driver.', 'duration': 27.698, 'max_score': 4614.342, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/5FUdrBq-WFo/pics/5FUdrBq-WFo4614342.jpg'}, {'end': 4869.791, 'src': 'heatmap', 'start': 4758.141, 'weight': 2, 'content': [{'end': 4762.344, 'text': "So we don't want to learn about that protocol, what protocol it follows, no.", 'start': 4758.141, 'duration': 4.203}, {'end': 4770.611, 'text': "What we want to know is that there's a server which I need to run before sending the instructions.", 'start': 4762.864, 'duration': 7.747}, {'end': 4774.054, 'text': 'So for that, I need to have this driver.', 'start': 4771.552, 'duration': 2.502}, {'end': 4779.186, 'text': "So I'll talk about the major ones for Windows.", 'start': 4775.643, 'duration': 3.543}, {'end': 4782.429, 'text': "So let's say I'm working on Chrome.", 'start': 4779.767, 'duration': 2.662}, {'end': 4786.533, 'text': 'So for Chrome, I have got an executable file.', 'start': 4783.21, 'duration': 3.323}, {'end': 4788.835, 'text': "See, what are servers? They're standalone files.", 'start': 4786.573, 'duration': 2.262}, {'end': 4791.377, 'text': 'And what are standalone files? Executable files.', 'start': 4788.955, 'duration': 2.422}, {'end': 4796.622, 'text': 'So for this, I have got a ChromeDriver.exe.', 'start': 4791.938, 'duration': 4.684}, {'end': 4800.205, 'text': "That's an executable file which you can download.", 'start': 4797.202, 'duration': 3.003}, {'end': 4817.478, 'text': 'For Firefox, prior to version three of Selenium, we were not supposed to download any driver for Firefox because that came inbuilt with Selenium jars.', 'start': 4805.55, 'duration': 11.928}, {'end': 4819.699, 'text': 'So that was not required.', 'start': 4818.298, 'duration': 1.401}, {'end': 4827.505, 'text': 'But Selenium three onwards, we need this driver called GecoDriver.exe.', 'start': 4820.18, 'duration': 7.325}, {'end': 4832.088, 'text': 'We need to download it if we want to run our test cases on Firefox.', 'start': 4827.865, 'duration': 4.223}, {'end': 4835.587, 'text': 'Similarly for Internet Explorer.', 'start': 4833.303, 'duration': 2.284}, {'end': 4844.022, 'text': "Okay, we've got these drivers.", 'start': 4841.338, 'duration': 2.684}, {'end': 4848.913, 'text': 'It is called IEDriver, IEDriver.exe.', 'start': 4845.009, 'duration': 3.904}, {'end': 4853.297, 'text': "And if you want to see all these drivers, I'll tell you where you can find them.", 'start': 4849.353, 'duration': 3.944}, {'end': 4860.823, 'text': 'So if you want to work with your Selenium scripts, along with the Selenium charts, you also want these drivers.', 'start': 4854.057, 'duration': 6.766}, {'end': 4869.791, 'text': 'So what you can do is go to Chrome, open up SeleniumHQ.org, okay? SeleniumHQ.org.', 'start': 4861.344, 'duration': 8.447}], 'summary': 'Different browsers require specific drivers for selenium scripts.', 'duration': 64.241, 'max_score': 4758.141, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/5FUdrBq-WFo/pics/5FUdrBq-WFo4758141.jpg'}], 'start': 4097.051, 'title': 'Selenium core communication and webdriver methods', 'summary': 'Covers selenium core communication, including server, core, and browser, and the drawbacks and deprecation of rc in version three. it also discusses the use of selenium webdriver to create and execute test cases using object locators and webdriver methods, emphasizing the importance of finding elements and the availability and usage of browser-specific drivers for chrome, firefox, and internet explorer.', 'chapters': [{'end': 4223.509, 'start': 4097.051, 'title': 'Selenium core communication', 'summary': 'Explains the process of selenium core communication, involving server, core, and browser, highlighting the drawbacks and deprecation of rc in version three.', 'duration': 126.458, 'highlights': ['Selenium Core communication involves server first running the server, then sending instructions to core, and core sending instructions to the browser.', 'RC server communication is time-consuming, making RC slow, leading to its deprecation in Selenium version three.', 'Selenium Core communication involves server, Selenium Core, and browser, with the drawback being slow communication with the RC server.']}, {'end': 4945.065, 'start': 4224.71, 'title': 'Selenium webdriver: elements, object locators, and webdriver methods', 'summary': 'Discusses the use of selenium webdriver to create and execute test cases using object locators and webdriver methods, the importance of finding elements, and the availability and usage of browser-specific drivers for chrome, firefox, and internet explorer.', 'duration': 720.355, 'highlights': ['Selenium WebDriver has programming interface not IDE', 'Selenium WebDriver makes direct calls to the browser', 'Browser-specific drivers are required for Chrome, Firefox, and Internet Explorer', 'Different element locator techniques available in Selenium', 'Downloading browser drivers from SeleniumHQ.org']}], 'duration': 848.014, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/5FUdrBq-WFo/pics/5FUdrBq-WFo4097051.jpg', 'highlights': ['Selenium WebDriver makes direct calls to the browser', 'Different element locator techniques available in Selenium', 'Downloading browser drivers from SeleniumHQ.org', 'Selenium Core communication involves server first running the server, then sending instructions to core, and core sending instructions to the browser', 'Selenium Core communication involves server, Selenium Core, and browser, with the drawback being slow communication with the RC server', 'RC server communication is time-consuming, making RC slow, leading to its deprecation in Selenium version three', 'Selenium WebDriver has programming interface not IDE', 'Browser-specific drivers are required for Chrome, Firefox, and Internet Explorer']}, {'end': 6205.398, 'segs': [{'end': 5076.279, 'src': 'embed', 'start': 5025.25, 'weight': 1, 'content': [{'end': 5030.073, 'text': "you've got Edge, you've got Opera, so all the major browser drivers.", 'start': 5025.25, 'duration': 4.823}, {'end': 5033.294, 'text': "Okay, we're still continuing WebDriver.", 'start': 5030.853, 'duration': 2.441}, {'end': 5036.176, 'text': "These are the features which we've already gone through.", 'start': 5033.815, 'duration': 2.361}, {'end': 5037.597, 'text': "I'll just quickly read them.", 'start': 5036.196, 'duration': 1.401}, {'end': 5042.579, 'text': "Programming language, so we've got support for all the major programming languages.", 'start': 5038.297, 'duration': 4.282}, {'end': 5047.142, 'text': 'Browsers, not just these, but all the major browsers.', 'start': 5043.28, 'duration': 3.862}, {'end': 5058.11, 'text': 'Operating system Windows, all the versions, Macs, Linux, Android, Ubuntu, all major operating systems.', 'start': 5047.982, 'duration': 10.128}, {'end': 5064.033, 'text': 'overcomes limitations of Selenium 1, like file upload, download pop-ups and dialog barriers.', 'start': 5058.11, 'duration': 5.923}, {'end': 5068.815, 'text': 'This was a limitation in RSE, like file upload.', 'start': 5065.014, 'duration': 3.801}, {'end': 5076.279, 'text': "Now we can do file upload using a command called send keys in Selenium, which we'll see later.", 'start': 5069.676, 'duration': 6.603}], 'summary': 'Webdriver supports major browsers, os, and programming languages, overcoming selenium 1 limitations.', 'duration': 51.029, 'max_score': 5025.25, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/5FUdrBq-WFo/pics/5FUdrBq-WFo5025250.jpg'}, {'end': 5155.771, 'src': 'embed', 'start': 5128.986, 'weight': 8, 'content': [{'end': 5135.127, 'text': 'The only drawback that I find in Selenium WebDriver is its report generation thing.', 'start': 5128.986, 'duration': 6.141}, {'end': 5140.108, 'text': 'WebDriver cannot create any report on its own.', 'start': 5135.887, 'duration': 4.221}, {'end': 5148.389, 'text': 'We either need to automate the process using framework, for which we need to be efficient with Java, okay.', 'start': 5140.888, 'duration': 7.501}, {'end': 5155.771, 'text': 'and the next thing is that we can use TestNG along with Selenium, but WebDriver on its own cannot create a report.', 'start': 5148.389, 'duration': 7.382}], 'summary': 'Selenium webdriver lacks report generation capabilities, requiring manual or automated processes using frameworks like testng and java.', 'duration': 26.785, 'max_score': 5128.986, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/5FUdrBq-WFo/pics/5FUdrBq-WFo5128986.jpg'}, {'end': 5217.71, 'src': 'embed', 'start': 5184.431, 'weight': 0, 'content': [{'end': 5189.533, 'text': "We'll quickly go through the slide first and then I'll explain, probably I'll create a diagram for you if required.", 'start': 5184.431, 'duration': 5.102}, {'end': 5199.078, 'text': 'Selenium grid is used to run multiple test scripts, multiple, at the same time on multiple machine.', 'start': 5190.594, 'duration': 8.484}, {'end': 5202.7, 'text': "Now if you say at the same time, that means you're doing parallel testing.", 'start': 5199.638, 'duration': 3.062}, {'end': 5209.183, 'text': "Parallel execution is achieved with the help of hub node architecture, I'll come to that.", 'start': 5203.84, 'duration': 5.343}, {'end': 5217.71, 'text': 'Hub can control different test scripts on various browsers, operating system, and programming language in various nodes.', 'start': 5210.208, 'duration': 7.502}], 'summary': 'Selenium grid enables parallel testing on multiple machines and browsers.', 'duration': 33.279, 'max_score': 5184.431, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/5FUdrBq-WFo/pics/5FUdrBq-WFo5184431.jpg'}, {'end': 5553.465, 'src': 'embed', 'start': 5522.308, 'weight': 3, 'content': [{'end': 5525.169, 'text': "So that's how this entire system is created.", 'start': 5522.308, 'duration': 2.861}, {'end': 5533.392, 'text': "Now I'll explain the slide, okay? Okay, the grid is used to run multiple test scripts at the same time on multiple machines.", 'start': 5525.549, 'duration': 7.843}, {'end': 5535.273, 'text': 'I hope you now understand this line.', 'start': 5533.632, 'duration': 1.641}, {'end': 5540.915, 'text': 'Parallel execution is achieved with the help of hub node architecture.', 'start': 5536.053, 'duration': 4.862}, {'end': 5542.996, 'text': "So I've created the architecture.", 'start': 5541.235, 'duration': 1.761}, {'end': 5545.637, 'text': "That's how you run test cases parallelly.", 'start': 5543.376, 'duration': 2.261}, {'end': 5553.465, 'text': 'Hub can control different test scripts on various browsers operating systems and programming languages in various nodes.', 'start': 5546.417, 'duration': 7.048}], 'summary': 'System allows parallel execution of test cases on multiple machines using hub node architecture.', 'duration': 31.157, 'max_score': 5522.308, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/5FUdrBq-WFo/pics/5FUdrBq-WFo5522308.jpg'}, {'end': 5903.229, 'src': 'embed', 'start': 5877.389, 'weight': 5, 'content': [{'end': 5884.815, 'text': "If it doesn't give good results with 7, Now you'll have to figure out what was the reason of getting an exception or some error.", 'start': 5877.389, 'duration': 7.426}, {'end': 5885.135, 'text': 'all right?', 'start': 5884.815, 'duration': 0.32}, {'end': 5891.58, 'text': 'Otherwise, my advice please use Java 8, Selenium 3, and all the latest versions.', 'start': 5885.515, 'duration': 6.065}, {'end': 5898.906, 'text': "When it comes to IDE, as in your Eclipse, I'll just tell you about it, which one to download and which one not to download.", 'start': 5892.12, 'duration': 6.786}, {'end': 5903.229, 'text': 'Okay, so just click on here, all right? This gets downloaded.', 'start': 5899.766, 'duration': 3.463}], 'summary': 'Use java 8, selenium 3, and the latest ide for better results.', 'duration': 25.84, 'max_score': 5877.389, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/5FUdrBq-WFo/pics/5FUdrBq-WFo5877389.jpg'}, {'end': 5954.942, 'src': 'embed', 'start': 5926.896, 'weight': 4, 'content': [{'end': 5934.421, 'text': 'How to verify that your installation was correct? You need to make sure that you have got JDK and JARI folders in place.', 'start': 5926.896, 'duration': 7.525}, {'end': 5939.105, 'text': 'If you see any of them missing, that means that your installation was incorrect.', 'start': 5934.581, 'duration': 4.524}, {'end': 5941.988, 'text': "It didn't happen correctly or it didn't happen well.", 'start': 5939.666, 'duration': 2.322}, {'end': 5949.075, 'text': 'You will delete the entire thing, download the executable fresh, and then run it back again.', 'start': 5942.648, 'duration': 6.427}, {'end': 5954.942, 'text': 'But this makes sure that if you have both the folders, that means your installation was correct.', 'start': 5950.537, 'duration': 4.405}], 'summary': 'To verify correct installation, check for jdk and jari folders. missing folders indicate incorrect installation.', 'duration': 28.046, 'max_score': 5926.896, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/5FUdrBq-WFo/pics/5FUdrBq-WFo5926896.jpg'}, {'end': 6090.096, 'src': 'embed', 'start': 6062.872, 'weight': 6, 'content': [{'end': 6070.278, 'text': "What you need is selenium-server-standalone, that's the major one, and you need selenium-server.zip.", 'start': 6062.872, 'duration': 7.406}, {'end': 6074.061, 'text': 'These two will suffice all the requirement.', 'start': 6071.038, 'duration': 3.023}, {'end': 6079.125, 'text': 'This is a jar in itself, and this is a zipped file having number of jars.', 'start': 6074.801, 'duration': 4.324}, {'end': 6090.096, 'text': "Keep in mind whenever you download a zipped folder, please unzip it, otherwise you won't be able to import jars into your workspace, okay?", 'start': 6079.912, 'duration': 10.184}], 'summary': 'Selenium requires selenium-server-standalone and selenium-server.zip; unzip the folder to import jars.', 'duration': 27.224, 'max_score': 6062.872, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/5FUdrBq-WFo/pics/5FUdrBq-WFo6062872.jpg'}, {'end': 6184.695, 'src': 'embed', 'start': 6158.759, 'weight': 7, 'content': [{'end': 6164.481, 'text': 'We can work with Core Java as well, but I want you to download this one for the reason that majorly,', 'start': 6158.759, 'duration': 5.722}, {'end': 6167.823, 'text': 'the projects are written in an Enterprise Edition form.', 'start': 6164.481, 'duration': 3.342}, {'end': 6170.264, 'text': 'okay?, Rarely Core Java is used.', 'start': 6167.823, 'duration': 2.441}, {'end': 6172.807, 'text': 'So I want you to click on here.', 'start': 6171.226, 'duration': 1.581}, {'end': 6175.009, 'text': 'Now you can see the releases.', 'start': 6172.827, 'duration': 2.182}, {'end': 6176.47, 'text': 'You can see the releases.', 'start': 6175.309, 'duration': 1.161}, {'end': 6179.932, 'text': 'You can have anything from Luna to Neon.', 'start': 6177.37, 'duration': 2.562}, {'end': 6182.954, 'text': "Don't use Kepler, Juno, Indigo, Helios.", 'start': 6180.292, 'duration': 2.662}, {'end': 6184.695, 'text': 'They are older versions.', 'start': 6183.375, 'duration': 1.32}], 'summary': 'Enterprise edition preferred for java projects, avoid older versions like kepler, juno, indigo, helios.', 'duration': 25.936, 'max_score': 6158.759, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/5FUdrBq-WFo/pics/5FUdrBq-WFo6158759.jpg'}], 'start': 4945.526, 'title': 'Selenium setup and features', 'summary': 'Covers setting up selenium webdriver for different browsers, its features including support for major programming languages, overcoming limitations of selenium 1, handling pop-ups and dialog barriers, and drawbacks of report generation. it also explains selenium grid, allowing parallel testing on different operating systems and browsers, parallel test execution, setting up java, eclipse, selenium, and the process for downloading selenium 3.2 and setting up eclipse.', 'chapters': [{'end': 5155.771, 'start': 4945.526, 'title': 'Selenium webdriver setup and features', 'summary': 'Outlines the process of setting up selenium webdriver for different browsers, emphasizes its features such as support for major programming languages, overcoming limitations of selenium 1, and the ability to handle pop-ups and dialog barriers, while also highlighting the drawback of report generation.', 'duration': 210.245, 'highlights': ['Selenium WebDriver supports major programming languages such as Java, Python, C#, and Ruby.', 'WebDriver overcomes limitations of Selenium 1, enabling functionalities like file upload, download, pop-ups, and dialog barriers.', 'WebDriver lacks the capability to generate reports independently, necessitating the use of frameworks or TestNG for report generation.']}, {'end': 5443.067, 'start': 5156.972, 'title': 'Selenium grid for parallel testing', 'summary': 'Explains the concept of selenium grid, which allows running multiple test scripts simultaneously on different operating systems and browsers, achieving parallel execution with the help of hub node architecture.', 'duration': 286.095, 'highlights': ['Selenium grid is used to run multiple test scripts, multiple, at the same time on multiple machine.', 'Parallel execution is achieved with the help of hub node architecture.', 'You can run different test cases at the same time on different systems with different operating systems and browsers.']}, {'end': 5763.445, 'start': 5444.159, 'title': 'Selenium grid for parallel test execution', 'summary': 'Explains how to use selenium grid to run multiple test scripts in parallel on different environments, achieved through hub and nodes architecture and controlled by selenium hub, supporting various browsers, operating systems, and programming languages.', 'duration': 319.286, 'highlights': ['Selenium Grid allows parallel execution of test scripts on multiple machines, controlled by Selenium Hub, supporting various browsers, operating systems, and programming languages in different nodes.', 'The architecture of hub and nodes enables directing instructions through the hub to run test cases on different environments in parallel, using any supported programming language.', 'Selenium Server Standalone jar is used to start hub and nodes, and it supports both RC tests and WebDriver tests for parallel execution.', 'Creating a grid and running test cases to understand the behavior of Selenium Grid will be covered in a future class.', 'The chapter will conclude with a demonstration of creating an environment for writing Selenium scripts and a small example to showcase the potential of automation using Selenium.']}, {'end': 5975.178, 'start': 5764.246, 'title': 'Setting up java, eclipse, and selenium', 'summary': 'Provides instructions for downloading and installing java, emphasizing the importance of using java 8 and the latest versions, followed by verifying the installation and downloading eclipse and selenium jars.', 'duration': 210.932, 'highlights': ['Emphasizing the importance of using Java 8 and the latest versions for Selenium 3', 'Instructions for verifying the correct installation of Java', 'Step-by-step guidance for downloading and setting up Java, Eclipse, and Selenium jars']}, {'end': 6205.398, 'start': 5975.238, 'title': 'Selenium download and eclipse setup', 'summary': 'Outlines the process for downloading selenium 3.2 and setting up eclipse for selenium testing, emphasizing the importance of selecting the correct versions and components for a seamless integration.', 'duration': 230.16, 'highlights': ['Download the latest version of Selenium, currently 3.2, and ensure to use selenium-server-standalone and selenium-server.zip to meet all requirements.', 'Emphasize the significance of selecting the appropriate Eclipse version, particularly the Java Enterprise Edition, such as Neon, Mars, Oxygen, or beyond, for compatibility and optimal performance.', 'Caution against using older versions of Selenium and Eclipse, advising to avoid versions such as 3.2 and Kepler, Juno, Indigo, Helios for a seamless integration and to avoid potential errors or exceptions.']}], 'duration': 1259.872, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/5FUdrBq-WFo/pics/5FUdrBq-WFo4945526.jpg', 'highlights': ['Selenium Grid allows parallel execution of test scripts on multiple machines, controlled by Selenium Hub, supporting various browsers, operating systems, and programming languages in different nodes.', 'WebDriver overcomes limitations of Selenium 1, enabling functionalities like file upload, download, pop-ups, and dialog barriers.', 'Selenium WebDriver supports major programming languages such as Java, Python, C#, and Ruby.', 'Parallel execution is achieved with the help of hub node architecture.', 'Instructions for verifying the correct installation of Java.', 'Emphasizing the importance of using Java 8 and the latest versions for Selenium 3.', 'Download the latest version of Selenium, currently 3.2, and ensure to use selenium-server-standalone and selenium-server.zip to meet all requirements.', 'Emphasize the significance of selecting the appropriate Eclipse version, particularly the Java Enterprise Edition, such as Neon, Mars, Oxygen, or beyond, for compatibility and optimal performance.', 'WebDriver lacks the capability to generate reports independently, necessitating the use of frameworks or TestNG for report generation.']}, {'end': 7093.657, 'segs': [{'end': 6255.818, 'src': 'embed', 'start': 6205.738, 'weight': 0, 'content': [{'end': 6212.142, 'text': "Now let's say you're taking Oxygen, for example, or you already have Oxygen or you're trying to download Neon.", 'start': 6205.738, 'duration': 6.404}, {'end': 6217.617, 'text': "So if you take Neon, click on here, That's for Enterprise Edition.", 'start': 6212.522, 'duration': 5.095}, {'end': 6220.318, 'text': "So you've got 32-bit, 64-bit.", 'start': 6217.997, 'duration': 2.321}, {'end': 6222.479, 'text': 'Please download the correct one.', 'start': 6220.839, 'duration': 1.64}, {'end': 6225.641, 'text': "Don't do the mistake of downloading some other bit version.", 'start': 6222.64, 'duration': 3.001}, {'end': 6229.143, 'text': 'So if your system is a 32-bit system, download this.', 'start': 6226.081, 'duration': 3.062}, {'end': 6231.704, 'text': 'If it is a 64-bit system, download this.', 'start': 6229.363, 'duration': 2.341}, {'end': 6234.085, 'text': 'For Mac users, this is the one.', 'start': 6232.224, 'duration': 1.861}, {'end': 6240.191, 'text': 'For Linux users, these are the ones, okay? Download, follow the instructions.', 'start': 6234.125, 'duration': 6.066}, {'end': 6242.612, 'text': 'Now, this is again an executable.', 'start': 6240.531, 'duration': 2.081}, {'end': 6246.774, 'text': "Let's say I'm clicking on 32-bit, okay? You get a mirror website.", 'start': 6242.652, 'duration': 4.122}, {'end': 6249.935, 'text': "Don't get bothered after seeing the mirror websites.", 'start': 6247.494, 'duration': 2.441}, {'end': 6250.775, 'text': "That's okay.", 'start': 6249.995, 'duration': 0.78}, {'end': 6252.876, 'text': 'Click on here and download it.', 'start': 6251.256, 'duration': 1.62}, {'end': 6255.818, 'text': "Unzip it and you'll get the Eclipse.", 'start': 6253.597, 'duration': 2.221}], 'summary': 'Download correct oxygen or neon version based on system specifications for eclipse installation', 'duration': 50.08, 'max_score': 6205.738, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/5FUdrBq-WFo/pics/5FUdrBq-WFo6205738.jpg'}, {'end': 6341.489, 'src': 'embed', 'start': 6309.563, 'weight': 2, 'content': [{'end': 6310.903, 'text': 'I have pinned it to taskbar.', 'start': 6309.563, 'duration': 1.34}, {'end': 6312.164, 'text': 'Do that.', 'start': 6311.764, 'duration': 0.4}, {'end': 6318.649, 'text': "Don't run this executable again, okay? All right, so that's about downloading.", 'start': 6312.905, 'duration': 5.744}, {'end': 6323.343, 'text': "Now we've got Eclipse, we've got Java, we've got Selenium.", 'start': 6319.338, 'duration': 4.005}, {'end': 6326.586, 'text': 'So we are all set to write the very first script.', 'start': 6323.603, 'duration': 2.983}, {'end': 6328.989, 'text': "So I'm going to start my Eclipse.", 'start': 6327.047, 'duration': 1.942}, {'end': 6330.651, 'text': 'I already have it in place.', 'start': 6329.23, 'duration': 1.421}, {'end': 6335.437, 'text': "My version is Luna so that's not the latest one but it works fine for me.", 'start': 6331.532, 'duration': 3.905}, {'end': 6337.384, 'text': "Okay, it's already here.", 'start': 6336.423, 'duration': 0.961}, {'end': 6341.489, 'text': "Okay, so I'm gonna close this, and I'm gonna put this down.", 'start': 6337.404, 'duration': 4.085}], 'summary': 'Setting up eclipse with java and selenium for script writing.', 'duration': 31.926, 'max_score': 6309.563, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/5FUdrBq-WFo/pics/5FUdrBq-WFo6309563.jpg'}, {'end': 6686.629, 'src': 'heatmap', 'start': 6408.239, 'weight': 0.862, 'content': [{'end': 6416.687, 'text': "That's the reason I created the new workspace, so that you can see exactly the thing that you will face when you'll download and start Eclipse.", 'start': 6408.239, 'duration': 8.448}, {'end': 6419.469, 'text': 'okay?. So if you get this page, what do you have to do??', 'start': 6416.687, 'duration': 2.782}, {'end': 6424.133, 'text': "You have to click on Workbench because that's where you will start writing your code.", 'start': 6419.529, 'duration': 4.604}, {'end': 6425.875, 'text': 'So click on Workbench.', 'start': 6424.453, 'duration': 1.422}, {'end': 6428.585, 'text': "Now you've got a new workbench.", 'start': 6426.883, 'duration': 1.702}, {'end': 6431.568, 'text': "You don't need this task list, you don't need this.", 'start': 6429.045, 'duration': 2.523}, {'end': 6438.235, 'text': 'So what I want you to do is just minimize it and if you want to minimize them or close them, do whatever you want to do.', 'start': 6431.708, 'duration': 6.527}, {'end': 6440.697, 'text': "I don't want them, I've closed them.", 'start': 6438.775, 'duration': 1.922}, {'end': 6443.921, 'text': "That's my Package Explorer but it's currently empty.", 'start': 6441.118, 'duration': 2.803}, {'end': 6454.548, 'text': 'What do I want to do now is I have to start working with my scripts for which I need a project, okay? So the next thing is click on file.', 'start': 6444.821, 'duration': 9.727}, {'end': 6462.554, 'text': "We've got these options here new open file switch, workspace, restart, import, export, blah, blah, blah, blah and exit as well.", 'start': 6455.048, 'duration': 7.506}, {'end': 6464.435, 'text': 'okay?. I want you to click on new.', 'start': 6462.554, 'duration': 1.881}, {'end': 6468.338, 'text': 'You want to take a project, a Java project.', 'start': 6465.376, 'duration': 2.962}, {'end': 6470.079, 'text': 'Click on Java project.', 'start': 6468.738, 'duration': 1.341}, {'end': 6473.768, 'text': "Name it, let's say these are Edureka tutorials.", 'start': 6471.184, 'duration': 2.584}, {'end': 6479.976, 'text': "That's how I want to name my project, okay? I'll say Edureka Selenium.", 'start': 6474.108, 'duration': 5.868}, {'end': 6489.058, 'text': "Okay, now when this project is done, I don't want SB, SVN, okay, so you can just ignore it.", 'start': 6481.713, 'duration': 7.345}, {'end': 6497.484, 'text': "If I expand this project, this is the default folder that gets created, and that's the Java system library.", 'start': 6490.299, 'duration': 7.185}, {'end': 6501.207, 'text': 'How does this come up? Eclipse does it for you.', 'start': 6498.245, 'duration': 2.962}, {'end': 6507.995, 'text': 'So whenever you download Eclipse and start working with it, please make sure you have Java already in place.', 'start': 6501.992, 'duration': 6.003}, {'end': 6512.358, 'text': "If you don't have Java already in place, Selenium won't get these jars.", 'start': 6508.035, 'duration': 4.323}, {'end': 6518.901, 'text': 'In fact, Selenium will not start because what it does is see what is the default location for Java?', 'start': 6512.538, 'duration': 6.363}, {'end': 6521.322, 'text': "It's C program files, right?", 'start': 6519.361, 'duration': 1.961}, {'end': 6523.203, 'text': "That's where it always get downloaded.", 'start': 6521.643, 'duration': 1.56}, {'end': 6527.727, 'text': "If your Eclipse is not able to find that path, It'll give you error.", 'start': 6523.363, 'duration': 4.364}, {'end': 6534.291, 'text': 'So make sure you have your Java in place and it will automatically bring the library into your workspace.', 'start': 6528.147, 'duration': 6.144}, {'end': 6539.355, 'text': "So we've got Java system library so that we can work with Java.", 'start': 6535.132, 'duration': 4.223}, {'end': 6543.438, 'text': 'Next thing we want is our Selenium jars.', 'start': 6540.056, 'duration': 3.382}, {'end': 6548.782, 'text': 'So how do we bring any jar into a project? Right click.', 'start': 6544.038, 'duration': 4.744}, {'end': 6555.858, 'text': "Build path, so that's the place you will use to get your jars into your project.", 'start': 6549.892, 'duration': 5.966}, {'end': 6558.721, 'text': 'Then click on Configure Build Path.', 'start': 6556.098, 'duration': 2.623}, {'end': 6561.204, 'text': 'Here, you already have Chiari.', 'start': 6559.902, 'duration': 1.302}, {'end': 6563.256, 'text': 'Go to libraries.', 'start': 6562.395, 'duration': 0.861}, {'end': 6564.377, 'text': 'This is order and export.', 'start': 6563.296, 'duration': 1.081}, {'end': 6565.838, 'text': "You're supposed to go to libraries.", 'start': 6564.397, 'duration': 1.441}, {'end': 6568.861, 'text': 'This is add external jars.', 'start': 6566.659, 'duration': 2.202}, {'end': 6571.223, 'text': 'So now you have to bring in the external jars.', 'start': 6568.921, 'duration': 2.302}, {'end': 6572.143, 'text': 'So click on it.', 'start': 6571.303, 'duration': 0.84}, {'end': 6578.389, 'text': 'As soon as you do so, you will get some location or you can probably give the location on your own.', 'start': 6572.904, 'duration': 5.485}, {'end': 6584.374, 'text': "I'll go to Akanksha and in Selenium New, I've got my Selenium jars as I told you.", 'start': 6578.849, 'duration': 5.525}, {'end': 6588.958, 'text': "So I'm gonna take Selenium Server Standalone first and open it up.", 'start': 6584.394, 'duration': 4.564}, {'end': 6595.331, 'text': "and then I'll again click back on add external jars so that I can go to Selenium server.", 'start': 6589.608, 'duration': 5.723}, {'end': 6596.751, 'text': 'take node ps.', 'start': 6595.331, 'duration': 1.42}, {'end': 6598.192, 'text': 'I will again click back.', 'start': 6596.751, 'duration': 1.441}, {'end': 6601.594, 'text': 'why?? Because I have still not taken libraries inside lib folder.', 'start': 6598.192, 'duration': 3.402}, {'end': 6605.115, 'text': "I'll do control A and I'll click on open.", 'start': 6602.074, 'duration': 3.041}, {'end': 6607.716, 'text': "So I've got all my Selenium jars now.", 'start': 6605.696, 'duration': 2.02}, {'end': 6609.317, 'text': 'Click okay.', 'start': 6608.277, 'duration': 1.04}, {'end': 6613.759, 'text': "So if you see, apart from Jari, we've got reference libraries also.", 'start': 6609.877, 'duration': 3.882}, {'end': 6617.241, 'text': 'Now what people do is they create different folder called lib.', 'start': 6614.24, 'duration': 3.001}, {'end': 6619.038, 'text': 'that you can also do.', 'start': 6617.958, 'duration': 1.08}, {'end': 6621.139, 'text': 'Okay, you can create a different folder.', 'start': 6619.459, 'duration': 1.68}, {'end': 6623.42, 'text': 'All you have to do is right click, new folder.', 'start': 6621.179, 'duration': 2.241}, {'end': 6627.022, 'text': 'You can create a folder and then import your jars.', 'start': 6623.76, 'duration': 3.262}, {'end': 6628.682, 'text': 'Or you can directly do so.', 'start': 6627.382, 'duration': 1.3}, {'end': 6633.304, 'text': "That's your choice, okay? So we've got the reference libraries.", 'start': 6629.663, 'duration': 3.641}, {'end': 6636.806, 'text': "If you expand it, they're nothing but your Selenium jars, if you can see here.", 'start': 6633.364, 'duration': 3.442}, {'end': 6642.422, 'text': "Right, you've got your Selenium jars, you've got your Java, everything is in place.", 'start': 6637.54, 'duration': 4.882}, {'end': 6644.703, 'text': 'We are all set to write the script.', 'start': 6642.923, 'duration': 1.78}, {'end': 6650.366, 'text': 'Now what is my tendency to write the script? I always do things within a package.', 'start': 6645.444, 'duration': 4.922}, {'end': 6658.19, 'text': "So what I've done, I have right clicked on this default folder, src, new, and I'll do package.", 'start': 6650.946, 'duration': 7.244}, {'end': 6660.721, 'text': 'Now, why do I need package??', 'start': 6659.079, 'duration': 1.642}, {'end': 6666.346, 'text': "Because see if you're friends with any developer or if you've got friends in development team.", 'start': 6661.081, 'duration': 5.265}, {'end': 6668.147, 'text': 'just go and browse their code.', 'start': 6666.346, 'duration': 1.801}, {'end': 6672.271, 'text': 'You will see that everything is within packages.', 'start': 6668.788, 'duration': 3.483}, {'end': 6681.179, 'text': 'And when you read the packages, just by reading the name of package, you will get to know that what does it contain.', 'start': 6672.991, 'duration': 8.188}, {'end': 6686.629, 'text': 'By having packages, we increase the readability of the code.', 'start': 6681.966, 'duration': 4.663}], 'summary': 'Setting up eclipse workspace, adding java and selenium jars, creating packages for code readability.', 'duration': 278.39, 'max_score': 6408.239, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/5FUdrBq-WFo/pics/5FUdrBq-WFo6408239.jpg'}, {'end': 6691.351, 'src': 'embed', 'start': 6659.079, 'weight': 3, 'content': [{'end': 6660.721, 'text': 'Now, why do I need package??', 'start': 6659.079, 'duration': 1.642}, {'end': 6666.346, 'text': "Because see if you're friends with any developer or if you've got friends in development team.", 'start': 6661.081, 'duration': 5.265}, {'end': 6668.147, 'text': 'just go and browse their code.', 'start': 6666.346, 'duration': 1.801}, {'end': 6672.271, 'text': 'You will see that everything is within packages.', 'start': 6668.788, 'duration': 3.483}, {'end': 6681.179, 'text': 'And when you read the packages, just by reading the name of package, you will get to know that what does it contain.', 'start': 6672.991, 'duration': 8.188}, {'end': 6686.629, 'text': 'By having packages, we increase the readability of the code.', 'start': 6681.966, 'duration': 4.663}, {'end': 6691.351, 'text': "It'll be easier for us to find out any particular file later on.", 'start': 6687.029, 'duration': 4.322}], 'summary': 'Using packages in code enhances readability, making it easier to locate specific files.', 'duration': 32.272, 'max_score': 6659.079, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/5FUdrBq-WFo/pics/5FUdrBq-WFo6659079.jpg'}, {'end': 6987.902, 'src': 'embed', 'start': 6956.79, 'weight': 4, 'content': [{'end': 6959.891, 'text': "I haven't instantiated it as yet.", 'start': 6956.79, 'duration': 3.101}, {'end': 6972.257, 'text': "So inside invokeBrowser, what I'm going to do is I'll say, driver is equal to new, I want to use Chrome, okay? So I'll say Chrome driver.", 'start': 6960.492, 'duration': 11.765}, {'end': 6979.279, 'text': "See guys, you don't need to learn them by heart as in whether it starts from capital C or whether this D is capital D.", 'start': 6972.377, 'duration': 6.902}, {'end': 6980.92, 'text': "That's the beauty of using IDE.", 'start': 6979.279, 'duration': 1.641}, {'end': 6987.902, 'text': "All you can do is use control, or if you're using Mac command, plus space, control space.", 'start': 6981.08, 'duration': 6.822}], 'summary': 'Demonstrating how to instantiate a chrome driver in invokebrowser function.', 'duration': 31.112, 'max_score': 6956.79, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/5FUdrBq-WFo/pics/5FUdrBq-WFo6956790.jpg'}], 'start': 6205.738, 'title': 'Downloading and setting up eclipse, java, and selenium', 'summary': "Discusses the process of downloading eclipse for different operating systems, emphasizing the importance of correct version for system's bit version and providing instructions for mac and linux users. it also covers setting up eclipse, java, and selenium for writing the first script, including downloading, switching workspaces, configuring build path, and creating packages and classes.", 'chapters': [{'end': 6255.818, 'start': 6205.738, 'title': 'Downloading eclipse for different operating systems', 'summary': "Discusses the process of downloading eclipse for different operating systems, emphasizing the importance of downloading the correct version for the system's bit version and providing instructions for mac and linux users.", 'duration': 50.08, 'highlights': ['It is important to download the correct bit version of Eclipse for the system, 32-bit for 32-bit systems and 64-bit for 64-bit systems.', 'Instructions for Mac and Linux users are provided for downloading Eclipse, including guidance on unzipping the downloaded file.']}, {'end': 7093.657, 'start': 6256.358, 'title': 'Setting up eclipse, java, and selenium', 'summary': 'Covers setting up eclipse, java, and selenium for writing the first script, including downloading, switching workspaces, configuring build path, and creating packages and classes.', 'duration': 837.299, 'highlights': ['The chapter emphasizes the importance of not running the Eclipse executable file and instead pinning it to the taskbar or start menu to avoid running it every time, ensuring efficient access (e.g., right-click to pin it).', 'The process of setting up Eclipse, Java, and Selenium for writing the first script is detailed, including switching workspaces, ensuring Java is in place for Selenium to work, and configuring the build path to include Selenium jars (e.g., selecting the Selenium Server Standalone and node ps, and adding external jars).', 'The significance of creating packages in Java for organizing code and increasing readability is highlighted, with explanations on naming conventions (e.g., using lowercase for package names and starting class names with a capital letter), and the importance of understanding Java programming concepts alongside the tutorial.', 'The detailed steps for setting up the WebDriver, including invoking the browser, setting the Chrome driver, and using the System.setProperty method to specify the location of the Chrome driver executable, are explained with code samples and explanations.', "The chapter provides detailed guidance on writing the first script, with a focus on creating a function to invoke the browser and setting the Chrome driver's location using the System.setProperty method, demonstrating the practical application of the concepts covered."]}], 'duration': 887.919, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/5FUdrBq-WFo/pics/5FUdrBq-WFo6205738.jpg', 'highlights': ['The importance of downloading the correct bit version of Eclipse for the system is emphasized', 'Instructions for Mac and Linux users are provided for downloading Eclipse', 'The process of setting up Eclipse, Java, and Selenium for writing the first script is detailed', 'The significance of creating packages in Java for organizing code and increasing readability is highlighted', 'Detailed steps for setting up the WebDriver, including invoking the browser and setting the Chrome driver, are explained']}, {'end': 7931.809, 'segs': [{'end': 7170.292, 'src': 'embed', 'start': 7094.217, 'weight': 0, 'content': [{'end': 7097.379, 'text': "I'm all set to use the functions inside it.", 'start': 7094.217, 'duration': 3.162}, {'end': 7104.642, 'text': 'So what do you do now? You use driver as your object reference.', 'start': 7098.739, 'duration': 5.903}, {'end': 7106.743, 'text': "So we'll talk about that later.", 'start': 7105.163, 'duration': 1.58}, {'end': 7112.006, 'text': 'Maybe I can cover a bit of Java later in other tutorials, upcoming tutorials.', 'start': 7106.803, 'duration': 5.203}, {'end': 7117.509, 'text': 'What you have to do is, driver, you need to manage a few browser properties.', 'start': 7112.466, 'duration': 5.043}, {'end': 7120.591, 'text': 'So how do you tend to learn these lines of code?', 'start': 7117.969, 'duration': 2.622}, {'end': 7125.454, 'text': 'Just keep in mind that WebDriver is the thing where all my functions are.', 'start': 7120.971, 'duration': 4.483}, {'end': 7132.078, 'text': "which is going to control the browser and manage is the function which will let me manage the browser's properties.", 'start': 7125.454, 'duration': 6.624}, {'end': 7138.622, 'text': 'Driver.manage I want to first of all delete all cookies.', 'start': 7133.399, 'duration': 5.223}, {'end': 7149.757, 'text': "I want that my browser should delete all the cookies of the URL which I'm about to call, okay? Next thing, driver.manage.", 'start': 7139.412, 'duration': 10.345}, {'end': 7153.559, 'text': 'Again manage because the next thing is to manage, again, browser property.', 'start': 7149.917, 'duration': 3.642}, {'end': 7165.131, 'text': 'I want to maximize my window, because what happens is when you call your browser driver, when you instantiate your driver using this line, okay,', 'start': 7154.608, 'duration': 10.523}, {'end': 7168.611, 'text': 'it opens up your browser in a minimized form.', 'start': 7165.131, 'duration': 3.48}, {'end': 7170.292, 'text': "It doesn't open it wide.", 'start': 7168.831, 'duration': 1.461}], 'summary': 'Using webdriver to manage browser properties and maximize window for better functionality.', 'duration': 76.075, 'max_score': 7094.217, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/5FUdrBq-WFo/pics/5FUdrBq-WFo7094217.jpg'}, {'end': 7224.589, 'src': 'embed', 'start': 7197.006, 'weight': 2, 'content': [{'end': 7204.592, 'text': "The next thing I'm going to do is I'm gonna do page synchronization, which is very essential part of automation testing.", 'start': 7197.006, 'duration': 7.586}, {'end': 7209.075, 'text': 'And we do page synchronization not just in Selenium but in other tools also.', 'start': 7205.012, 'duration': 4.063}, {'end': 7213.398, 'text': "Here what I'm going to do is I'm gonna put a few wait statements.", 'start': 7209.695, 'duration': 3.703}, {'end': 7222.345, 'text': "Driver.manage.timeouts, okay, because I'm placing some timeouts here.", 'start': 7213.558, 'duration': 8.787}, {'end': 7224.589, 'text': 'implicitly wait.', 'start': 7223.226, 'duration': 1.363}], 'summary': 'Page synchronization is a crucial part of automation testing using selenium and other tools, involving wait statements and timeouts.', 'duration': 27.583, 'max_score': 7197.006, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/5FUdrBq-WFo/pics/5FUdrBq-WFo7197006.jpg'}, {'end': 7331.224, 'src': 'embed', 'start': 7300.164, 'weight': 7, 'content': [{'end': 7304.506, 'text': 'And that can depend on the server speed and that also depends on my internet speed.', 'start': 7300.164, 'duration': 4.342}, {'end': 7309.529, 'text': 'The basic factor, I mean the important factor is the server speed, okay, Jabong server.', 'start': 7305.027, 'duration': 4.502}, {'end': 7312.67, 'text': 'And then, of course, my internet speed as well.', 'start': 7310.109, 'duration': 2.561}, {'end': 7313.851, 'text': "That's the secondary thing.", 'start': 7312.81, 'duration': 1.041}, {'end': 7323.918, 'text': "So since this is taking time, let's say in my code, I'm calling jabong.com and then immediately, I'm trying to click on this search button.", 'start': 7314.651, 'duration': 9.267}, {'end': 7331.224, 'text': 'However, this has still not come up on the webpage because my browser or the web app is taking its own time.', 'start': 7324.158, 'duration': 7.066}], 'summary': 'Server speed is crucial for webpage loading time, followed by internet speed.', 'duration': 31.06, 'max_score': 7300.164, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/5FUdrBq-WFo/pics/5FUdrBq-WFo7300164.jpg'}, {'end': 7399.362, 'src': 'embed', 'start': 7368.988, 'weight': 4, 'content': [{'end': 7378.955, 'text': "So you take seconds, that's done and the next line is driver dot manage dot timeout dot page load.", 'start': 7368.988, 'duration': 9.967}, {'end': 7382.616, 'text': "So we've got two kinds of weight, implicit and page load.", 'start': 7379.235, 'duration': 3.381}, {'end': 7384.917, 'text': "They'll be explained later in detail.", 'start': 7382.656, 'duration': 2.261}, {'end': 7393.5, 'text': "Let's say I'm giving page load also as 30 seconds, and that's time unit dot seconds, okay?", 'start': 7384.957, 'duration': 8.543}, {'end': 7399.362, 'text': 'So these are the lines of code you will always write, always and always.', 'start': 7394.64, 'duration': 4.722}], 'summary': 'Code includes two types of wait: implicit and page load, set to 30 seconds each.', 'duration': 30.374, 'max_score': 7368.988, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/5FUdrBq-WFo/pics/5FUdrBq-WFo7368988.jpg'}], 'start': 7094.217, 'title': 'Webdriver functions, browser properties, and synchronization in automation testing', 'summary': 'Covers the usage of webdriver functions for managing browser properties, including deleting cookies and maximizing window size, while also hinting at upcoming tutorials on java and theoretical explanations of concepts. it also explains the importance and implementation of page synchronization in automation testing using selenium, emphasizing the use of wait statements and timeout settings for synchronization, with a focus on controlling browser activities and handling element loading delays.', 'chapters': [{'end': 7196.262, 'start': 7094.217, 'title': 'Webdriver functions and browser properties', 'summary': 'Covers the usage of webdriver functions for managing browser properties, including deleting cookies and maximizing window size, while also hinting at upcoming tutorials on java and theoretical explanations of concepts.', 'duration': 102.045, 'highlights': ['The WebDriver is used to control the browser and manage its properties, including deleting all cookies of the URL and maximizing the window.', 'The instantiation of the driver opens the browser in a minimized form, requiring the window size to be set or maximized to ensure it opens wide.', 'Upcoming tutorials on Java and theoretical explanations of concepts will be covered later.']}, {'end': 7931.809, 'start': 7197.006, 'title': 'Synchronization in automation testing', 'summary': 'Explains the importance and implementation of page synchronization in automation testing using selenium, emphasizing the use of wait statements and timeout settings for synchronization, with a focus on controlling browser activities and handling element loading delays.', 'duration': 734.803, 'highlights': ['Explanation of the importance of page synchronization and its implementation in automation testing using Selenium', 'Use of wait statements and timeout settings for page synchronization', 'Impact of server speed and internet speed on page loading delays', 'Handling element loading delays to prevent code failure', 'Demonstration of setting timeout duration for page synchronization']}], 'duration': 837.592, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/5FUdrBq-WFo/pics/5FUdrBq-WFo7094217.jpg', 'highlights': ['The WebDriver manages browser properties, including deleting cookies and maximizing window size', 'Upcoming tutorials on Java and theoretical explanations of concepts will be covered later', 'Explanation of the importance of page synchronization and its implementation in automation testing using Selenium', 'Use of wait statements and timeout settings for page synchronization', 'Handling element loading delays to prevent code failure', 'Demonstration of setting timeout duration for page synchronization', 'The instantiation of the driver opens the browser in a minimized form, requiring the window size to be set or maximized to ensure it opens wide', 'Impact of server speed and internet speed on page loading delays']}, {'end': 9127.429, 'segs': [{'end': 7959.469, 'src': 'embed', 'start': 7931.809, 'weight': 3, 'content': [{'end': 7941.155, 'text': "let's say you're working on automation inside your company and for security reasons you've got firewalls and because of firewalls you're not able to download these plugins.", 'start': 7931.809, 'duration': 9.346}, {'end': 7943.897, 'text': 'No worries, just press F12.', 'start': 7941.656, 'duration': 2.241}, {'end': 7950.542, 'text': 'F12 will open the inbuilt system, okay, which again acts exactly like these plugins.', 'start': 7944.338, 'duration': 6.204}, {'end': 7952.944, 'text': "Okay, so I'll just scroll it down.", 'start': 7951.302, 'duration': 1.642}, {'end': 7959.469, 'text': 'This is an arrow which will help me identify the elements on page.', 'start': 7953.905, 'duration': 5.564}], 'summary': 'For security reasons, if unable to download plugins due to firewalls, press f12 to access the inbuilt system, which functions like the plugins.', 'duration': 27.66, 'max_score': 7931.809, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/5FUdrBq-WFo/pics/5FUdrBq-WFo7931809.jpg'}, {'end': 8042.389, 'src': 'embed', 'start': 7988.236, 'weight': 4, 'content': [{'end': 7993.298, 'text': 'this HTML code is relevant to this search for a course.', 'start': 7988.236, 'duration': 5.062}, {'end': 8001.121, 'text': 'okay?. Now, if I have got this line out of those eight element locator techniques, I need to identify that.', 'start': 7993.298, 'duration': 7.823}, {'end': 8008.545, 'text': 'do I have anything here that can be used to identify this search box, this text box?', 'start': 8001.121, 'duration': 7.424}, {'end': 8011.667, 'text': "If you can see, I've got an ID here.", 'start': 8009.306, 'duration': 2.361}, {'end': 8015.83, 'text': 'An ID is one of the eight element locator techniques.', 'start': 8012.488, 'duration': 3.342}, {'end': 8018.791, 'text': 'But IDs can be dynamic also.', 'start': 8016.47, 'duration': 2.321}, {'end': 8022.534, 'text': "It's not dynamic in this case and about dynamic elements we'll talk later.", 'start': 8018.891, 'duration': 3.643}, {'end': 8029.844, 'text': 'If you see, just by reading the ID value, that yes, it is relevant to this field, please go ahead and use it.', 'start': 8023.422, 'duration': 6.422}, {'end': 8032.625, 'text': "They're the most efficient way of finding an element.", 'start': 8030.265, 'duration': 2.36}, {'end': 8036.387, 'text': 'ID is equal to search input one.', 'start': 8034.246, 'duration': 2.141}, {'end': 8038.468, 'text': "I'm going to copy this.", 'start': 8037.047, 'duration': 1.421}, {'end': 8042.389, 'text': "If you see, I'm copying it here, and the ID is this.", 'start': 8038.868, 'duration': 3.521}], 'summary': 'Identifying search box using id, an efficient element locator technique.', 'duration': 54.153, 'max_score': 7988.236, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/5FUdrBq-WFo/pics/5FUdrBq-WFo7988236.jpg'}, {'end': 8355.947, 'src': 'embed', 'start': 8311.601, 'weight': 1, 'content': [{'end': 8320.603, 'text': "Now scroll down again has a lot of things into it, but what I'm going to do is I'm gonna write an easier piece of code here, not in detail, okay?", 'start': 8311.601, 'duration': 9.002}, {'end': 8323.523, 'text': 'So what do I want in this search course?', 'start': 8321.084, 'duration': 2.439}, {'end': 8332.447, 'text': "We've got this search course and I will write a small piece of code to scroll down, for which we need JavaScript.", 'start': 8323.624, 'duration': 8.823}, {'end': 8339.617, 'text': "Okay, we've got a question from the current audience that what is the difference between implicit wait and thread.sleep?", 'start': 8333.612, 'duration': 6.005}, {'end': 8345.341, 'text': 'See guys, this is a huge concept, page synchronization, which will be explained later.', 'start': 8339.996, 'duration': 5.345}, {'end': 8352.745, 'text': "But for now, just understand when I put thread.sleep, okay, and if I'm giving a three second sleep,", 'start': 8345.8, 'duration': 6.945}, {'end': 8355.947, 'text': 'it means my code is going to sleep for three seconds.', 'start': 8352.745, 'duration': 3.202}], 'summary': 'Discussion on javascript for scrolling down and difference between implicit wait and thread.sleep', 'duration': 44.346, 'max_score': 8311.601, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/5FUdrBq-WFo/pics/5FUdrBq-WFo8311601.jpg'}, {'end': 8490.502, 'src': 'embed', 'start': 8464.718, 'weight': 6, 'content': [{'end': 8469.362, 'text': 'But in sleep, my execution will not go to the next line until that sleep time is over.', 'start': 8464.718, 'duration': 4.644}, {'end': 8474.411, 'text': "All right? Okay, so let's click and now I want to scroll down.", 'start': 8469.982, 'duration': 4.429}, {'end': 8478.174, 'text': "So what I'm going to do is I'm gonna quickly create a JavaScript executor.", 'start': 8474.431, 'duration': 3.743}, {'end': 8480.156, 'text': "No worries if you don't understand.", 'start': 8478.734, 'duration': 1.422}, {'end': 8486.261, 'text': 'And this is a class, okay, JavaScript executor in Selenium which lets us execute a few scripts.', 'start': 8480.176, 'duration': 6.085}, {'end': 8490.502, 'text': 'JavaScript executors or interface, not class.', 'start': 8487.58, 'duration': 2.922}], 'summary': 'Using javascript executor in selenium for executing scripts during automation.', 'duration': 25.784, 'max_score': 8464.718, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/5FUdrBq-WFo/pics/5FUdrBq-WFo8464718.jpg'}, {'end': 8851.307, 'src': 'embed', 'start': 8808.63, 'weight': 0, 'content': [{'end': 8815.292, 'text': 'We can also use element location, the point where element is located and we can scroll down till that point.', 'start': 8808.63, 'duration': 6.662}, {'end': 8820.473, 'text': "We can do that also but we'll learn about that in upcoming tutorials.", 'start': 8815.832, 'duration': 4.641}, {'end': 8828.435, 'text': "Yeah, now it worked, right? So it clicked in here and we've got the weekend batches.", 'start': 8823.034, 'duration': 5.401}, {'end': 8830.895, 'text': "So that's the beauty of Selenium.", 'start': 8828.935, 'duration': 1.96}, {'end': 8833.216, 'text': 'We can use anything we want.', 'start': 8831.336, 'duration': 1.88}, {'end': 8836.542, 'text': 'All the functions are there in the WebDriver.', 'start': 8834.241, 'duration': 2.301}, {'end': 8838.463, 'text': "When you're working with it.", 'start': 8837.162, 'duration': 1.301}, {'end': 8839.483, 'text': 'see, obviously when.', 'start': 8838.463, 'duration': 1.02}, {'end': 8845.525, 'text': "if you're watching this tutorial, that means you've decided to work on Selenium and you're working on it for the first time.", 'start': 8839.483, 'duration': 6.042}, {'end': 8846.926, 'text': "if you're watching this video.", 'start': 8845.525, 'duration': 1.401}, {'end': 8847.826, 'text': 'introductory video.', 'start': 8846.926, 'duration': 0.9}, {'end': 8851.307, 'text': 'Please my advice please be patient, okay?', 'start': 8848.106, 'duration': 3.201}], 'summary': 'Selenium offers versatile element location and scrolling capabilities, enabling varied functionalities in webdriver.', 'duration': 42.677, 'max_score': 8808.63, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/5FUdrBq-WFo/pics/5FUdrBq-WFo8808630.jpg'}, {'end': 9021.067, 'src': 'embed', 'start': 8991.913, 'weight': 8, 'content': [{'end': 8993.434, 'text': 'If you just read out the names.', 'start': 8991.913, 'duration': 1.521}, {'end': 9000.698, 'text': "okay, we've got Tom Tooley here who says I wanted to learn Selenium WebDriver in a live, real course, not self-based.", 'start': 8993.434, 'duration': 7.264}, {'end': 9002.579, 'text': 'so there would be pressure on me to finish.', 'start': 9000.698, 'duration': 1.881}, {'end': 9008.842, 'text': 'Edureka accomplished this at a price far lower than in-person class and, as far as I know,', 'start': 9003.119, 'duration': 5.723}, {'end': 9012.685, 'text': 'there are only internet class that has live lectures on this subject.', 'start': 9008.842, 'duration': 3.843}, {'end': 9014.845, 'text': 'Teacher was very knowledgeable.', 'start': 9013.385, 'duration': 1.46}, {'end': 9016.566, 'text': 'I learned basic use of selenium.', 'start': 9014.926, 'duration': 1.64}, {'end': 9019.687, 'text': 'No problem with me being in US and teacher in India.', 'start': 9016.986, 'duration': 2.701}, {'end': 9021.067, 'text': 'They have US number.', 'start': 9019.727, 'duration': 1.34}], 'summary': 'Edureka offers live selenium webdriver course at a lower price with knowledgeable teachers and live lectures, accessible globally.', 'duration': 29.154, 'max_score': 8991.913, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/5FUdrBq-WFo/pics/5FUdrBq-WFo8991913.jpg'}, {'end': 9057.446, 'src': 'embed', 'start': 9033.752, 'weight': 2, 'content': [{'end': 9043.099, 'text': 'Teachers here, the instructors here, not just in Selenium but for other courses also, they have got their expertise in the relevant subject.', 'start': 9033.752, 'duration': 9.347}, {'end': 9051.065, 'text': "They've been working on that subject on that field in corporate sector and that's how we choose those instructors here.", 'start': 9043.419, 'duration': 7.646}, {'end': 9057.446, 'text': "So if you want to find out more about Edureka, I'd like you to go to edureka.co.", 'start': 9051.725, 'duration': 5.721}], 'summary': 'Edureka instructors have expertise in relevant subjects and corporate experience, visit edureka.co for more information.', 'duration': 23.694, 'max_score': 9033.752, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/5FUdrBq-WFo/pics/5FUdrBq-WFo9033752.jpg'}], 'start': 7931.809, 'title': 'Selenium webdriver fundamentals', 'summary': "Covers element locating, interaction, and page synchronization in selenium, highlighting the use of inbuilt system for bypassing firewalls, identifying html elements, and the difference between implicit wait and thread.sleep. it also includes a wide range of webdriver functions and techniques, emphasizing the benefits of edureka courses and its instructors' expertise.", 'chapters': [{'end': 8332.447, 'start': 7931.809, 'title': 'Selenium automation: element locating and interaction', 'summary': 'Covers using the inbuilt system to bypass firewalls, identifying html elements using the element locator, and using id as the most efficient way of finding an element in selenium automation, leading to a workaround for enabling the search button and scrolling down using javascript.', 'duration': 400.638, 'highlights': ['Using the inbuilt system to bypass firewalls', 'Identifying HTML elements using the element locator', 'Using ID as the most efficient way of finding an element', 'Workaround for enabling the search button and scrolling down using JavaScript']}, {'end': 8872.357, 'start': 8333.612, 'title': 'Page synchronization in selenium', 'summary': 'Discusses the difference between implicit wait and thread.sleep, emphasizing that implicit wait allows a maximum of 30 seconds for page synchronization, while thread.sleep always sleeps for the specified time. it also covers the use of javascript executor for scrolling and element identification in selenium webdriver.', 'duration': 538.745, 'highlights': ['Implicit wait allows a maximum of 30 seconds for page synchronization, while thread.sleep always sleeps for the specified time.', 'The use of JavaScript executor for scrolling and element identification in Selenium WebDriver.', 'Emphasizes the importance of patience and error handling for debugging Selenium code.']}, {'end': 9127.429, 'start': 8872.457, 'title': 'Selenium webdriver tutorial highlights', 'summary': 'Covers a wide range of topics in selenium webdriver including finding elements, eight element locator techniques, xpath functions, and various webdriver functions such as drop downs, switching to windows, switching to alerts, framing concept, screenshots, keyboard mouse events, validation commands, check boxes, and radio buttons, while also highlighting the benefits of edureka courses and the expertise of its instructors.', 'duration': 254.972, 'highlights': ["Edureka's Selenium WebDriver tutorial covers a wide array of topics including finding elements, eight element locator techniques, XPath functions, and various WebDriver functions such as drop downs, switching to windows, switching to alerts, and framing concept.", 'The tutorial emphasizes the benefits of Edureka courses and the expertise of its instructors.', 'Edureka has been receiving positive reviews from learners worldwide, with a specific mention of a satisfied learner, Tom Tooley, and the availability of toll-free numbers and 24/7 support.']}], 'duration': 1195.62, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/5FUdrBq-WFo/pics/5FUdrBq-WFo7931809.jpg', 'highlights': ["Edureka's Selenium WebDriver tutorial covers a wide array of topics including finding elements, eight element locator techniques, XPath functions, and various WebDriver functions such as drop downs, switching to windows, switching to alerts, and framing concept.", 'Implicit wait allows a maximum of 30 seconds for page synchronization, while thread.sleep always sleeps for the specified time.', 'The tutorial emphasizes the benefits of Edureka courses and the expertise of its instructors.', 'Using the inbuilt system to bypass firewalls', 'Identifying HTML elements using the element locator', 'Using ID as the most efficient way of finding an element', 'The use of JavaScript executor for scrolling and element identification in Selenium WebDriver.', 'Emphasizes the importance of patience and error handling for debugging Selenium code.', 'Edureka has been receiving positive reviews from learners worldwide, with a specific mention of a satisfied learner, Tom Tooley, and the availability of toll-free numbers and 24/7 support.', 'Workaround for enabling the search button and scrolling down using JavaScript']}], 'highlights': ['Selenium Grid allows parallel execution of test scripts on multiple machines, controlled by Selenium Hub, supporting various browsers, operating systems, and programming languages in different nodes.', 'Automation testing beats manual testing with benefits such as faster execution, more accurate results, and reduced investment in human resources.', 'Selenium offers support for various operating systems and web browsers, including Linux, Windows, Mac, iOS, Android, and multiple major browsers, ensuring broad compatibility.', 'Selenium WebDriver makes direct calls to the browser', 'Selenium provides support for multiple programming languages such as Java, Python, Perl, Ruby, C Sharp, and JavaScript, making it versatile for different users and projects.']}