{"id":14978769,"url":"https://github.com/fluentlenium/fluentlenium","last_synced_at":"2025-05-13T21:04:18.947Z","repository":{"id":37823741,"uuid":"2088736","full_name":"FluentLenium/FluentLenium","owner":"FluentLenium","description":"FluentLenium is a web \u0026 mobile automation framework which extends Selenium to write reliable and resilient UI functional tests. This framework is React ready. Written and maintained by people who are automating browser-based tests on a daily basis.","archived":false,"fork":false,"pushed_at":"2025-04-28T03:01:30.000Z","size":19560,"stargazers_count":883,"open_issues_count":31,"forks_count":217,"subscribers_count":49,"default_branch":"develop","last_synced_at":"2025-04-28T12:04:08.412Z","etag":null,"topics":["assertj","await","fluentlenium","html","java","javascript","junit","selenium","spock","spring","testng"],"latest_commit_sha":null,"homepage":"https://fluentlenium.io","language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/FluentLenium.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","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},"funding":{"custom":["https://xscode.com/filipcynarski/FluentLenium"]}},"created_at":"2011-07-22T13:26:37.000Z","updated_at":"2025-04-15T05:43:48.000Z","dependencies_parsed_at":"2023-11-03T10:28:30.942Z","dependency_job_id":"297f35af-6b9a-467f-b3b9-76d2d500fd4e","html_url":"https://github.com/FluentLenium/FluentLenium","commit_stats":{"total_commits":2799,"total_committers":83,"mean_commits":33.72289156626506,"dds":0.8206502322257949,"last_synced_commit":"6674ac80b0ab990c1ee5b8417109fc3134f27eeb"},"previous_names":[],"tags_count":110,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/FluentLenium%2FFluentLenium","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/FluentLenium%2FFluentLenium/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/FluentLenium%2FFluentLenium/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/FluentLenium%2FFluentLenium/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/FluentLenium","download_url":"https://codeload.github.com/FluentLenium/FluentLenium/tar.gz/refs/heads/develop","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":251311330,"owners_count":21569009,"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":["assertj","await","fluentlenium","html","java","javascript","junit","selenium","spock","spring","testng"],"created_at":"2024-09-24T13:58:21.401Z","updated_at":"2025-04-28T12:04:31.697Z","avatar_url":"https://github.com/FluentLenium.png","language":"Java","readme":"# What is FluentLenium ?\n\n![FluentLenium CI pipeline](https://github.com/FluentLenium/FluentLenium/workflows/FluentLenium%20CI%20pipeline/badge.svg)\n[![Coveralls](https://coveralls.io/repos/github/FluentLenium/FluentLenium/badge.svg?branch=develop)](https://coveralls.io/github/FluentLenium/FluentLenium?branch=develop)\n[![javadoc](https://javadoc.io/badge2/io.fluentlenium/fluentlenium-core/javadoc.svg)](https://fluentlenium.io/javadoc)\n[![Maven Central](https://img.shields.io/maven-central/v/io.fluentlenium/fluentlenium-parent.svg)](http://search.maven.org/#search%7Cgav%7C1%7Cg%3A%22io.fluentlenium%22%20AND%20a%3A%22fluentlenium-parent%22)\n[![Website](https://img.shields.io/website-up-down-green-red/http/fluentlenium.io.svg)](https://fluentlenium.io)\n\nFluentLenium helps you writing readable, reusable, reliable and resilient UI functional tests for the browser and mobile\napp.\n\nFluentLenium provides a Java [fluent interface](http://en.wikipedia.org/wiki/Fluent_interface) to\n[Selenium](http://www.seleniumhq.org/), and brings some [extra features](https://fluentlenium.io/docs/key_features/)\nto avoid common issues faced by Selenium users.\n\nFluentLenium is shipped with adapters for [JUnit4](https://junit.org/junit4/), [JUnit5](https://junit.org/junit5/)\n, [TestNG](http://testng.org/doc/index.html), [Spock](http://spockframework.org/)\n, [Kotest](https://kotest.io/)\n, [Spring TestNG](https://docs.spring.io/spring-framework/docs/current/javadoc-api/org/springframework/test/context/testng/AbstractTestNGSpringContextTests.html)\nand [Cucumber](https://cucumber.io), but it can also be\nused [standalone](https://fluentlenium.io/docs/test-runners/#standalone-mode).\n\nFluentLenium best integrates with [AssertJ](http://joel-costigliola.github.io/assertj/), but you can also choose to use\nthe [assertion framework](https://fluentlenium.io/docs/assertion-libraries/) you want.\n\nFluentLenium can be used to make your [mobile Appium tests](https://fluentlenium.io/docs/appium-support/) fluent and\neasier to maintain.\n\nFluentLenium gives you [multiple methods](https://fluentlenium.io/docs/test-methods/) which help you write tests\nquicker. All those methods are tested daily by commercial regression test suites maintained by project developers.\n\n# Quickstart\n\nQuickstart steps are described in deail in our [separate documentation section](https://fluentlenium.io/quickstart/).\n\n## Example\n\n```java\npublic class DuckDuckGoTest extends FluentTest {\n    @Test\n    public void titleOfDuckDuckGoShouldContainSearchQueryName() {\n        goTo(\"https://duckduckgo.com\");\n        $(\"#search_form_input_homepage\").fill().with(\"FluentLenium\");\n        $(\"#search_button_homepage\").submit();\n        assertThat(window().title()).contains(\"FluentLenium\");\n    }\n}\n```\n\nMore detailed FluentLenium examples are available\nin [examples section](https://github.com/FluentLenium/FluentLenium/tree/develop/examples). Examples include `headless`\nChrome and Firefox, [Spring](https://spring.io/)-based framework supporting multiple browsers\nand [much more](https://fluentlenium.io/quickstart/#more-examples).\n\n## Documentation\n\nDetailed documentation is available on [fluentlenium.io](https://fluentlenium.io).\n\n## Javadoc\n\nJavadoc is available on [fluentlenium.io/javadoc](https://fluentlenium.io/javadoc).\n\n# Modules summary\n\nTo help you navigate through FluentLenium, here's a short summary about its modules and what support they provide.\n\n- **fluentlenium-core**: Contains core functionality of FluentLenium, including webdriver configuration, page object\n  support and injection logic.\n- **fluentlenium-junit**: Provides support for integration with [JUnit 4](https://junit.org/junit4/).\n- **fluentlenium-junit-jupiter**: Provides support for integration with [JUnit 5](https://junit.org/junit5/).\n- **fluentlenium-testng**: Provides support for integration with [TestNG](https://testng.org/doc/index.html).\n- **fluentlenium-spock**: Provides support for integration with [Spock](http://spockframework.org).\n- **fluentlenium-spring-testng**: Provides support for integration\n  with [Spring Test NG](https://docs.spring.io/spring-framework/docs/current/javadoc-api/org/springframework/test/context/testng/AbstractTestNGSpringContextTests.html)\n- **fluentlenium-kotest**: Provides support for integration with [Kotest](https://kotest.io)\n- **fluentlenium-kotest-assertions**: Provides custom [Kotest matchers](https://kotest.io/docs/assertions/matchers.html)\n- **fluentlenium-cucumber**: Provides support for integration with [Cucumber](https://cucumber.io). This may be combined\n  with any of the modules above that are also supported by Cucumber.\n- **fluentlenium-assertj**: Provides [AssertJ](http://joel-costigliola.github.io/assertj/) assertions for FluentLenium\n  specific objects like `FluentWebElement`, `FluentList` and `FluentPage`.\n- **fluentlenium-integration-tests**: Integration tests for validating the correctness of FluentLenium features\n  internally.\n- **fluentlenium-coverage-report**: Creates jacoco test coverage report.\n- **fluentlenium-ide-support**: Though not an actual Maven module, it contains resources to make working with\n  FluentLenium in the IDE easier.\n\n# Contact Us\n\nIf you have any comment, remark or issue, please open an issue on\n[FluentLenium Issue Tracker](https://github.com/FluentLenium/FluentLenium/issues)\n","funding_links":["https://xscode.com/filipcynarski/FluentLenium"],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffluentlenium%2Ffluentlenium","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ffluentlenium%2Ffluentlenium","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffluentlenium%2Ffluentlenium/lists"}