{"id":18468449,"url":"https://github.com/rahulrathore44/parallemodularframework","last_synced_at":"2026-05-01T19:32:36.261Z","repository":{"id":79385480,"uuid":"64945978","full_name":"rahulrathore44/ParalleModularFramework","owner":"rahulrathore44","description":"Selenium Modular Framework with Parallel execution support","archived":false,"fork":false,"pushed_at":"2016-08-25T09:45:04.000Z","size":21614,"stargazers_count":1,"open_issues_count":0,"forks_count":3,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-05-07T19:16:13.405Z","etag":null,"topics":["modular-design","selenium","selenium-modular-framework","selenium-webdriver","webdriver","webdriver-3"],"latest_commit_sha":null,"homepage":"https://www.youtube.com/user/fluxay44","language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/rahulrathore44.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","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":"2016-08-04T15:28:10.000Z","updated_at":"2022-01-14T21:42:24.000Z","dependencies_parsed_at":"2023-04-20T16:08:22.716Z","dependency_job_id":null,"html_url":"https://github.com/rahulrathore44/ParalleModularFramework","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/rahulrathore44/ParalleModularFramework","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rahulrathore44%2FParalleModularFramework","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rahulrathore44%2FParalleModularFramework/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rahulrathore44%2FParalleModularFramework/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rahulrathore44%2FParalleModularFramework/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/rahulrathore44","download_url":"https://codeload.github.com/rahulrathore44/ParalleModularFramework/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rahulrathore44%2FParalleModularFramework/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32510723,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-30T13:12:12.517Z","status":"online","status_checked_at":"2026-05-01T02:00:05.856Z","response_time":64,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"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":["modular-design","selenium","selenium-modular-framework","selenium-webdriver","webdriver","webdriver-3"],"created_at":"2024-11-06T10:06:30.552Z","updated_at":"2026-05-01T19:32:36.234Z","avatar_url":"https://github.com/rahulrathore44.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"###Parallel Modular Framework\n\n\nSelenium Modular Framework with Parallel execution support using Testng.\nIt also support the execution in grid enviroment.\nUser need to setup node and hub manually and specify the details inside the xml file.\nRefer to the below example\n\nThe framework has following features \n\n1. Modular Design\n2. Maven based framework\n3. Log4j enabled for logging\n4. Report Generation (Excel \u0026 Extent reports) \n5. Helper class to handle web component such as (Button,Link etc)\n6. Centralized Configuration (Using Properties file)\n7. POM\n8. Support reading the data form Excel and Database.\n9. Parallel Execution \n10. Grid Support\n\n###Here is the basic code:\n\nExtend your test class with TestCaseBase class, all the object to handle the web component will be available.\n\n```java\ntry {\n\t\t\tbutton = new ButtonHelper(dDriver);\n\t\t\talert = new AlertHelper(dDriver);\n\t\t\tjavaScript = new JavaScriptHelper(dDriver);\n\t\t\tbrowser = new BrowserHelper(dDriver);\n\t\t\tchkBox = new CheckBoxOrRadioButtonHelper(dDriver);\n\t\t\twait = new WaitHelper(dDriver, rReader);\n\t\t\tdropDown = new DropDownHelper(dDriver);\n\t\t\tlink = new LinkHelper(dDriver);\n\t\t\tnavigate = new NavigationHelper(dDriver);\n\t\t\ttxtBox = new TextBoxHelper(dDriver);\n\t\t} catch (Exception e) {\n\t\t\tthrow e;\n\t\t}\n```\n\nUse the object directly to interact with web component\n\n```java\npackage com.modular.parallel;\n\nimport org.openqa.selenium.By;\nimport org.testng.Assert;\nimport org.testng.annotations.Test;\n\nimport com.modular.parallel.helper.TestCaseBase;\n\n/**\n * @author rahul.rathore\n *\t\n *\t07-Aug-2016\n *\n */\npublic class TestDropDown extends TestCaseBase {\n\t\n\t@Test\n\tpublic void linkHelperTest() throws Exception {\n\t\tgetDriver().get(\"https://www.pluralsight.com/\");\n\t\twait.elementExistAndVisible(By.partialLinkText(\"Business\"), getConfigReader().getExplicitWait(), 250);\n\t\tlink.clickPartialLink(\"Business\");\n\t\tThread.sleep(3000);\n\t\tAssert.assertEquals(getDriver().getTitle(), \"Group Plans | Pluralsight\");\n\t}\n}\n```\n\n### Use the testng.xml file to run the test cases sequentially or parallely \n\n```xml\n\u003csuite name=\"Suite\" parallel=\"tests\" thread-count=\"5\"\u003e\n\t\u003clisteners\u003e\n\t\t\u003clistener\n\t\t\tclass-name=\"com.modular.parallel.listeners.reportlistener.ExcelReportListener\" /\u003e\n\t\t\u003clistener\n\t\t\tclass-name=\"com.modular.parallel.listeners.reportlistener.ExtentReportListener\" /\u003e\n\t\u003c/listeners\u003e\n\t\u003ctest name=\"Test - 1\"\u003e\n\t\t\u003cclasses\u003e\n\t\t\t\u003cclass name=\"com.modular.parallel.TestDropDown\" /\u003e\n\t\t\u003c/classes\u003e\n\t\u003c/test\u003e\n\t\u003ctest name=\"Test - 2\"\u003e\n\t\t\u003cclasses\u003e\n\t\t\t\u003cclass name=\"com.modular.parallel.TestDropDown\" /\u003e\n\t\t\u003c/classes\u003e\n\t\u003c/test\u003e\n\u003c/suite\u003e\n```\n\n### Use the gridtestng.xml file to run the test cases on grid. User need to setup the node and hub manually and sepcify the details in gridtestng.xml\n\n```xml\n\u003csuite name=\"Suite\" parallel=\"tests\" thread-count=\"5\"\u003e\n\t\u003clisteners\u003e\n\t\t\u003clistener\n\t\t\tclass-name=\"com.modular.parallel.listeners.reportlistener.ExcelReportListener\" /\u003e\n\t\t\u003clistener\n\t\t\tclass-name=\"com.modular.parallel.listeners.reportlistener.ExtentReportListener\" /\u003e\n\t\u003c/listeners\u003e\n\t\u003ctest name=\"Test - 1\"\u003e\n\t\t\u003cparameter name=\"hubUrl\" value=\"http://192.168.0.107:4444/wd/hub\" /\u003e\n\t\t\u003cparameter name=\"browser\" value=\"Chrome\"\u003e\u003c/parameter\u003e\n\t\t\u003cclasses\u003e\n\t\t\t\u003cclass name=\"com.modular.parallel.TestDropDown\" /\u003e\n\t\t\u003c/classes\u003e\n\t\u003c/test\u003e\n\t\u003ctest name=\"Test - 2\"\u003e\n\t\t\u003cparameter name=\"hubUrl\" value=\"http://192.168.0.107:4444/wd/hub\" /\u003e\n\t\t\u003cparameter name=\"browser\" value=\"Firefox\"\u003e\u003c/parameter\u003e\n\t\t\u003cclasses\u003e\n\t\t\t\u003cclass name=\"com.modular.parallel.TestDropDown\" /\u003e\n\t\t\u003c/classes\u003e\n\t\u003c/test\u003e\n\u003c/suite\u003e \n```\n\n### To see this whole thing running simply checkout this project and run this command:\n\n`mvn clean generate-sources test`\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frahulrathore44%2Fparallemodularframework","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Frahulrathore44%2Fparallemodularframework","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frahulrathore44%2Fparallemodularframework/lists"}