{"id":14969329,"url":"https://github.com/testleafinc/testleafseleniumtraining","last_synced_at":"2025-10-24T07:30:16.151Z","repository":{"id":63883420,"uuid":"347630736","full_name":"TestLeafInc/TestLeafSeleniumTraining","owner":"TestLeafInc","description":"This is public repository for Selenium Learners at TestLeaf","archived":false,"fork":false,"pushed_at":"2023-11-20T11:39:31.000Z","size":888,"stargazers_count":96,"open_issues_count":0,"forks_count":57,"subscribers_count":10,"default_branch":"main","last_synced_at":"2025-01-31T00:25:08.820Z","etag":null,"topics":["apache-poi","chrome","cucumber","firefox","frameworks","java","selenium","testing","testng","thread-local","webdriver"],"latest_commit_sha":null,"homepage":"","language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/TestLeafInc.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2021-03-14T12:28:53.000Z","updated_at":"2024-06-20T16:50:59.000Z","dependencies_parsed_at":"2024-09-24T14:19:22.445Z","dependency_job_id":"1a5c933a-0437-4a99-86f5-829614903a4a","html_url":"https://github.com/TestLeafInc/TestLeafSeleniumTraining","commit_stats":{"total_commits":34,"total_committers":1,"mean_commits":34.0,"dds":0.0,"last_synced_commit":"428c5f677ea634af44406a0aa857a5a0b0a7f117"},"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/TestLeafInc%2FTestLeafSeleniumTraining","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/TestLeafInc%2FTestLeafSeleniumTraining/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/TestLeafInc%2FTestLeafSeleniumTraining/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/TestLeafInc%2FTestLeafSeleniumTraining/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/TestLeafInc","download_url":"https://codeload.github.com/TestLeafInc/TestLeafSeleniumTraining/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":237926611,"owners_count":19388577,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["apache-poi","chrome","cucumber","firefox","frameworks","java","selenium","testing","testng","thread-local","webdriver"],"created_at":"2024-09-24T13:41:37.004Z","updated_at":"2025-10-24T07:30:15.032Z","avatar_url":"https://github.com/TestLeafInc.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Selenium WebDriver Course\nThis is public repository for Selenium Learners at TestLeaf.\n\n# Week1 - Core Java Basics \n* How Java works?\n* Introduction to Class, Members of Class - Methods, Variables\n* Get started with Primitive Data Types\n* Declaration and assignment variables\n* Operators (Arithmetic and Comparison)\n* Anatomy of if, if-else statements\n* Anatomy of loops - for, foreach, while, do while\n* Introduction to String class and its methods\n* Get started with Arrays\n* Solving basic String and Array Problems\n\n# Week 2 - Get Started with Selenium WebDriver\n* How Selenium Works Internally?\n* Basic code to launch browser, load URL, Set timeouts and Maximize browser\n* 8 old locators and its strategy of when to use and when not to use\n* Browser Methods like get, findElement(s), close, manage, getTitle etc\n* WebElement Methods like clear, sendKeys, click, getText, getAttibute etc\n* Exceptions - NoSuchElement, StaleElementReference etc\n* How to handle dropdowns, checkbox, radiobutton, web table / calendar etc?\n* XPath build syntax and patters - Absolute, Relative (Attribute, Text) with Exact and Partial matches\n* XPath Patterns - Axes, Collection based indices, Functions\n* Implicit and Explicit Waits\n* Webdriver Snapshot methods for visible area and webelement - Base64 and File\n* Assignments Review\n\n# Week 3 - Java OOPS, Collection and WebDriverWait\n* Java OOPS pillars \n* Abstraction - Java Concept, Real time example and Selenium Implementation\n* Inheritance, Polymorphism, Encapsulation \n* WebDriverWait, Expectedconditions, TimeOutExceptions\n* RedBus automation example with Disable Notification, Click Intercepted Exception\n* Java Collection - List, Set, Map\n* Problem Solving - Duplicate values in array, Unique characters in String, Count of characters and Two Sum\n* Assignment Review\n\n# Week 4 - Target Locators and Actions\n* SwitchTo - RemoteTargetLocator\n* Alert - accept, dismiss, getText, sendKeys, Exceptions\n* Frame - method overloading (int,String, WebElement), Exception\n* DefaultContent, ParentFrame - Switch back from frame\n* Window - getWindowHandles, getWindowHandle, Exception\n* Switch to Window Options - Set to List, Iterator\n* close vs quit\n* ActiveElement \u0026 New Window feature in Selenium 4.0\n* Actions class methods - dragAndDrop, dragAndDropBy, moveToElement, pause, perform\n* Other Actions class - clickAndHold, keyDown, release\n* Exception Handling - try/catch, throw, throws, finally\n* End to End testcase for retail website \n\n# Week 5 - TestNg (Test Runner Framework)\n* TestNg Basics\n* Annotations and its hierarchy\n* TestNg XML design\n* @Test Annotation and its attributes\n* Dependency Injection\n* Test Report using TestNg\n* Parameterization - @Parameter and @DataProvider\n* Read Excel using Apache POI Java API\n* Integrate excel data automation with TestNg (Apache POI + Data Provider)\n* Build OOPS concepts into TestNg implementation \n* Convert existing plain testcases to TestNg implementation\n* Run sequential, parallel - with logs and reports\n* Listeners - ISuite, ITest and Retry Implementations\n\n# Week 6 - Cucumber Basics to Advanced (BDD Framework)\n* Cucumber and BDD, TDD Basics\n* Create Feature File with simple scenario\n* Cucumber - Gherkin Keywords\n* Integration with Step Definitions\n* Scenario Outline with Examples and with Background\n* CucumberOptions - Glue, MonoChrome, Report, Hooks\n* Create Runner File with TestNG\n* Cucumber Hooks and Java OOPS integration\n* Convert existing TestNg testcases to BDD implemntation\n* Run Feature files from TestNg XML\n\n# Week 7 - Pattern Object Model Design Pattern and Framework\n* Page Object Model design rules\n* Pattern Object model - Page Inheritance\n* Build Page Classes (without Page Factory)\n* Build DataProvider utility classes\n* Build the testcases as runner classes\n* Design the TestNg XML with verbose\n* Debug and execute the testcases for different data \n\n# Week 8 - Hybrid framework with Thread-Local\n* ThreadLocal Implementation for Driver, Reports\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftestleafinc%2Ftestleafseleniumtraining","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ftestleafinc%2Ftestleafseleniumtraining","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftestleafinc%2Ftestleafseleniumtraining/lists"}