{"id":19380346,"url":"https://github.com/atata-framework/atata-webdriverextras","last_synced_at":"2025-07-15T15:35:16.517Z","repository":{"id":58591477,"uuid":"74686416","full_name":"atata-framework/atata-webdriverextras","owner":"atata-framework","description":"A set of C#/.NET extension methods and other extra classes for Selenium WebDriver","archived":false,"fork":false,"pushed_at":"2025-06-27T11:06:35.000Z","size":357,"stargazers_count":11,"open_issues_count":1,"forks_count":1,"subscribers_count":4,"default_branch":"main","last_synced_at":"2025-07-12T17:22:24.698Z","etag":null,"topics":["atata","csharp","selenium","selenium-webdriver","test-automation","testing","webdriver"],"latest_commit_sha":null,"homepage":"","language":"C#","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/atata-framework.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","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,"zenodo":null},"funding":{"open_collective":"atata"}},"created_at":"2016-11-24T15:45:43.000Z","updated_at":"2025-06-27T11:06:38.000Z","dependencies_parsed_at":"2025-07-05T15:45:47.333Z","dependency_job_id":null,"html_url":"https://github.com/atata-framework/atata-webdriverextras","commit_stats":{"total_commits":266,"total_committers":3,"mean_commits":88.66666666666667,"dds":0.1842105263157895,"last_synced_commit":"0af69e778870ce70be21e5f905c3fb67eda4337e"},"previous_names":[],"tags_count":17,"template":false,"template_full_name":null,"purl":"pkg:github/atata-framework/atata-webdriverextras","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/atata-framework%2Fatata-webdriverextras","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/atata-framework%2Fatata-webdriverextras/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/atata-framework%2Fatata-webdriverextras/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/atata-framework%2Fatata-webdriverextras/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/atata-framework","download_url":"https://codeload.github.com/atata-framework/atata-webdriverextras/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/atata-framework%2Fatata-webdriverextras/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":265443440,"owners_count":23766407,"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":["atata","csharp","selenium","selenium-webdriver","test-automation","testing","webdriver"],"created_at":"2024-11-10T09:13:41.752Z","updated_at":"2025-07-15T15:35:16.227Z","avatar_url":"https://github.com/atata-framework.png","language":"C#","funding_links":["https://opencollective.com/atata"],"categories":[],"sub_categories":[],"readme":"# Atata.WebDriverExtras\n\n[![NuGet](http://img.shields.io/nuget/v/Atata.WebDriverExtras.svg?style=flat)](https://www.nuget.org/packages/Atata.WebDriverExtras/)\n[![GitHub release](https://img.shields.io/github/release/atata-framework/atata-webdriverextras.svg)](https://github.com/atata-framework/atata-webdriverextras/releases)\n[![Build status](https://dev.azure.com/atata-framework/atata-webdriverextras/_apis/build/status/atata-webdriverextras-ci?\u0026branchName=main)](https://dev.azure.com/atata-framework/atata-webdriverextras/_build/latest?definitionId=11\u0026branchName=main)\n[![Gitter](https://badges.gitter.im/atata-framework/atata-webdriverextras.svg)](https://gitter.im/atata-framework/atata-webdriverextras)\n[![Slack](https://img.shields.io/badge/join-Slack-green.svg?colorB=4EB898)](https://join.slack.com/t/atata-framework/shared_invite/zt-5j3lyln7-WD1ZtMDzXBhPm0yXLDBzbA)\n[![Atata docs](https://img.shields.io/badge/docs-Atata_Framework-orange.svg)](https://atata.io)\n[![Twitter](https://img.shields.io/badge/follow-@AtataFramework-blue.svg)](https://twitter.com/AtataFramework)\n\nA set of C#/.NET extension methods and other extra classes for Selenium WebDriver.\nIs a part of [Atata Framework](https://atata.io).\n\n*The package targets .NET Standard 2.0, which supports .NET 5+, .NET Framework 4.6.1+ and .NET Core/Standard 2.0+.*\n\n**[What's new in v3.2.0](https://github.com/atata-framework/atata-webdriverextras/releases/tag/v3.2.0)**\n\n## Usage\n\nAdd `Atata` namespace:\n\n```C#\nusing Atata;\n```\n\nUse extension methods for `IWebDriver`, `IWebElement`, `By`, etc.:\n\n```C#\nIWebDriver driver = new ChromeDriver();\n\n// Sets the retry timeout as 7 seconds. The default value of the timeout is 5 seconds.\nRetrySettings.Timeout = TimeSpan.FromSeconds(7);\n\n// Get the visible element within 7 seconds. Throws ElementNotFoundException if the element is not found.\nIWebElement? element1 = driver.Get(By.Id(\"some-id\"));\n\n// Get the visible element safely (without throw on failure) within 7 seconds. Returns null if the element is not found.\nIWebElement? element2 = driver.Get(By.XPath(\".//some[xpath]\").Safely());\n\n// Get all the visible elements within 15 seconds.\nReadOnlyCollection\u003cIWebElement\u003e elements = driver.GetAll(By.ClassName(\"some-class\").Within(TimeSpan.FromSeconds(15)));\n\n// Get the visible element unsafely at once (without retry).\nIWebElement? element3 = driver.Get(By.Id(\"another-id\").Visible().AtOnce());\n\n// Get the hidden element safely at once.\nIWebElement? element4 = driver.Get(By.CssSelector(\".some-css\").Hidden().Safely().AtOnce());\n\n// Gets a value indicating whether the element exists at once.\nbool isElementExists = driver.Exists(By.Name(\"some-name\").Safely().AtOnce());\n\n// Waits until the element will be missing within 15 seconds; else throws ElementNotMissingException.\ndriver.Missing(By.Name(\"some-name\").Within(TimeSpan.FromSeconds(15)));\n\n// Get the element using the chain of By.\nIWebElement? element5 = driver.Get(By.Id(\"root-container\").\n    Then(By.XPath(\"./div[@class='sub-container']\")).\n    Then(By.CssSelector(\"span.item\")));\n\n// Set default element visibility for search globally.\nSearchOptions.DefaultVisibility = Visibility.Visible;\n\n// After DefaultVisibility is set to Visibility.Visible, the code below will find only visible element.\nIWebElement? element6 = driver.Get(By.Id(\"some-id\"));\n```\n\n## License\n\nAtata is an open source software, licensed under the Apache License 2.0.\nSee [LICENSE](LICENSE) for details.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fatata-framework%2Fatata-webdriverextras","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fatata-framework%2Fatata-webdriverextras","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fatata-framework%2Fatata-webdriverextras/lists"}