-
Notifications
You must be signed in to change notification settings - Fork 562
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request #2292 from selenide/merge-selenide-selenoid
Merge selenide selenoid
- Loading branch information
Showing
26 changed files
with
887 additions
and
6 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,95 @@ | ||
# Changelog | ||
|
||
## 6.15.0 (released 2x.05.2023) | ||
Project "selenide-selenoid" was merged into project "selenide". | ||
|
||
## 2.3.7 (released 15.05.2023) | ||
* Make the method $.download() wait for the full completion of download #19 | ||
* #24 #26 bump Selenide from 6.12.4 to 6.14.1 | ||
|
||
## 2.3.6 (released 22.03.2023) | ||
* bump Selenide from 6.11.1 to 6.12.4 | ||
* bump slf4j from 2.0.6 to 2.0.7 | ||
|
||
## 2.3.5 (released 23.01.2023) | ||
* declare Selenide dependency with `api` scope | ||
* upgrade to Selenide 6.11.1 | ||
* update dependencies | ||
|
||
## 2.3.4 (released 03.01.2023) | ||
* upgrade to Selenide 6.11.0 | ||
|
||
## 2.3.3 (released 08.12.2022) | ||
* upgrade to Selenide 6.10.2 | ||
|
||
## 2.3.2 | ||
* upgrade to Selenide 6.10.0 | ||
|
||
## 2.3.1 | ||
* upgrade to Selenide 6.9.0 | ||
|
||
## 2.3.0 (released 27.09.2022) | ||
* upgrade to Selenide 6.8.0 | ||
|
||
## 2.2.4 (released 14.08.2022) | ||
* upgrade to Selenide 6.7.2 | ||
* #20 fix reading multiline clipboard content | ||
|
||
## 2.2.3 (released 20.05.2022) | ||
* upgrade to Selenide 6.5.0 | ||
|
||
## 2.2.2 (released 16.05.2022) | ||
* #13 Now selenide-selenoid doesn't fetch `selenide-proxy` as transitive dependency, only `selenide`. | ||
* upgrade to Selenide 6.4.0 | ||
|
||
## 2.2.1 (released 16.02.2022) | ||
* upgrade to Selenide 6.3.2 | ||
|
||
## 2.2.0 (released 07.02.2022) | ||
* upgrade to Selenide 6.3.0 | ||
* upgrade to Selenium webdriver 4.1.2 | ||
|
||
## 2.1.0 (released 24.11.2021) | ||
* upgrade to Selenide 6.1.0 | ||
* upgrade to Selenium webdriver 4.1.0 | ||
|
||
## 2.0.0 (released 25.10.2021) | ||
* upgrade to Selenide 6.0.0 | ||
* upgrade to Selenium webdriver 4.0.0 | ||
|
||
## 1.2.0 (released 28.09.2021) | ||
* upgrade to Selenide 5.25.0 | ||
|
||
## 1.1.7 (released 13.09.2021) | ||
* add Selenide and other dependencies | ||
|
||
## 1.1.6 (released 13.09.2021) | ||
* upgrade to Selenide 5.24.3 | ||
|
||
## 1.1.5 (released 29.08.2021) | ||
* upgrade to Selenide 5.24.0 | ||
|
||
## 1.1.4 (released 17.07.2021) | ||
* upgrade to Selenide 5.23.0 | ||
|
||
## 1.1.3 (released 08.06.2021) | ||
* #10 fix ClassCastException when using EventFiringDriver | ||
* #10 upgrade to Selenide 5.22.0 | ||
|
||
## 1.1.2 (released 11.05.2021) | ||
* #9 add support for BasicAuth when downloading files from Selenoid | ||
|
||
## 1.1.1 (released 23.04.2021) | ||
* upgrade to Selenide 5.20.4 | ||
* upgrade to Gradle 7.0 | ||
|
||
## 1.1.0 (released 20.03.2021) | ||
* #6 Added get & set clipboard methods -- thanks to Dmitriy Budim | ||
* upgrade to Selenide 5.20.0 | ||
|
||
## 1.0.1 (released 29.01.2021) | ||
* #4 Support local browsers too | ||
* upgrade to Selenide 5.18.0 | ||
|
||
## 1.0.0 (released 20.11.2020) | ||
* initial version |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,26 @@ | ||
# How to run tests | ||
|
||
## Running unit-tests | ||
> ./gradlew test | ||
## Running integration tests | ||
> ./gradlew selenoidTests | ||
To run browser tests, you need to have Selenoid installed. | ||
Also, we assume you have file `~/.aerokube/selenoid/browsers.json` with such a block: | ||
|
||
```json | ||
{ | ||
"chrome": { | ||
"default": "chrome", | ||
"versions": { | ||
"100.0": { | ||
"image": "sskorol/selenoid_chromium_vnc:100.0", | ||
"port": "4444", | ||
"path": "/", | ||
"privileged": true | ||
} | ||
} | ||
} | ||
} | ||
``` |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,50 @@ | ||
Selenide Selenoid plugin | ||
================================ | ||
|
||
A [Selenide](https://selenide.org) extension for working with Selenoid | ||
|
||
## Why it's needed? | ||
|
||
Most Selenide features work with Selenoid out of the box. | ||
There are only a few things that might not work: proxy and downloading files. | ||
1. Selenide proxy generally works with Selenoid, except one case: when tests and Selenoid are run on different machines, | ||
and "test machine" is not accessible from "selenoid machine". | ||
2. Downloading files: Selenide has 3 methods for downloading files: `HTTPGET`, `PROXY` and `FOLDER`. | ||
* `HTTPGET` and `PROXY` work in Selenoid as usually | ||
* `FOLDER` doesn't work in Selenoid because the downloads folder is inside the container. | ||
|
||
This problem is addressed by `selenide-selenoid` plugin: _it can get files from Selenoid container_. | ||
|
||
## Features | ||
Currently, the plugin supports the following features: | ||
* File download | ||
* Access to clipboard (get & set & verify clipboard contents) | ||
* BasicAuth | ||
|
||
We are going to implement more features like reading logs and videos etc. | ||
|
||
## Usage | ||
1. Import `com.codeborne:selenide-selenoid:6.15.0` | ||
2. Set `Configuration.fileDownload = FOLDER;` | ||
3. Use method `$.download()` as usually. | ||
|
||
## How it works? | ||
When you call `$("a#report").download()` method, Selenide-selenoid plugin | ||
1. clicks the element, | ||
2. lets the browser download file to its default location, | ||
3. uses [Selenoid API](https://aerokube.com/selenoid/latest/#_accessing_files_downloaded_with_browser) to get the downloaded file. | ||
|
||
## Sample project | ||
|
||
This is a sample project using `selenide-selenoid` plugin: | ||
* [github/selenide-examples/selenoid-sample](https://github.com/selenide-examples/selenoid-sample) | ||
|
||
## Feedback | ||
_Feel free to share your feedback!_ | ||
|
||
Register [GitHub issues](https://github.com/selenide/selenide/issues), write to | ||
[![chat](https://img.shields.io/badge/chat-green.svg)](https://gitter.im/codeborne/selenide?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge) | ||
or | ||
[![чат](https://img.shields.io/badge/%D1%87%D0%B0%D1%82-green.svg)](https://gitter.im/codeborne/selenide-ru?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge). | ||
|
||
[![Follow](https://img.shields.io/twitter/follow/selenide.svg?style=social&label=Follow)](https://twitter.com/selenide) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,30 @@ | ||
ext { | ||
artifactId = 'selenide-selenoid' | ||
} | ||
|
||
dependencies { | ||
api project(":statics") | ||
testImplementation "org.seleniumhq.selenium:selenium-http-jdk-client:$seleniumVersion" | ||
implementation("org.apache.httpcomponents.client5:httpclient5:$httpClientVersion") | ||
implementation("commons-io:commons-io:2.12.0") | ||
|
||
testImplementation project(':statics').sourceSets.test.output | ||
testImplementation project(':modules:core').sourceSets.test.output | ||
testRuntimeOnly project(':modules:proxy') | ||
testImplementation("org.junit.jupiter:junit-jupiter-api:$junitVersion") | ||
|
||
testImplementation("org.junit.jupiter:junit-jupiter:$junitVersion") | ||
testImplementation("org.assertj:assertj-core:$assertjVersion") | ||
testImplementation("org.mockito:mockito-core:$mockitoVersion") | ||
testRuntimeOnly("org.slf4j:slf4j-simple:$slf4jVersion") | ||
} | ||
|
||
task selenoidTests(type: Test) { | ||
systemProperties['selenide.browser'] = 'chrome' | ||
include 'it/selenoid/**/*' | ||
exclude 'org/selenide/**/*' | ||
exclude 'com/codeborne/**/*' | ||
outputs.upToDateWhen { false } | ||
} | ||
|
||
apply from: rootProject.file('gradle/publish-module.gradle') |
Oops, something went wrong.