Skip to content

Commit 032daa1

Browse files
authored
Merge branch 'trunk' into patch-1
2 parents 1d02332 + ae6c287 commit 032daa1

File tree

6 files changed

+742
-724
lines changed

6 files changed

+742
-724
lines changed

website_and_docs/content/blog/2023/java-8-support.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ the primary reasons for this change is that Java 8 reached the end of active sup
2020
[over a year ago](https://endoflife.date/java). In addition, our default HTTP
2121
Client has not had a major release in several years, and a
2222
[bug](https://github.com/SeleniumHQ/selenium/issues/9528) has been found that we can not fix.
23-
We have decided to move to [move to the native Java HTTP Client](blog/2022/using-java11-httpclient/),
23+
We have decided to [move to the native Java HTTP Client](/blog/2022/using-java11-httpclient/),
2424
but it requires using Java 11 or greater. The sooner we make this change, the sooner
2525
we can avoid dealing with this issue.
2626

website_and_docs/content/documentation/webdriver/elements/interactions.en.md

Lines changed: 151 additions & 153 deletions
Original file line numberDiff line numberDiff line change
@@ -41,6 +41,62 @@ the [center of the element](https://w3c.github.io/webdriver/#dfn-center-point).
4141
If the center of the element is [obscured](https://w3c.github.io/webdriver/#dfn-obscuring) for some reason,
4242
Selenium will return an [element click intercepted](https://w3c.github.io/webdriver/#dfn-element-click-intercepted) error.
4343

44+
45+
{{< tabpane langEqualsHeader=true >}}
46+
{{< tab header="Java" >}}
47+
// Navigate to Url
48+
driver.get("https://www.selenium.dev/selenium/web/inputs.html");
49+
// Click on the element
50+
driver.findElement(By.name("color_input")).click();
51+
52+
{{< /tab >}}
53+
{{< tab header="Python" >}}
54+
55+
# Navigate to url
56+
driver.get("https://www.selenium.dev/selenium/web/inputs.html")
57+
58+
# Click on the element
59+
driver.find_element(By.NAME, "color_input").click()
60+
{{< /tab >}}
61+
{{< tab header="CSharp" >}}
62+
63+
// Navigate to Url
64+
driver.Navigate().GoToUrl("https://www.selenium.dev/selenium/web/inputs.html");
65+
66+
// Click the element
67+
driver.FindElement(By.Name("color_input")).Click();
68+
69+
{{< /tab >}}
70+
{{< tab header="Ruby" >}}
71+
72+
# Navigate to URL
73+
driver.get 'https://www.selenium.dev/selenium/web/inputs.html'
74+
75+
# Click the element
76+
driver.find_element(name: 'color_input').click
77+
78+
{{< /tab >}}
79+
{{< tab header="JavaScript" >}}
80+
81+
// Navigate to Url
82+
await driver.get('https://www.selenium.dev/selenium/web/inputs.html');
83+
84+
// Click the element
85+
await driver.findElement(By.name('color_input')).click();
86+
87+
{{< /tab >}}
88+
{{< tab header="Kotlin" >}}
89+
90+
// Navigate to Url
91+
driver.get("https://www.selenium.dev/selenium/web/inputs.html")
92+
93+
// Click the element
94+
driver.findElement(By.name("color_input")).click();
95+
96+
{{< /tab >}}
97+
{{< /tabpane >}}
98+
99+
44100
## Send keys
45101

46102
The [element send keys command](https://w3c.github.io/webdriver/#dfn-element-send-keys)
@@ -54,98 +110,79 @@ possible keystrokes that WebDriver Supports.
54110

55111
{{< tabpane langEqualsHeader=true >}}
56112
{{< tab header="Java" >}}
57-
import org.openqa.selenium.By;
58-
import org.openqa.selenium.Keys;
59-
import org.openqa.selenium.WebDriver;
60-
import org.openqa.selenium.firefox.FirefoxDriver;
61-
62-
public class HelloSelenium {
63-
public static void main(String[] args) {
64-
WebDriver driver = new FirefoxDriver();
65-
try {
66113
// Navigate to Url
67-
driver.get("https://google.com");
68-
69-
// Enter text "q" and perform keyboard action "Enter"
70-
driver.findElement(By.name("q")).sendKeys("q" + Keys.ENTER);
71-
} finally {
72-
driver.quit();
73-
}
74-
}
75-
}
114+
driver.get("https://www.selenium.dev/selenium/web/inputs.html");
115+
116+
// Clear field to empty it from any previous data
117+
driver.findElement(By.name("email_input")).clear();
118+
119+
//Enter Text
120+
driver.findElement(By.name("email_input")).sendKeys("admin@localhost.dev");
121+
76122

77123
{{< /tab >}}
78124
{{< tab header="Python" >}}
79-
from selenium import webdriver
80-
from selenium.webdriver.common.by import By
81-
from selenium.webdriver.common.keys import Keys
82-
driver = webdriver.Firefox()
125+
83126

84127
# Navigate to url
85-
driver.get("http://www.google.com")
128+
driver.get("https://www.selenium.dev/selenium/web/inputs.html")
129+
130+
# Clear field to empty it from any previous data
131+
driver.find_element(By.NAME, "email_input").clear()
132+
133+
# Enter Text
134+
driver.find_element(By.NAME, "email_input").send_keys("admin@localhost.dev" )
86135

87-
# Enter "webdriver" text and perform "ENTER" keyboard action
88-
driver.find_element(By.NAME, "q").send_keys("webdriver" + Keys.ENTER)
89136
{{< /tab >}}
90137
{{< tab header="CSharp" >}}
91-
using (var driver = new FirefoxDriver())
92-
{
138+
93139
// Navigate to Url
94-
driver.Navigate().GoToUrl("https://google.com");
140+
driver.Navigate().GoToUrl("https://www.selenium.dev/selenium/web/inputs.html");
95141

96-
// Enter "webdriver" text and perform "ENTER" keyboard action
97-
driver.FindElement(By.Name("q")).SendKeys("webdriver" + Keys.Enter);
142+
// Clear field to empty it from any previous data
143+
driver.FindElement(By.Name("email_input")).Clear();
144+
145+
//Enter Text
146+
driver.FindElement(By.Name("email_input")).SendKeys("admin@localhost.dev");
147+
148+
98149
}
99150
{{< /tab >}}
100151
{{< tab header="Ruby" >}}
101-
require 'selenium-webdriver'
102-
driver = Selenium::WebDriver.for :firefox
103-
begin
152+
104153
# Navigate to URL
105-
driver.get 'https://google.com'
154+
driver.get 'https://www.selenium.dev/selenium/web/inputs.html'
106155

107-
# Enter "webdriver" text and perform "ENTER" keyboard action
108-
driver.find_element(name: 'q').send_keys 'webdriver', :return
156+
# Clear field to empty it from any previous data
157+
driver.find_element(name: 'email_input').clear
158+
159+
# Enter Text
160+
driver.find_element(name: 'email_input').send_keys 'admin@localhost.dev'
109161

110-
ensure
111-
driver.quit
112-
end
113162
{{< /tab >}}
114163
{{< tab header="JavaScript" >}}
115-
const {Builder, By, Key} = require('selenium-webdriver');
116164

117-
(async function example() {
118-
let driver = await new Builder().forBrowser('firefox').build();
119-
120-
try {
121165
// Navigate to Url
122-
await driver.get('https://www.google.com');
123-
124-
// Enter text "webdriver" and perform keyboard action "Enter"
125-
await driver.findElement(By.name('q')).sendKeys('webdriver', Key.ENTER);
126-
}
127-
finally {
128-
await driver.quit();
129-
}
130-
})();
166+
await driver.get('https://www.selenium.dev/selenium/web/inputs.html');
167+
168+
//Clear field to empty it from any previous data
169+
await driver.findElement(By.name('email_input')).clear();
170+
171+
// Enter text
172+
await driver.findElement(By.name('email_input')).sendKeys('admin@localhost.dev');
173+
131174
{{< /tab >}}
132175
{{< tab header="Kotlin" >}}
133-
import org.openqa.selenium.By
134-
import org.openqa.selenium.Keys
135-
import org.openqa.selenium.firefox.FirefoxDriver
136-
137-
fun main() {
138-
val driver = FirefoxDriver()
139-
try {
176+
140177
// Navigate to Url
141-
driver.get("https://google.com")
178+
driver.get("https://www.selenium.dev/selenium/web/inputs.html")
142179

143-
// Enter text "q" and perform keyboard action "Enter"
144-
driver.findElement(By.name("q")).sendKeys("q" + Keys.ENTER)
145-
} finally {
146-
driver.quit()
147-
}
148-
}
180+
//Clear field to empty it from any previous data
181+
driver.findElement(By.name("email_input")).clear()
182+
183+
// Enter text
184+
driver.findElement(By.name("email_input")).sendKeys("admin@localhost.dev")
185+
149186
{{< /tab >}}
150187
{{< /tabpane >}}
151188

@@ -160,109 +197,70 @@ with a`content-editable` attribute. If these conditions are not met,
160197

161198
{{< tabpane langEqualsHeader=true >}}
162199
{{< tab header="Java" >}}
163-
import org.openqa.selenium.By;
164-
import org.openqa.selenium.WebDriver;
165-
import org.openqa.selenium.WebElement;
166-
import org.openqa.selenium.chrome.ChromeDriver;
167-
168-
public class clear {
169-
public static void main(String[] args) {
170-
WebDriver driver = new ChromeDriver();
171-
try {
172200
// Navigate to Url
173-
driver.get("https://www.google.com");
174-
// Store 'SearchInput' element
175-
WebElement searchInput = driver.findElement(By.name("q"));
176-
searchInput.sendKeys("selenium");
177-
// Clears the entered text
178-
searchInput.clear();
179-
} finally {
180-
driver.quit();
181-
}
182-
}
183-
}
201+
driver.get("https://www.selenium.dev/selenium/web/inputs.html");
202+
203+
// Clear field to empty it from any previous data
204+
driver.findElement(By.name("email_input")).clear();
205+
206+
207+
184208
{{< /tab >}}
185209
{{< tab header="Python" >}}
186-
from selenium import webdriver
187-
from selenium.webdriver.common.by import By
188-
driver = webdriver.Chrome()
210+
189211

190212
# Navigate to url
191-
driver.get("http://www.google.com")
192-
# Store 'SearchInput' element
193-
SearchInput = driver.find_element(By.NAME, "q")
194-
SearchInput.send_keys("selenium")
195-
# Clears the entered text
196-
SearchInput.clear()
213+
driver.get("https://www.selenium.dev/selenium/web/inputs.html")
214+
215+
# Clear field to empty it from any previous data
216+
driver.find_element(By.NAME, "email_input").clear()
217+
218+
197219
{{< /tab >}}
198220
{{< tab header="CSharp" >}}
199-
using OpenQA.Selenium;
200-
using OpenQA.Selenium.Chrome;
201-
using System;
202-
203-
namespace SnipetProjectDelete
204-
{
205-
class Program
206-
{
207-
static void Main(string[] args)
208-
{
209-
IWebDriver driver = new ChromeDriver();
210-
try
211-
{
212-
// Navigate to Url
213-
driver.Navigate().GoToUrl(@"https://www.google.com");
214-
// Store 'SearchInput' element
215-
IWebElement searchInput = driver.FindElement(By.Name("q"));
216-
searchInput.SendKeys("selenium");
217-
// Clears the entered text
218-
searchInput.Clear();
219-
}
220-
finally
221-
{
222-
driver.Quit();
223-
}
224-
}
225-
}
221+
222+
// Navigate to Url
223+
driver.Navigate().GoToUrl("https://www.selenium.dev/selenium/web/inputs.html");
224+
225+
// Clear field to empty it from any previous data
226+
driver.FindElement(By.Name("email_input")).Clear();
227+
228+
229+
226230
}
227231
{{< /tab >}}
228232
{{< tab header="Ruby" >}}
229-
require 'selenium-webdriver'
230-
driver = Selenium::WebDriver.for :chrome
231-
begin
233+
232234
# Navigate to URL
233-
driver.get 'https://google.com'
234-
# store 'search_input' element
235-
search_input = driver.find_element(name: 'q')
236-
search_input.send_keys('selenium')
237-
# Clears the entered text
238-
search_input.clear
239-
ensure
240-
driver.quit
241-
end
235+
driver.get 'https://www.selenium.dev/selenium/web/inputs.html'
236+
237+
# Clear field to empty it from any previous data
238+
driver.find_element(name: 'email_input').clear
239+
240+
{{< /tab >}}
241+
{{< tab header="JavaScript" >}}
242+
243+
// Navigate to Url
244+
await driver.get('https://www.selenium.dev/selenium/web/inputs.html');
245+
246+
//Clear field to empty it from any previous data
247+
await driver.findElement(By.name('email_input')).clear();
248+
249+
242250
{{< /tab >}}
243-
{{< tab header="JavaScript" text=true >}}
244-
{{< gh-codeblock path="examples/javascript/test/elements/interactions.spec.js#L18-L20" >}}
245-
{{< /tab >}}
246251
{{< tab header="Kotlin" >}}
247-
import org.openqa.selenium.By
248-
import org.openqa.selenium.chrome.ChromeDriver
249-
fun main() {
250-
val driver = ChromeDriver()
251-
try {
252+
252253
// Navigate to Url
253-
driver.get("https://www.google.com")
254-
// Store 'searchInput' element
255-
val searchInput = driver.findElement(By.name("q"))
256-
searchInput.sendKeys("selenium")
257-
// Clears the entered text
258-
searchInput.clear()
259-
} finally {
260-
driver.quit()
261-
}
262-
}
254+
driver.get("https://www.selenium.dev/selenium/web/inputs.html")
255+
256+
//Clear field to empty it from any previous data
257+
driver.findElement(By.name("email_input")).clear()
258+
259+
263260
{{< /tab >}}
264261
{{< /tabpane >}}
265262

263+
266264
## Submit
267265

268266
In Selenium 4 this is no longer implemented with a separate endpoint and functions by executing a script. As

0 commit comments

Comments
 (0)