关于网络元素的信息
元素相关的知识.
您可以查询有关特定元素的许多详细信息。
是否显示
此方法用于检查连接的元素是否正确显示在网页上. 返回一个 Boolean 值, 如果连接的元素显示在当前的浏览器上下文中,则为True,否则返回false。
此功能于W3C规范中提及, 但由于无法覆盖所有潜在条件而无法定义。 因此,Selenium不能期望驱动程序直接实现这种功能,现在依赖于直接执行大量JavaScript函数。 这个函数对一个元素的性质和在树中的关系做了许多近似的判断,以返回一个值。
// Navigate to Url driver.get("https://www.selenium.dev/selenium/web/inputs.html"); // isDisplayed // Get boolean value for is element display/examples/java/src/test/java/dev/selenium/elements/InformationTest.java
package dev.selenium.elements; import org.junit.jupiter.api.Test; import org.openqa.selenium.By; import org.openqa.selenium.Rectangle; import org.openqa.selenium.WebDriver; import org.openqa.selenium.WebElement; import org.openqa.selenium.chrome.ChromeDriver; import java.time.Duration; import static org.junit.jupiter.api.Assertions.assertEquals; import static org.junit.jupiter.api.Assertions.assertTrue; public class InformationTest { @Test public void informationWithElements() { WebDriver driver = new ChromeDriver(); driver.manage().timeouts().implicitlyWait(Duration.ofMillis(500)); // Navigate to Url driver.get("https://www.selenium.dev/selenium/web/inputs.html"); // isDisplayed // Get boolean value for is element display boolean isEmailVisible = driver.findElement(By.name("email_input")).isDisplayed(); assertTrue(isEmailVisible); // isEnabled // returns true if element is enabled else returns false boolean isEnabledButton = driver.findElement(By.name("button_input")).isEnabled(); assertTrue(isEnabledButton); // isSelected // returns true if element is checked else returns false boolean isSelectedCheck = driver.findElement(By.name("checkbox_input")).isSelected(); assertTrue(isSelectedCheck); // TagName // returns TagName of the element String tagNameInp = driver.findElement(By.name("email_input")).getTagName(); assertEquals("input", tagNameInp); // GetRect // Returns height, width, x and y coordinates referenced element Rectangle res = driver.findElement(By.name("range_input")).getRect(); // Rectangle class provides getX,getY, getWidth, getHeight methods assertEquals(10, res.getX()); // Retrieves the computed style property 'font-size' of field String cssValue = driver.findElement(By.name("color_input")).getCssValue("font-size"); assertEquals(cssValue, "13.3333px"); // GetText // Retrieves the text of the element String text = driver.findElement(By.tagName("h1")).getText(); assertEquals(text, "Testing Inputs"); // FetchAttributes // identify the email text box WebElement emailTxt = driver.findElement(By.name(("email_input"))); // fetch the value property associated with the textbox String valueInfo = emailTxt.getAttribute("value"); assertEquals(valueInfo,"admin@localhost"); driver.quit(); } } driver.get("https://www.selenium.dev/selenium/web/inputs.html") # isDisplayed is_email_visible = driver.find_element(By.NAME, "email_input").is_displayed()/examples/python/tests/elements/test_information.py
from selenium import webdriver from selenium.webdriver.common.by import By import pytest def test_informarion(): # Initialize WebDriver driver = webdriver.Chrome() driver.implicitly_wait(0.5) driver.get("https://www.selenium.dev/selenium/web/inputs.html") # isDisplayed is_email_visible = driver.find_element(By.NAME, "email_input").is_displayed() assert is_email_visible == True # isEnabled is_enabled_button = driver.find_element(By.NAME, "button_input").is_enabled() assert is_enabled_button == True # isSelected is_selected_check = driver.find_element(By.NAME, "checkbox_input").is_selected() assert is_selected_check == True # TagName tag_name_inp = driver.find_element(By.NAME, "email_input").tag_name assert tag_name_inp == "input" # GetRect rect = driver.find_element(By.NAME, "range_input").rect assert rect["x"] == 10 # CSS Value css_value = driver.find_element(By.NAME, "color_input").value_of_css_property( "font-size" ) assert css_value == "13.3333px" # GetText text = driver.find_element(By.TAG_NAME, "h1").text assert text == "Testing Inputs" # FetchAttributes email_txt = driver.find_element(By.NAME, "email_input") value_info = email_txt.get_attribute("value") assert value_info == "admin@localhost" // Navigate to Url driver.Url= "https://www.selenium.dev/selenium/web/inputs.html"; // isDisplayed // Get boolean value for is element display bool isEmailVisible = driver.FindElement(By.Name("email_input")).Displayed;/examples/dotnet/SeleniumDocs/Elements/InformationTest.cs
using System; using System.Drawing; using Microsoft.VisualStudio.TestTools.UnitTesting; using OpenQA.Selenium; using OpenQA.Selenium.Chrome; namespace SeleniumDocs.Elements { [TestClass] public class InformationTest { [TestMethod] public void TestInformationCommands(){ WebDriver driver = new ChromeDriver(); driver.Manage().Timeouts().ImplicitWait = TimeSpan.FromMilliseconds(500); // Navigate to Url driver.Url= "https://www.selenium.dev/selenium/web/inputs.html"; // isDisplayed // Get boolean value for is element display bool isEmailVisible = driver.FindElement(By.Name("email_input")).Displayed; Assert.AreEqual(isEmailVisible, true); // isEnabled // returns true if element is enabled else returns false bool isEnabledButton = driver.FindElement(By.Name("button_input")).Enabled; Assert.AreEqual(isEnabledButton, true); // isSelected // returns true if element is checked else returns false bool isSelectedCheck = driver.FindElement(By.Name("checkbox_input")).Selected; Assert.AreEqual(isSelectedCheck, true); // TagName // returns TagName of the element string tagNameInp = driver.FindElement(By.Name("email_input")).TagName; Assert.AreEqual(tagNameInp, "input"); // Get Location and Size // Get Location IWebElement rangeElement = driver.FindElement(By.Name("range_input")); Point point = rangeElement.Location; Assert.IsNotNull(point.X); // Get Size int height=rangeElement.Size.Height; Assert.IsNotNull(height); // Retrieves the computed style property 'font-size' of field string cssValue = driver.FindElement(By.Name("color_input")).GetCssValue("font-size"); Assert.AreEqual(cssValue, "13.3333px"); // GetText // Retrieves the text of the element string text = driver.FindElement(By.TagName("h1")).Text; Assert.AreEqual(text, "Testing Inputs"); // FetchAttributes // identify the email text box IWebElement emailTxt = driver.FindElement(By.Name("email_input")); // fetch the value property associated with the textbox string valueInfo = emailTxt.GetAttribute("value"); Assert.AreEqual(valueInfo, "admin@localhost"); //Quit the driver driver.Quit(); } } } displayed_value = driver.find_element(name: 'email_input').displayed?/examples/ruby/spec/elements/information_spec.rb
# frozen_string_literal: true require 'spec_helper' RSpec.describe 'Element Information' do let(:driver) { start_session } let(:url) { 'https://www.selenium.dev/selenium/web/inputs.html' } before { driver.get(url) } it 'checks if an element is displayed' do displayed_value = driver.find_element(name: 'email_input').displayed? expect(displayed_value).to be_truthy end it 'checks if an element is enabled' do enabled_value = driver.find_element(name: 'email_input').enabled? expect(enabled_value).to be_truthy end it 'checks if an element is selected' do selected_value = driver.find_element(name: 'email_input').selected? expect(selected_value).to be_falsey end it 'gets the tag name of an element' do tag_name = driver.find_element(name: 'email_input').tag_name expect(tag_name).not_to be_empty end it 'gets the size and position of an element' do size = driver.find_element(name: 'email_input').size expect(size.width).to be_positive expect(size.height).to be_positive end it 'gets the css value of an element' do css_value = driver.find_element(name: 'email_input').css_value('background-color') expect(css_value).not_to be_empty end it 'gets the text of an element' do text = driver.find_element(xpath: '//h1').text expect(text).to eq('Testing Inputs') end it 'gets the attribute value of an element' do attribute_value = driver.find_element(name: 'number_input').attribute('value') expect(attribute_value).not_to be_empty end end // Resolves Promise and returns boolean value let result = await driver.findElement(By.name("email_input")).isDisplayed();/examples/javascript/test/elements/information.spec.js
const {By, Builder} = require('selenium-webdriver'); const assert = require("assert"); describe('Element Information Test', function () { let driver; before(async function () { driver = await new Builder().forBrowser('chrome').build(); }); beforeEach(async ()=> { await driver.get('https://www.selenium.dev/selenium/web/inputs.html'); }) it('Check if element is displayed', async function () { // Resolves Promise and returns boolean value let result = await driver.findElement(By.name("email_input")).isDisplayed(); assert.equal(result,true); }); it('Check if button is enabled', async function () { // Resolves Promise and returns boolean value let element = await driver.findElement(By.name("button_input")).isEnabled(); assert.equal(element, true); }); it('Check if checkbox is selected', async function () { // Returns true if element ins checked else returns false let isSelected = await driver.findElement(By.name("checkbox_input")).isSelected(); assert.equal(isSelected, true); }); it('Should return the tagname', async function () { // Returns TagName of the element let value = await driver.findElement(By.name('email_input')).getTagName(); assert.equal(value, "input"); }); it('Should be able to fetch element size and position ', async function () { // Returns height, width, x and y position of the element let object = await driver.findElement(By.name('range_input')).getRect(); assert.ok(object.height!==null) assert.ok(object.width!==null) assert.ok(object.y!==null) assert.ok(object.x!==null) }); it('Should be able to fetch attributes and properties ', async function () { // identify the email text box const emailElement = await driver.findElement(By.xpath('//input[@name="email_input"]')); //fetch the attribute "name" associated with the textbox const nameAttribute = await emailElement.getAttribute("name"); assert.equal(nameAttribute, "email_input") }); after(async () => await driver.quit()); }); describe('Element Information Test', function () { let driver; before(async function () { driver = await new Builder().forBrowser('chrome').build(); }); it('Should return the css specified CSS value', async function () { await driver.get('https://www.selenium.dev/selenium/web/colorPage.html'); // Returns background color of the element let value = await driver.findElement(By.id('namedColor')).getCssValue('background-color'); assert.equal(value, "rgba(0, 128, 0, 1)"); }); it('Should return the css specified CSS value', async function () { await driver.get('https://www.selenium.dev/selenium/web/linked_image.html'); // Returns text of the element let text = await driver.findElement(By.id('justanotherLink')).getText(); assert.equal(text, "Just another link."); }); after(async () => await driver.quit()); });//navigates to url driver.get("https://www.selenium.dev/selenium/web/inputs.html") //returns true if element is displayed else returns false val flag = driver.findElement(By.name("email_input")).isDisplayed()是否启用
此方法用于检查所连接的元素在网页上是启用还是禁用状态。 返回一个布尔值,如果在当前浏览上下文中是 启用 状态,则返回 true,否则返回 false。
// isEnabled // returns true if element is enabled else returns false/examples/java/src/test/java/dev/selenium/elements/InformationTest.java
package dev.selenium.elements; import org.junit.jupiter.api.Test; import org.openqa.selenium.By; import org.openqa.selenium.Rectangle; import org.openqa.selenium.WebDriver; import org.openqa.selenium.WebElement; import org.openqa.selenium.chrome.ChromeDriver; import java.time.Duration; import static org.junit.jupiter.api.Assertions.assertEquals; import static org.junit.jupiter.api.Assertions.assertTrue; public class InformationTest { @Test public void informationWithElements() { WebDriver driver = new ChromeDriver(); driver.manage().timeouts().implicitlyWait(Duration.ofMillis(500)); // Navigate to Url driver.get("https://www.selenium.dev/selenium/web/inputs.html"); // isDisplayed // Get boolean value for is element display boolean isEmailVisible = driver.findElement(By.name("email_input")).isDisplayed(); assertTrue(isEmailVisible); // isEnabled // returns true if element is enabled else returns false boolean isEnabledButton = driver.findElement(By.name("button_input")).isEnabled(); assertTrue(isEnabledButton); // isSelected // returns true if element is checked else returns false boolean isSelectedCheck = driver.findElement(By.name("checkbox_input")).isSelected(); assertTrue(isSelectedCheck); // TagName // returns TagName of the element String tagNameInp = driver.findElement(By.name("email_input")).getTagName(); assertEquals("input", tagNameInp); // GetRect // Returns height, width, x and y coordinates referenced element Rectangle res = driver.findElement(By.name("range_input")).getRect(); // Rectangle class provides getX,getY, getWidth, getHeight methods assertEquals(10, res.getX()); // Retrieves the computed style property 'font-size' of field String cssValue = driver.findElement(By.name("color_input")).getCssValue("font-size"); assertEquals(cssValue, "13.3333px"); // GetText // Retrieves the text of the element String text = driver.findElement(By.tagName("h1")).getText(); assertEquals(text, "Testing Inputs"); // FetchAttributes // identify the email text box WebElement emailTxt = driver.findElement(By.name(("email_input"))); // fetch the value property associated with the textbox String valueInfo = emailTxt.getAttribute("value"); assertEquals(valueInfo,"admin@localhost"); driver.quit(); } } is_enabled_button = driver.find_element(By.NAME, "button_input").is_enabled()/examples/python/tests/elements/test_information.py
from selenium import webdriver from selenium.webdriver.common.by import By import pytest def test_informarion(): # Initialize WebDriver driver = webdriver.Chrome() driver.implicitly_wait(0.5) driver.get("https://www.selenium.dev/selenium/web/inputs.html") # isDisplayed is_email_visible = driver.find_element(By.NAME, "email_input").is_displayed() assert is_email_visible == True # isEnabled is_enabled_button = driver.find_element(By.NAME, "button_input").is_enabled() assert is_enabled_button == True # isSelected is_selected_check = driver.find_element(By.NAME, "checkbox_input").is_selected() assert is_selected_check == True # TagName tag_name_inp = driver.find_element(By.NAME, "email_input").tag_name assert tag_name_inp == "input" # GetRect rect = driver.find_element(By.NAME, "range_input").rect assert rect["x"] == 10 # CSS Value css_value = driver.find_element(By.NAME, "color_input").value_of_css_property( "font-size" ) assert css_value == "13.3333px" # GetText text = driver.find_element(By.TAG_NAME, "h1").text assert text == "Testing Inputs" # FetchAttributes email_txt = driver.find_element(By.NAME, "email_input") value_info = email_txt.get_attribute("value") assert value_info == "admin@localhost" // isEnabled // returns true if element is enabled else returns false bool isEnabledButton = driver.FindElement(By.Name("button_input")).Enabled;/examples/dotnet/SeleniumDocs/Elements/InformationTest.cs
using System; using System.Drawing; using Microsoft.VisualStudio.TestTools.UnitTesting; using OpenQA.Selenium; using OpenQA.Selenium.Chrome; namespace SeleniumDocs.Elements { [TestClass] public class InformationTest { [TestMethod] public void TestInformationCommands(){ WebDriver driver = new ChromeDriver(); driver.Manage().Timeouts().ImplicitWait = TimeSpan.FromMilliseconds(500); // Navigate to Url driver.Url= "https://www.selenium.dev/selenium/web/inputs.html"; // isDisplayed // Get boolean value for is element display bool isEmailVisible = driver.FindElement(By.Name("email_input")).Displayed; Assert.AreEqual(isEmailVisible, true); // isEnabled // returns true if element is enabled else returns false bool isEnabledButton = driver.FindElement(By.Name("button_input")).Enabled; Assert.AreEqual(isEnabledButton, true); // isSelected // returns true if element is checked else returns false bool isSelectedCheck = driver.FindElement(By.Name("checkbox_input")).Selected; Assert.AreEqual(isSelectedCheck, true); // TagName // returns TagName of the element string tagNameInp = driver.FindElement(By.Name("email_input")).TagName; Assert.AreEqual(tagNameInp, "input"); // Get Location and Size // Get Location IWebElement rangeElement = driver.FindElement(By.Name("range_input")); Point point = rangeElement.Location; Assert.IsNotNull(point.X); // Get Size int height=rangeElement.Size.Height; Assert.IsNotNull(height); // Retrieves the computed style property 'font-size' of field string cssValue = driver.FindElement(By.Name("color_input")).GetCssValue("font-size"); Assert.AreEqual(cssValue, "13.3333px"); // GetText // Retrieves the text of the element string text = driver.FindElement(By.TagName("h1")).Text; Assert.AreEqual(text, "Testing Inputs"); // FetchAttributes // identify the email text box IWebElement emailTxt = driver.FindElement(By.Name("email_input")); // fetch the value property associated with the textbox string valueInfo = emailTxt.GetAttribute("value"); Assert.AreEqual(valueInfo, "admin@localhost"); //Quit the driver driver.Quit(); } } } enabled_value = driver.find_element(name: 'email_input').enabled?/examples/ruby/spec/elements/information_spec.rb
# frozen_string_literal: true require 'spec_helper' RSpec.describe 'Element Information' do let(:driver) { start_session } let(:url) { 'https://www.selenium.dev/selenium/web/inputs.html' } before { driver.get(url) } it 'checks if an element is displayed' do displayed_value = driver.find_element(name: 'email_input').displayed? expect(displayed_value).to be_truthy end it 'checks if an element is enabled' do enabled_value = driver.find_element(name: 'email_input').enabled? expect(enabled_value).to be_truthy end it 'checks if an element is selected' do selected_value = driver.find_element(name: 'email_input').selected? expect(selected_value).to be_falsey end it 'gets the tag name of an element' do tag_name = driver.find_element(name: 'email_input').tag_name expect(tag_name).not_to be_empty end it 'gets the size and position of an element' do size = driver.find_element(name: 'email_input').size expect(size.width).to be_positive expect(size.height).to be_positive end it 'gets the css value of an element' do css_value = driver.find_element(name: 'email_input').css_value('background-color') expect(css_value).not_to be_empty end it 'gets the text of an element' do text = driver.find_element(xpath: '//h1').text expect(text).to eq('Testing Inputs') end it 'gets the attribute value of an element' do attribute_value = driver.find_element(name: 'number_input').attribute('value') expect(attribute_value).not_to be_empty end end // Resolves Promise and returns boolean value let element = await driver.findElement(By.name("button_input")).isEnabled();/examples/javascript/test/elements/information.spec.js
const {By, Builder} = require('selenium-webdriver'); const assert = require("assert"); describe('Element Information Test', function () { let driver; before(async function () { driver = await new Builder().forBrowser('chrome').build(); }); beforeEach(async ()=> { await driver.get('https://www.selenium.dev/selenium/web/inputs.html'); }) it('Check if element is displayed', async function () { // Resolves Promise and returns boolean value let result = await driver.findElement(By.name("email_input")).isDisplayed(); assert.equal(result,true); }); it('Check if button is enabled', async function () { // Resolves Promise and returns boolean value let element = await driver.findElement(By.name("button_input")).isEnabled(); assert.equal(element, true); }); it('Check if checkbox is selected', async function () { // Returns true if element ins checked else returns false let isSelected = await driver.findElement(By.name("checkbox_input")).isSelected(); assert.equal(isSelected, true); }); it('Should return the tagname', async function () { // Returns TagName of the element let value = await driver.findElement(By.name('email_input')).getTagName(); assert.equal(value, "input"); }); it('Should be able to fetch element size and position ', async function () { // Returns height, width, x and y position of the element let object = await driver.findElement(By.name('range_input')).getRect(); assert.ok(object.height!==null) assert.ok(object.width!==null) assert.ok(object.y!==null) assert.ok(object.x!==null) }); it('Should be able to fetch attributes and properties ', async function () { // identify the email text box const emailElement = await driver.findElement(By.xpath('//input[@name="email_input"]')); //fetch the attribute "name" associated with the textbox const nameAttribute = await emailElement.getAttribute("name"); assert.equal(nameAttribute, "email_input") }); after(async () => await driver.quit()); }); describe('Element Information Test', function () { let driver; before(async function () { driver = await new Builder().forBrowser('chrome').build(); }); it('Should return the css specified CSS value', async function () { await driver.get('https://www.selenium.dev/selenium/web/colorPage.html'); // Returns background color of the element let value = await driver.findElement(By.id('namedColor')).getCssValue('background-color'); assert.equal(value, "rgba(0, 128, 0, 1)"); }); it('Should return the css specified CSS value', async function () { await driver.get('https://www.selenium.dev/selenium/web/linked_image.html'); // Returns text of the element let text = await driver.findElement(By.id('justanotherLink')).getText(); assert.equal(text, "Just another link."); }); after(async () => await driver.quit()); });//navigates to url driver.get("https://www.selenium.dev/selenium/web/inputs.html") //returns true if element is enabled else returns false val attr = driver.findElement(By.name("button_input")).isEnabled()是否被选定
此方法确认相关的元素是否 已选定,常用于复选框、单选框、输入框和选择元素中。
该方法返回一个布尔值,如果在当前浏览上下文中 选择了 引用的元素,则返回 True,否则返回 False。
// isSelected // returns true if element is checked else returns false/examples/java/src/test/java/dev/selenium/elements/InformationTest.java
package dev.selenium.elements; import org.junit.jupiter.api.Test; import org.openqa.selenium.By; import org.openqa.selenium.Rectangle; import org.openqa.selenium.WebDriver; import org.openqa.selenium.WebElement; import org.openqa.selenium.chrome.ChromeDriver; import java.time.Duration; import static org.junit.jupiter.api.Assertions.assertEquals; import static org.junit.jupiter.api.Assertions.assertTrue; public class InformationTest { @Test public void informationWithElements() { WebDriver driver = new ChromeDriver(); driver.manage().timeouts().implicitlyWait(Duration.ofMillis(500)); // Navigate to Url driver.get("https://www.selenium.dev/selenium/web/inputs.html"); // isDisplayed // Get boolean value for is element display boolean isEmailVisible = driver.findElement(By.name("email_input")).isDisplayed(); assertTrue(isEmailVisible); // isEnabled // returns true if element is enabled else returns false boolean isEnabledButton = driver.findElement(By.name("button_input")).isEnabled(); assertTrue(isEnabledButton); // isSelected // returns true if element is checked else returns false boolean isSelectedCheck = driver.findElement(By.name("checkbox_input")).isSelected(); assertTrue(isSelectedCheck); // TagName // returns TagName of the element String tagNameInp = driver.findElement(By.name("email_input")).getTagName(); assertEquals("input", tagNameInp); // GetRect // Returns height, width, x and y coordinates referenced element Rectangle res = driver.findElement(By.name("range_input")).getRect(); // Rectangle class provides getX,getY, getWidth, getHeight methods assertEquals(10, res.getX()); // Retrieves the computed style property 'font-size' of field String cssValue = driver.findElement(By.name("color_input")).getCssValue("font-size"); assertEquals(cssValue, "13.3333px"); // GetText // Retrieves the text of the element String text = driver.findElement(By.tagName("h1")).getText(); assertEquals(text, "Testing Inputs"); // FetchAttributes // identify the email text box WebElement emailTxt = driver.findElement(By.name(("email_input"))); // fetch the value property associated with the textbox String valueInfo = emailTxt.getAttribute("value"); assertEquals(valueInfo,"admin@localhost"); driver.quit(); } } is_selected_check = driver.find_element(By.NAME, "checkbox_input").is_selected()/examples/python/tests/elements/test_information.py
from selenium import webdriver from selenium.webdriver.common.by import By import pytest def test_informarion(): # Initialize WebDriver driver = webdriver.Chrome() driver.implicitly_wait(0.5) driver.get("https://www.selenium.dev/selenium/web/inputs.html") # isDisplayed is_email_visible = driver.find_element(By.NAME, "email_input").is_displayed() assert is_email_visible == True # isEnabled is_enabled_button = driver.find_element(By.NAME, "button_input").is_enabled() assert is_enabled_button == True # isSelected is_selected_check = driver.find_element(By.NAME, "checkbox_input").is_selected() assert is_selected_check == True # TagName tag_name_inp = driver.find_element(By.NAME, "email_input").tag_name assert tag_name_inp == "input" # GetRect rect = driver.find_element(By.NAME, "range_input").rect assert rect["x"] == 10 # CSS Value css_value = driver.find_element(By.NAME, "color_input").value_of_css_property( "font-size" ) assert css_value == "13.3333px" # GetText text = driver.find_element(By.TAG_NAME, "h1").text assert text == "Testing Inputs" # FetchAttributes email_txt = driver.find_element(By.NAME, "email_input") value_info = email_txt.get_attribute("value") assert value_info == "admin@localhost" // isSelected // returns true if element is checked else returns false bool isSelectedCheck = driver.FindElement(By.Name("checkbox_input")).Selected;/examples/dotnet/SeleniumDocs/Elements/InformationTest.cs
using System; using System.Drawing; using Microsoft.VisualStudio.TestTools.UnitTesting; using OpenQA.Selenium; using OpenQA.Selenium.Chrome; namespace SeleniumDocs.Elements { [TestClass] public class InformationTest { [TestMethod] public void TestInformationCommands(){ WebDriver driver = new ChromeDriver(); driver.Manage().Timeouts().ImplicitWait = TimeSpan.FromMilliseconds(500); // Navigate to Url driver.Url= "https://www.selenium.dev/selenium/web/inputs.html"; // isDisplayed // Get boolean value for is element display bool isEmailVisible = driver.FindElement(By.Name("email_input")).Displayed; Assert.AreEqual(isEmailVisible, true); // isEnabled // returns true if element is enabled else returns false bool isEnabledButton = driver.FindElement(By.Name("button_input")).Enabled; Assert.AreEqual(isEnabledButton, true); // isSelected // returns true if element is checked else returns false bool isSelectedCheck = driver.FindElement(By.Name("checkbox_input")).Selected; Assert.AreEqual(isSelectedCheck, true); // TagName // returns TagName of the element string tagNameInp = driver.FindElement(By.Name("email_input")).TagName; Assert.AreEqual(tagNameInp, "input"); // Get Location and Size // Get Location IWebElement rangeElement = driver.FindElement(By.Name("range_input")); Point point = rangeElement.Location; Assert.IsNotNull(point.X); // Get Size int height=rangeElement.Size.Height; Assert.IsNotNull(height); // Retrieves the computed style property 'font-size' of field string cssValue = driver.FindElement(By.Name("color_input")).GetCssValue("font-size"); Assert.AreEqual(cssValue, "13.3333px"); // GetText // Retrieves the text of the element string text = driver.FindElement(By.TagName("h1")).Text; Assert.AreEqual(text, "Testing Inputs"); // FetchAttributes // identify the email text box IWebElement emailTxt = driver.FindElement(By.Name("email_input")); // fetch the value property associated with the textbox string valueInfo = emailTxt.GetAttribute("value"); Assert.AreEqual(valueInfo, "admin@localhost"); //Quit the driver driver.Quit(); } } } selected_value = driver.find_element(name: 'email_input').selected?/examples/ruby/spec/elements/information_spec.rb
# frozen_string_literal: true require 'spec_helper' RSpec.describe 'Element Information' do let(:driver) { start_session } let(:url) { 'https://www.selenium.dev/selenium/web/inputs.html' } before { driver.get(url) } it 'checks if an element is displayed' do displayed_value = driver.find_element(name: 'email_input').displayed? expect(displayed_value).to be_truthy end it 'checks if an element is enabled' do enabled_value = driver.find_element(name: 'email_input').enabled? expect(enabled_value).to be_truthy end it 'checks if an element is selected' do selected_value = driver.find_element(name: 'email_input').selected? expect(selected_value).to be_falsey end it 'gets the tag name of an element' do tag_name = driver.find_element(name: 'email_input').tag_name expect(tag_name).not_to be_empty end it 'gets the size and position of an element' do size = driver.find_element(name: 'email_input').size expect(size.width).to be_positive expect(size.height).to be_positive end it 'gets the css value of an element' do css_value = driver.find_element(name: 'email_input').css_value('background-color') expect(css_value).not_to be_empty end it 'gets the text of an element' do text = driver.find_element(xpath: '//h1').text expect(text).to eq('Testing Inputs') end it 'gets the attribute value of an element' do attribute_value = driver.find_element(name: 'number_input').attribute('value') expect(attribute_value).not_to be_empty end end // Returns true if element ins checked else returns false let isSelected = await driver.findElement(By.name("checkbox_input")).isSelected();/examples/javascript/test/elements/information.spec.js
const {By, Builder} = require('selenium-webdriver'); const assert = require("assert"); describe('Element Information Test', function () { let driver; before(async function () { driver = await new Builder().forBrowser('chrome').build(); }); beforeEach(async ()=> { await driver.get('https://www.selenium.dev/selenium/web/inputs.html'); }) it('Check if element is displayed', async function () { // Resolves Promise and returns boolean value let result = await driver.findElement(By.name("email_input")).isDisplayed(); assert.equal(result,true); }); it('Check if button is enabled', async function () { // Resolves Promise and returns boolean value let element = await driver.findElement(By.name("button_input")).isEnabled(); assert.equal(element, true); }); it('Check if checkbox is selected', async function () { // Returns true if element ins checked else returns false let isSelected = await driver.findElement(By.name("checkbox_input")).isSelected(); assert.equal(isSelected, true); }); it('Should return the tagname', async function () { // Returns TagName of the element let value = await driver.findElement(By.name('email_input')).getTagName(); assert.equal(value, "input"); }); it('Should be able to fetch element size and position ', async function () { // Returns height, width, x and y position of the element let object = await driver.findElement(By.name('range_input')).getRect(); assert.ok(object.height!==null) assert.ok(object.width!==null) assert.ok(object.y!==null) assert.ok(object.x!==null) }); it('Should be able to fetch attributes and properties ', async function () { // identify the email text box const emailElement = await driver.findElement(By.xpath('//input[@name="email_input"]')); //fetch the attribute "name" associated with the textbox const nameAttribute = await emailElement.getAttribute("name"); assert.equal(nameAttribute, "email_input") }); after(async () => await driver.quit()); }); describe('Element Information Test', function () { let driver; before(async function () { driver = await new Builder().forBrowser('chrome').build(); }); it('Should return the css specified CSS value', async function () { await driver.get('https://www.selenium.dev/selenium/web/colorPage.html'); // Returns background color of the element let value = await driver.findElement(By.id('namedColor')).getCssValue('background-color'); assert.equal(value, "rgba(0, 128, 0, 1)"); }); it('Should return the css specified CSS value', async function () { await driver.get('https://www.selenium.dev/selenium/web/linked_image.html'); // Returns text of the element let text = await driver.findElement(By.id('justanotherLink')).getText(); assert.equal(text, "Just another link."); }); after(async () => await driver.quit()); });//navigates to url driver.get("https://www.selenium.dev/selenium/web/inputs.html") //returns true if element is checked else returns false val attr = driver.findElement(By.name("checkbox_input")).isSelected()获取元素标签名
此方法用于获取在当前浏览上下文中具有焦点的被引用元素的TagName。
// TagName // returns TagName of the element/examples/java/src/test/java/dev/selenium/elements/InformationTest.java
package dev.selenium.elements; import org.junit.jupiter.api.Test; import org.openqa.selenium.By; import org.openqa.selenium.Rectangle; import org.openqa.selenium.WebDriver; import org.openqa.selenium.WebElement; import org.openqa.selenium.chrome.ChromeDriver; import java.time.Duration; import static org.junit.jupiter.api.Assertions.assertEquals; import static org.junit.jupiter.api.Assertions.assertTrue; public class InformationTest { @Test public void informationWithElements() { WebDriver driver = new ChromeDriver(); driver.manage().timeouts().implicitlyWait(Duration.ofMillis(500)); // Navigate to Url driver.get("https://www.selenium.dev/selenium/web/inputs.html"); // isDisplayed // Get boolean value for is element display boolean isEmailVisible = driver.findElement(By.name("email_input")).isDisplayed(); assertTrue(isEmailVisible); // isEnabled // returns true if element is enabled else returns false boolean isEnabledButton = driver.findElement(By.name("button_input")).isEnabled(); assertTrue(isEnabledButton); // isSelected // returns true if element is checked else returns false boolean isSelectedCheck = driver.findElement(By.name("checkbox_input")).isSelected(); assertTrue(isSelectedCheck); // TagName // returns TagName of the element String tagNameInp = driver.findElement(By.name("email_input")).getTagName(); assertEquals("input", tagNameInp); // GetRect // Returns height, width, x and y coordinates referenced element Rectangle res = driver.findElement(By.name("range_input")).getRect(); // Rectangle class provides getX,getY, getWidth, getHeight methods assertEquals(10, res.getX()); // Retrieves the computed style property 'font-size' of field String cssValue = driver.findElement(By.name("color_input")).getCssValue("font-size"); assertEquals(cssValue, "13.3333px"); // GetText // Retrieves the text of the element String text = driver.findElement(By.tagName("h1")).getText(); assertEquals(text, "Testing Inputs"); // FetchAttributes // identify the email text box WebElement emailTxt = driver.findElement(By.name(("email_input"))); // fetch the value property associated with the textbox String valueInfo = emailTxt.getAttribute("value"); assertEquals(valueInfo,"admin@localhost"); driver.quit(); } } tag_name_inp = driver.find_element(By.NAME, "email_input").tag_name/examples/python/tests/elements/test_information.py
from selenium import webdriver from selenium.webdriver.common.by import By import pytest def test_informarion(): # Initialize WebDriver driver = webdriver.Chrome() driver.implicitly_wait(0.5) driver.get("https://www.selenium.dev/selenium/web/inputs.html") # isDisplayed is_email_visible = driver.find_element(By.NAME, "email_input").is_displayed() assert is_email_visible == True # isEnabled is_enabled_button = driver.find_element(By.NAME, "button_input").is_enabled() assert is_enabled_button == True # isSelected is_selected_check = driver.find_element(By.NAME, "checkbox_input").is_selected() assert is_selected_check == True # TagName tag_name_inp = driver.find_element(By.NAME, "email_input").tag_name assert tag_name_inp == "input" # GetRect rect = driver.find_element(By.NAME, "range_input").rect assert rect["x"] == 10 # CSS Value css_value = driver.find_element(By.NAME, "color_input").value_of_css_property( "font-size" ) assert css_value == "13.3333px" # GetText text = driver.find_element(By.TAG_NAME, "h1").text assert text == "Testing Inputs" # FetchAttributes email_txt = driver.find_element(By.NAME, "email_input") value_info = email_txt.get_attribute("value") assert value_info == "admin@localhost" // TagName // returns TagName of the element string tagNameInp = driver.FindElement(By.Name("email_input")).TagName;/examples/dotnet/SeleniumDocs/Elements/InformationTest.cs
using System; using System.Drawing; using Microsoft.VisualStudio.TestTools.UnitTesting; using OpenQA.Selenium; using OpenQA.Selenium.Chrome; namespace SeleniumDocs.Elements { [TestClass] public class InformationTest { [TestMethod] public void TestInformationCommands(){ WebDriver driver = new ChromeDriver(); driver.Manage().Timeouts().ImplicitWait = TimeSpan.FromMilliseconds(500); // Navigate to Url driver.Url= "https://www.selenium.dev/selenium/web/inputs.html"; // isDisplayed // Get boolean value for is element display bool isEmailVisible = driver.FindElement(By.Name("email_input")).Displayed; Assert.AreEqual(isEmailVisible, true); // isEnabled // returns true if element is enabled else returns false bool isEnabledButton = driver.FindElement(By.Name("button_input")).Enabled; Assert.AreEqual(isEnabledButton, true); // isSelected // returns true if element is checked else returns false bool isSelectedCheck = driver.FindElement(By.Name("checkbox_input")).Selected; Assert.AreEqual(isSelectedCheck, true); // TagName // returns TagName of the element string tagNameInp = driver.FindElement(By.Name("email_input")).TagName; Assert.AreEqual(tagNameInp, "input"); // Get Location and Size // Get Location IWebElement rangeElement = driver.FindElement(By.Name("range_input")); Point point = rangeElement.Location; Assert.IsNotNull(point.X); // Get Size int height=rangeElement.Size.Height; Assert.IsNotNull(height); // Retrieves the computed style property 'font-size' of field string cssValue = driver.FindElement(By.Name("color_input")).GetCssValue("font-size"); Assert.AreEqual(cssValue, "13.3333px"); // GetText // Retrieves the text of the element string text = driver.FindElement(By.TagName("h1")).Text; Assert.AreEqual(text, "Testing Inputs"); // FetchAttributes // identify the email text box IWebElement emailTxt = driver.FindElement(By.Name("email_input")); // fetch the value property associated with the textbox string valueInfo = emailTxt.GetAttribute("value"); Assert.AreEqual(valueInfo, "admin@localhost"); //Quit the driver driver.Quit(); } } } tag_name = driver.find_element(name: 'email_input').tag_name/examples/ruby/spec/elements/information_spec.rb
# frozen_string_literal: true require 'spec_helper' RSpec.describe 'Element Information' do let(:driver) { start_session } let(:url) { 'https://www.selenium.dev/selenium/web/inputs.html' } before { driver.get(url) } it 'checks if an element is displayed' do displayed_value = driver.find_element(name: 'email_input').displayed? expect(displayed_value).to be_truthy end it 'checks if an element is enabled' do enabled_value = driver.find_element(name: 'email_input').enabled? expect(enabled_value).to be_truthy end it 'checks if an element is selected' do selected_value = driver.find_element(name: 'email_input').selected? expect(selected_value).to be_falsey end it 'gets the tag name of an element' do tag_name = driver.find_element(name: 'email_input').tag_name expect(tag_name).not_to be_empty end it 'gets the size and position of an element' do size = driver.find_element(name: 'email_input').size expect(size.width).to be_positive expect(size.height).to be_positive end it 'gets the css value of an element' do css_value = driver.find_element(name: 'email_input').css_value('background-color') expect(css_value).not_to be_empty end it 'gets the text of an element' do text = driver.find_element(xpath: '//h1').text expect(text).to eq('Testing Inputs') end it 'gets the attribute value of an element' do attribute_value = driver.find_element(name: 'number_input').attribute('value') expect(attribute_value).not_to be_empty end end // Returns TagName of the element let value = await driver.findElement(By.name('email_input')).getTagName();/examples/javascript/test/elements/information.spec.js
const {By, Builder} = require('selenium-webdriver'); const assert = require("assert"); describe('Element Information Test', function () { let driver; before(async function () { driver = await new Builder().forBrowser('chrome').build(); }); beforeEach(async ()=> { await driver.get('https://www.selenium.dev/selenium/web/inputs.html'); }) it('Check if element is displayed', async function () { // Resolves Promise and returns boolean value let result = await driver.findElement(By.name("email_input")).isDisplayed(); assert.equal(result,true); }); it('Check if button is enabled', async function () { // Resolves Promise and returns boolean value let element = await driver.findElement(By.name("button_input")).isEnabled(); assert.equal(element, true); }); it('Check if checkbox is selected', async function () { // Returns true if element ins checked else returns false let isSelected = await driver.findElement(By.name("checkbox_input")).isSelected(); assert.equal(isSelected, true); }); it('Should return the tagname', async function () { // Returns TagName of the element let value = await driver.findElement(By.name('email_input')).getTagName(); assert.equal(value, "input"); }); it('Should be able to fetch element size and position ', async function () { // Returns height, width, x and y position of the element let object = await driver.findElement(By.name('range_input')).getRect(); assert.ok(object.height!==null) assert.ok(object.width!==null) assert.ok(object.y!==null) assert.ok(object.x!==null) }); it('Should be able to fetch attributes and properties ', async function () { // identify the email text box const emailElement = await driver.findElement(By.xpath('//input[@name="email_input"]')); //fetch the attribute "name" associated with the textbox const nameAttribute = await emailElement.getAttribute("name"); assert.equal(nameAttribute, "email_input") }); after(async () => await driver.quit()); }); describe('Element Information Test', function () { let driver; before(async function () { driver = await new Builder().forBrowser('chrome').build(); }); it('Should return the css specified CSS value', async function () { await driver.get('https://www.selenium.dev/selenium/web/colorPage.html'); // Returns background color of the element let value = await driver.findElement(By.id('namedColor')).getCssValue('background-color'); assert.equal(value, "rgba(0, 128, 0, 1)"); }); it('Should return the css specified CSS value', async function () { await driver.get('https://www.selenium.dev/selenium/web/linked_image.html'); // Returns text of the element let text = await driver.findElement(By.id('justanotherLink')).getText(); assert.equal(text, "Just another link."); }); after(async () => await driver.quit()); });//navigates to url driver.get("https://www.selenium.dev/selenium/web/inputs.html") //returns TagName of the element val attr = driver.findElement(By.name("email_input")).getTagName()位置和大小
用于获取参照元素的尺寸和坐标。
提取的数据主体包含以下详细信息:
- 元素左上角的X轴位置
- 元素左上角的y轴位置
- 元素的高度
- 元素的宽度
// GetRect // Returns height, width, x and y coordinates referenced element/examples/java/src/test/java/dev/selenium/elements/InformationTest.java
package dev.selenium.elements; import org.junit.jupiter.api.Test; import org.openqa.selenium.By; import org.openqa.selenium.Rectangle; import org.openqa.selenium.WebDriver; import org.openqa.selenium.WebElement; import org.openqa.selenium.chrome.ChromeDriver; import java.time.Duration; import static org.junit.jupiter.api.Assertions.assertEquals; import static org.junit.jupiter.api.Assertions.assertTrue; public class InformationTest { @Test public void informationWithElements() { WebDriver driver = new ChromeDriver(); driver.manage().timeouts().implicitlyWait(Duration.ofMillis(500)); // Navigate to Url driver.get("https://www.selenium.dev/selenium/web/inputs.html"); // isDisplayed // Get boolean value for is element display boolean isEmailVisible = driver.findElement(By.name("email_input")).isDisplayed(); assertTrue(isEmailVisible); // isEnabled // returns true if element is enabled else returns false boolean isEnabledButton = driver.findElement(By.name("button_input")).isEnabled(); assertTrue(isEnabledButton); // isSelected // returns true if element is checked else returns false boolean isSelectedCheck = driver.findElement(By.name("checkbox_input")).isSelected(); assertTrue(isSelectedCheck); // TagName // returns TagName of the element String tagNameInp = driver.findElement(By.name("email_input")).getTagName(); assertEquals("input", tagNameInp); // GetRect // Returns height, width, x and y coordinates referenced element Rectangle res = driver.findElement(By.name("range_input")).getRect(); // Rectangle class provides getX,getY, getWidth, getHeight methods assertEquals(10, res.getX()); // Retrieves the computed style property 'font-size' of field String cssValue = driver.findElement(By.name("color_input")).getCssValue("font-size"); assertEquals(cssValue, "13.3333px"); // GetText // Retrieves the text of the element String text = driver.findElement(By.tagName("h1")).getText(); assertEquals(text, "Testing Inputs"); // FetchAttributes // identify the email text box WebElement emailTxt = driver.findElement(By.name(("email_input"))); // fetch the value property associated with the textbox String valueInfo = emailTxt.getAttribute("value"); assertEquals(valueInfo,"admin@localhost"); driver.quit(); } } rect = driver.find_element(By.NAME, "range_input").rect/examples/python/tests/elements/test_information.py
from selenium import webdriver from selenium.webdriver.common.by import By import pytest def test_informarion(): # Initialize WebDriver driver = webdriver.Chrome() driver.implicitly_wait(0.5) driver.get("https://www.selenium.dev/selenium/web/inputs.html") # isDisplayed is_email_visible = driver.find_element(By.NAME, "email_input").is_displayed() assert is_email_visible == True # isEnabled is_enabled_button = driver.find_element(By.NAME, "button_input").is_enabled() assert is_enabled_button == True # isSelected is_selected_check = driver.find_element(By.NAME, "checkbox_input").is_selected() assert is_selected_check == True # TagName tag_name_inp = driver.find_element(By.NAME, "email_input").tag_name assert tag_name_inp == "input" # GetRect rect = driver.find_element(By.NAME, "range_input").rect assert rect["x"] == 10 # CSS Value css_value = driver.find_element(By.NAME, "color_input").value_of_css_property( "font-size" ) assert css_value == "13.3333px" # GetText text = driver.find_element(By.TAG_NAME, "h1").text assert text == "Testing Inputs" # FetchAttributes email_txt = driver.find_element(By.NAME, "email_input") value_info = email_txt.get_attribute("value") assert value_info == "admin@localhost" // Get Location and Size // Get Location IWebElement rangeElement = driver.FindElement(By.Name("range_input")); Point point = rangeElement.Location;/examples/dotnet/SeleniumDocs/Elements/InformationTest.cs
using System; using System.Drawing; using Microsoft.VisualStudio.TestTools.UnitTesting; using OpenQA.Selenium; using OpenQA.Selenium.Chrome; namespace SeleniumDocs.Elements { [TestClass] public class InformationTest { [TestMethod] public void TestInformationCommands(){ WebDriver driver = new ChromeDriver(); driver.Manage().Timeouts().ImplicitWait = TimeSpan.FromMilliseconds(500); // Navigate to Url driver.Url= "https://www.selenium.dev/selenium/web/inputs.html"; // isDisplayed // Get boolean value for is element display bool isEmailVisible = driver.FindElement(By.Name("email_input")).Displayed; Assert.AreEqual(isEmailVisible, true); // isEnabled // returns true if element is enabled else returns false bool isEnabledButton = driver.FindElement(By.Name("button_input")).Enabled; Assert.AreEqual(isEnabledButton, true); // isSelected // returns true if element is checked else returns false bool isSelectedCheck = driver.FindElement(By.Name("checkbox_input")).Selected; Assert.AreEqual(isSelectedCheck, true); // TagName // returns TagName of the element string tagNameInp = driver.FindElement(By.Name("email_input")).TagName; Assert.AreEqual(tagNameInp, "input"); // Get Location and Size // Get Location IWebElement rangeElement = driver.FindElement(By.Name("range_input")); Point point = rangeElement.Location; Assert.IsNotNull(point.X); // Get Size int height=rangeElement.Size.Height; Assert.IsNotNull(height); // Retrieves the computed style property 'font-size' of field string cssValue = driver.FindElement(By.Name("color_input")).GetCssValue("font-size"); Assert.AreEqual(cssValue, "13.3333px"); // GetText // Retrieves the text of the element string text = driver.FindElement(By.TagName("h1")).Text; Assert.AreEqual(text, "Testing Inputs"); // FetchAttributes // identify the email text box IWebElement emailTxt = driver.FindElement(By.Name("email_input")); // fetch the value property associated with the textbox string valueInfo = emailTxt.GetAttribute("value"); Assert.AreEqual(valueInfo, "admin@localhost"); //Quit the driver driver.Quit(); } } } size = driver.find_element(name: 'email_input').size/examples/ruby/spec/elements/information_spec.rb
# frozen_string_literal: true require 'spec_helper' RSpec.describe 'Element Information' do let(:driver) { start_session } let(:url) { 'https://www.selenium.dev/selenium/web/inputs.html' } before { driver.get(url) } it 'checks if an element is displayed' do displayed_value = driver.find_element(name: 'email_input').displayed? expect(displayed_value).to be_truthy end it 'checks if an element is enabled' do enabled_value = driver.find_element(name: 'email_input').enabled? expect(enabled_value).to be_truthy end it 'checks if an element is selected' do selected_value = driver.find_element(name: 'email_input').selected? expect(selected_value).to be_falsey end it 'gets the tag name of an element' do tag_name = driver.find_element(name: 'email_input').tag_name expect(tag_name).not_to be_empty end it 'gets the size and position of an element' do size = driver.find_element(name: 'email_input').size expect(size.width).to be_positive expect(size.height).to be_positive end it 'gets the css value of an element' do css_value = driver.find_element(name: 'email_input').css_value('background-color') expect(css_value).not_to be_empty end it 'gets the text of an element' do text = driver.find_element(xpath: '//h1').text expect(text).to eq('Testing Inputs') end it 'gets the attribute value of an element' do attribute_value = driver.find_element(name: 'number_input').attribute('value') expect(attribute_value).not_to be_empty end end let object = await driver.findElement(By.name('range_input')).getRect();/examples/javascript/test/elements/information.spec.js
const {By, Builder} = require('selenium-webdriver'); const assert = require("assert"); describe('Element Information Test', function () { let driver; before(async function () { driver = await new Builder().forBrowser('chrome').build(); }); beforeEach(async ()=> { await driver.get('https://www.selenium.dev/selenium/web/inputs.html'); }) it('Check if element is displayed', async function () { // Resolves Promise and returns boolean value let result = await driver.findElement(By.name("email_input")).isDisplayed(); assert.equal(result,true); }); it('Check if button is enabled', async function () { // Resolves Promise and returns boolean value let element = await driver.findElement(By.name("button_input")).isEnabled(); assert.equal(element, true); }); it('Check if checkbox is selected', async function () { // Returns true if element ins checked else returns false let isSelected = await driver.findElement(By.name("checkbox_input")).isSelected(); assert.equal(isSelected, true); }); it('Should return the tagname', async function () { // Returns TagName of the element let value = await driver.findElement(By.name('email_input')).getTagName(); assert.equal(value, "input"); }); it('Should be able to fetch element size and position ', async function () { // Returns height, width, x and y position of the element let object = await driver.findElement(By.name('range_input')).getRect(); assert.ok(object.height!==null) assert.ok(object.width!==null) assert.ok(object.y!==null) assert.ok(object.x!==null) }); it('Should be able to fetch attributes and properties ', async function () { // identify the email text box const emailElement = await driver.findElement(By.xpath('//input[@name="email_input"]')); //fetch the attribute "name" associated with the textbox const nameAttribute = await emailElement.getAttribute("name"); assert.equal(nameAttribute, "email_input") }); after(async () => await driver.quit()); }); describe('Element Information Test', function () { let driver; before(async function () { driver = await new Builder().forBrowser('chrome').build(); }); it('Should return the css specified CSS value', async function () { await driver.get('https://www.selenium.dev/selenium/web/colorPage.html'); // Returns background color of the element let value = await driver.findElement(By.id('namedColor')).getCssValue('background-color'); assert.equal(value, "rgba(0, 128, 0, 1)"); }); it('Should return the css specified CSS value', async function () { await driver.get('https://www.selenium.dev/selenium/web/linked_image.html'); // Returns text of the element let text = await driver.findElement(By.id('justanotherLink')).getText(); assert.equal(text, "Just another link."); }); after(async () => await driver.quit()); });// Navigate to url driver.get("https://www.selenium.dev/selenium/web/inputs.html") // Returns height, width, x and y coordinates referenced element val res = driver.findElement(By.name("range_input")).rect // Rectangle class provides getX,getY, getWidth, getHeight methods println(res.getX())获取元素CSS值
获取当前浏览上下文中元素的特定计算样式属性的值。
// Retrieves the computed style property 'font-size' of field String cssValue = driver.findElement(By.name("color_input")).getCssValue("font-size");/examples/java/src/test/java/dev/selenium/elements/InformationTest.java
package dev.selenium.elements; import org.junit.jupiter.api.Test; import org.openqa.selenium.By; import org.openqa.selenium.Rectangle; import org.openqa.selenium.WebDriver; import org.openqa.selenium.WebElement; import org.openqa.selenium.chrome.ChromeDriver; import java.time.Duration; import static org.junit.jupiter.api.Assertions.assertEquals; import static org.junit.jupiter.api.Assertions.assertTrue; public class InformationTest { @Test public void informationWithElements() { WebDriver driver = new ChromeDriver(); driver.manage().timeouts().implicitlyWait(Duration.ofMillis(500)); // Navigate to Url driver.get("https://www.selenium.dev/selenium/web/inputs.html"); // isDisplayed // Get boolean value for is element display boolean isEmailVisible = driver.findElement(By.name("email_input")).isDisplayed(); assertTrue(isEmailVisible); // isEnabled // returns true if element is enabled else returns false boolean isEnabledButton = driver.findElement(By.name("button_input")).isEnabled(); assertTrue(isEnabledButton); // isSelected // returns true if element is checked else returns false boolean isSelectedCheck = driver.findElement(By.name("checkbox_input")).isSelected(); assertTrue(isSelectedCheck); // TagName // returns TagName of the element String tagNameInp = driver.findElement(By.name("email_input")).getTagName(); assertEquals("input", tagNameInp); // GetRect // Returns height, width, x and y coordinates referenced element Rectangle res = driver.findElement(By.name("range_input")).getRect(); // Rectangle class provides getX,getY, getWidth, getHeight methods assertEquals(10, res.getX()); // Retrieves the computed style property 'font-size' of field String cssValue = driver.findElement(By.name("color_input")).getCssValue("font-size"); assertEquals(cssValue, "13.3333px"); // GetText // Retrieves the text of the element String text = driver.findElement(By.tagName("h1")).getText(); assertEquals(text, "Testing Inputs"); // FetchAttributes // identify the email text box WebElement emailTxt = driver.findElement(By.name(("email_input"))); // fetch the value property associated with the textbox String valueInfo = emailTxt.getAttribute("value"); assertEquals(valueInfo,"admin@localhost"); driver.quit(); } } css_value = driver.find_element(By.NAME, "color_input").value_of_css_property( "font-size" )/examples/python/tests/elements/test_information.py
from selenium import webdriver from selenium.webdriver.common.by import By import pytest def test_informarion(): # Initialize WebDriver driver = webdriver.Chrome() driver.implicitly_wait(0.5) driver.get("https://www.selenium.dev/selenium/web/inputs.html") # isDisplayed is_email_visible = driver.find_element(By.NAME, "email_input").is_displayed() assert is_email_visible == True # isEnabled is_enabled_button = driver.find_element(By.NAME, "button_input").is_enabled() assert is_enabled_button == True # isSelected is_selected_check = driver.find_element(By.NAME, "checkbox_input").is_selected() assert is_selected_check == True # TagName tag_name_inp = driver.find_element(By.NAME, "email_input").tag_name assert tag_name_inp == "input" # GetRect rect = driver.find_element(By.NAME, "range_input").rect assert rect["x"] == 10 # CSS Value css_value = driver.find_element(By.NAME, "color_input").value_of_css_property( "font-size" ) assert css_value == "13.3333px" # GetText text = driver.find_element(By.TAG_NAME, "h1").text assert text == "Testing Inputs" # FetchAttributes email_txt = driver.find_element(By.NAME, "email_input") value_info = email_txt.get_attribute("value") assert value_info == "admin@localhost" // Retrieves the computed style property 'font-size' of field string cssValue = driver.FindElement(By.Name("color_input")).GetCssValue("font-size");/examples/dotnet/SeleniumDocs/Elements/InformationTest.cs
using System; using System.Drawing; using Microsoft.VisualStudio.TestTools.UnitTesting; using OpenQA.Selenium; using OpenQA.Selenium.Chrome; namespace SeleniumDocs.Elements { [TestClass] public class InformationTest { [TestMethod] public void TestInformationCommands(){ WebDriver driver = new ChromeDriver(); driver.Manage().Timeouts().ImplicitWait = TimeSpan.FromMilliseconds(500); // Navigate to Url driver.Url= "https://www.selenium.dev/selenium/web/inputs.html"; // isDisplayed // Get boolean value for is element display bool isEmailVisible = driver.FindElement(By.Name("email_input")).Displayed; Assert.AreEqual(isEmailVisible, true); // isEnabled // returns true if element is enabled else returns false bool isEnabledButton = driver.FindElement(By.Name("button_input")).Enabled; Assert.AreEqual(isEnabledButton, true); // isSelected // returns true if element is checked else returns false bool isSelectedCheck = driver.FindElement(By.Name("checkbox_input")).Selected; Assert.AreEqual(isSelectedCheck, true); // TagName // returns TagName of the element string tagNameInp = driver.FindElement(By.Name("email_input")).TagName; Assert.AreEqual(tagNameInp, "input"); // Get Location and Size // Get Location IWebElement rangeElement = driver.FindElement(By.Name("range_input")); Point point = rangeElement.Location; Assert.IsNotNull(point.X); // Get Size int height=rangeElement.Size.Height; Assert.IsNotNull(height); // Retrieves the computed style property 'font-size' of field string cssValue = driver.FindElement(By.Name("color_input")).GetCssValue("font-size"); Assert.AreEqual(cssValue, "13.3333px"); // GetText // Retrieves the text of the element string text = driver.FindElement(By.TagName("h1")).Text; Assert.AreEqual(text, "Testing Inputs"); // FetchAttributes // identify the email text box IWebElement emailTxt = driver.FindElement(By.Name("email_input")); // fetch the value property associated with the textbox string valueInfo = emailTxt.GetAttribute("value"); Assert.AreEqual(valueInfo, "admin@localhost"); //Quit the driver driver.Quit(); } } } css_value = driver.find_element(name: 'email_input').css_value('background-color')/examples/ruby/spec/elements/information_spec.rb
# frozen_string_literal: true require 'spec_helper' RSpec.describe 'Element Information' do let(:driver) { start_session } let(:url) { 'https://www.selenium.dev/selenium/web/inputs.html' } before { driver.get(url) } it 'checks if an element is displayed' do displayed_value = driver.find_element(name: 'email_input').displayed? expect(displayed_value).to be_truthy end it 'checks if an element is enabled' do enabled_value = driver.find_element(name: 'email_input').enabled? expect(enabled_value).to be_truthy end it 'checks if an element is selected' do selected_value = driver.find_element(name: 'email_input').selected? expect(selected_value).to be_falsey end it 'gets the tag name of an element' do tag_name = driver.find_element(name: 'email_input').tag_name expect(tag_name).not_to be_empty end it 'gets the size and position of an element' do size = driver.find_element(name: 'email_input').size expect(size.width).to be_positive expect(size.height).to be_positive end it 'gets the css value of an element' do css_value = driver.find_element(name: 'email_input').css_value('background-color') expect(css_value).not_to be_empty end it 'gets the text of an element' do text = driver.find_element(xpath: '//h1').text expect(text).to eq('Testing Inputs') end it 'gets the attribute value of an element' do attribute_value = driver.find_element(name: 'number_input').attribute('value') expect(attribute_value).not_to be_empty end end await driver.get('https://www.selenium.dev/selenium/web/colorPage.html'); // Returns background color of the element let value = await driver.findElement(By.id('namedColor')).getCssValue('background-color');/examples/javascript/test/elements/information.spec.js
const {By, Builder} = require('selenium-webdriver'); const assert = require("assert"); describe('Element Information Test', function () { let driver; before(async function () { driver = await new Builder().forBrowser('chrome').build(); }); beforeEach(async ()=> { await driver.get('https://www.selenium.dev/selenium/web/inputs.html'); }) it('Check if element is displayed', async function () { // Resolves Promise and returns boolean value let result = await driver.findElement(By.name("email_input")).isDisplayed(); assert.equal(result,true); }); it('Check if button is enabled', async function () { // Resolves Promise and returns boolean value let element = await driver.findElement(By.name("button_input")).isEnabled(); assert.equal(element, true); }); it('Check if checkbox is selected', async function () { // Returns true if element ins checked else returns false let isSelected = await driver.findElement(By.name("checkbox_input")).isSelected(); assert.equal(isSelected, true); }); it('Should return the tagname', async function () { // Returns TagName of the element let value = await driver.findElement(By.name('email_input')).getTagName(); assert.equal(value, "input"); }); it('Should be able to fetch element size and position ', async function () { // Returns height, width, x and y position of the element let object = await driver.findElement(By.name('range_input')).getRect(); assert.ok(object.height!==null) assert.ok(object.width!==null) assert.ok(object.y!==null) assert.ok(object.x!==null) }); it('Should be able to fetch attributes and properties ', async function () { // identify the email text box const emailElement = await driver.findElement(By.xpath('//input[@name="email_input"]')); //fetch the attribute "name" associated with the textbox const nameAttribute = await emailElement.getAttribute("name"); assert.equal(nameAttribute, "email_input") }); after(async () => await driver.quit()); }); describe('Element Information Test', function () { let driver; before(async function () { driver = await new Builder().forBrowser('chrome').build(); }); it('Should return the css specified CSS value', async function () { await driver.get('https://www.selenium.dev/selenium/web/colorPage.html'); // Returns background color of the element let value = await driver.findElement(By.id('namedColor')).getCssValue('background-color'); assert.equal(value, "rgba(0, 128, 0, 1)"); }); it('Should return the css specified CSS value', async function () { await driver.get('https://www.selenium.dev/selenium/web/linked_image.html'); // Returns text of the element let text = await driver.findElement(By.id('justanotherLink')).getText(); assert.equal(text, "Just another link."); }); after(async () => await driver.quit()); });// Navigate to Url driver.get("https://www.selenium.dev/selenium/web/colorPage.html") // Retrieves the computed style property 'color' of linktext val cssValue = driver.findElement(By.id("namedColor")).getCssValue("background-color")文本内容
获取特定元素渲染后的文本内容。
// GetText // Retrieves the text of the element String text = driver.findElement(By.tagName("h1")).getText();/examples/java/src/test/java/dev/selenium/elements/InformationTest.java
package dev.selenium.elements; import org.junit.jupiter.api.Test; import org.openqa.selenium.By; import org.openqa.selenium.Rectangle; import org.openqa.selenium.WebDriver; import org.openqa.selenium.WebElement; import org.openqa.selenium.chrome.ChromeDriver; import java.time.Duration; import static org.junit.jupiter.api.Assertions.assertEquals; import static org.junit.jupiter.api.Assertions.assertTrue; public class InformationTest { @Test public void informationWithElements() { WebDriver driver = new ChromeDriver(); driver.manage().timeouts().implicitlyWait(Duration.ofMillis(500)); // Navigate to Url driver.get("https://www.selenium.dev/selenium/web/inputs.html"); // isDisplayed // Get boolean value for is element display boolean isEmailVisible = driver.findElement(By.name("email_input")).isDisplayed(); assertTrue(isEmailVisible); // isEnabled // returns true if element is enabled else returns false boolean isEnabledButton = driver.findElement(By.name("button_input")).isEnabled(); assertTrue(isEnabledButton); // isSelected // returns true if element is checked else returns false boolean isSelectedCheck = driver.findElement(By.name("checkbox_input")).isSelected(); assertTrue(isSelectedCheck); // TagName // returns TagName of the element String tagNameInp = driver.findElement(By.name("email_input")).getTagName(); assertEquals("input", tagNameInp); // GetRect // Returns height, width, x and y coordinates referenced element Rectangle res = driver.findElement(By.name("range_input")).getRect(); // Rectangle class provides getX,getY, getWidth, getHeight methods assertEquals(10, res.getX()); // Retrieves the computed style property 'font-size' of field String cssValue = driver.findElement(By.name("color_input")).getCssValue("font-size"); assertEquals(cssValue, "13.3333px"); // GetText // Retrieves the text of the element String text = driver.findElement(By.tagName("h1")).getText(); assertEquals(text, "Testing Inputs"); // FetchAttributes // identify the email text box WebElement emailTxt = driver.findElement(By.name(("email_input"))); // fetch the value property associated with the textbox String valueInfo = emailTxt.getAttribute("value"); assertEquals(valueInfo,"admin@localhost"); driver.quit(); } } text = driver.find_element(By.TAG_NAME, "h1").text/examples/python/tests/elements/test_information.py
from selenium import webdriver from selenium.webdriver.common.by import By import pytest def test_informarion(): # Initialize WebDriver driver = webdriver.Chrome() driver.implicitly_wait(0.5) driver.get("https://www.selenium.dev/selenium/web/inputs.html") # isDisplayed is_email_visible = driver.find_element(By.NAME, "email_input").is_displayed() assert is_email_visible == True # isEnabled is_enabled_button = driver.find_element(By.NAME, "button_input").is_enabled() assert is_enabled_button == True # isSelected is_selected_check = driver.find_element(By.NAME, "checkbox_input").is_selected() assert is_selected_check == True # TagName tag_name_inp = driver.find_element(By.NAME, "email_input").tag_name assert tag_name_inp == "input" # GetRect rect = driver.find_element(By.NAME, "range_input").rect assert rect["x"] == 10 # CSS Value css_value = driver.find_element(By.NAME, "color_input").value_of_css_property( "font-size" ) assert css_value == "13.3333px" # GetText text = driver.find_element(By.TAG_NAME, "h1").text assert text == "Testing Inputs" # FetchAttributes email_txt = driver.find_element(By.NAME, "email_input") value_info = email_txt.get_attribute("value") assert value_info == "admin@localhost" // GetText // Retrieves the text of the element string text = driver.FindElement(By.TagName("h1")).Text;/examples/dotnet/SeleniumDocs/Elements/InformationTest.cs
using System; using System.Drawing; using Microsoft.VisualStudio.TestTools.UnitTesting; using OpenQA.Selenium; using OpenQA.Selenium.Chrome; namespace SeleniumDocs.Elements { [TestClass] public class InformationTest { [TestMethod] public void TestInformationCommands(){ WebDriver driver = new ChromeDriver(); driver.Manage().Timeouts().ImplicitWait = TimeSpan.FromMilliseconds(500); // Navigate to Url driver.Url= "https://www.selenium.dev/selenium/web/inputs.html"; // isDisplayed // Get boolean value for is element display bool isEmailVisible = driver.FindElement(By.Name("email_input")).Displayed; Assert.AreEqual(isEmailVisible, true); // isEnabled // returns true if element is enabled else returns false bool isEnabledButton = driver.FindElement(By.Name("button_input")).Enabled; Assert.AreEqual(isEnabledButton, true); // isSelected // returns true if element is checked else returns false bool isSelectedCheck = driver.FindElement(By.Name("checkbox_input")).Selected; Assert.AreEqual(isSelectedCheck, true); // TagName // returns TagName of the element string tagNameInp = driver.FindElement(By.Name("email_input")).TagName; Assert.AreEqual(tagNameInp, "input"); // Get Location and Size // Get Location IWebElement rangeElement = driver.FindElement(By.Name("range_input")); Point point = rangeElement.Location; Assert.IsNotNull(point.X); // Get Size int height=rangeElement.Size.Height; Assert.IsNotNull(height); // Retrieves the computed style property 'font-size' of field string cssValue = driver.FindElement(By.Name("color_input")).GetCssValue("font-size"); Assert.AreEqual(cssValue, "13.3333px"); // GetText // Retrieves the text of the element string text = driver.FindElement(By.TagName("h1")).Text; Assert.AreEqual(text, "Testing Inputs"); // FetchAttributes // identify the email text box IWebElement emailTxt = driver.FindElement(By.Name("email_input")); // fetch the value property associated with the textbox string valueInfo = emailTxt.GetAttribute("value"); Assert.AreEqual(valueInfo, "admin@localhost"); //Quit the driver driver.Quit(); } } } text = driver.find_element(xpath: '//h1').text/examples/ruby/spec/elements/information_spec.rb
# frozen_string_literal: true require 'spec_helper' RSpec.describe 'Element Information' do let(:driver) { start_session } let(:url) { 'https://www.selenium.dev/selenium/web/inputs.html' } before { driver.get(url) } it 'checks if an element is displayed' do displayed_value = driver.find_element(name: 'email_input').displayed? expect(displayed_value).to be_truthy end it 'checks if an element is enabled' do enabled_value = driver.find_element(name: 'email_input').enabled? expect(enabled_value).to be_truthy end it 'checks if an element is selected' do selected_value = driver.find_element(name: 'email_input').selected? expect(selected_value).to be_falsey end it 'gets the tag name of an element' do tag_name = driver.find_element(name: 'email_input').tag_name expect(tag_name).not_to be_empty end it 'gets the size and position of an element' do size = driver.find_element(name: 'email_input').size expect(size.width).to be_positive expect(size.height).to be_positive end it 'gets the css value of an element' do css_value = driver.find_element(name: 'email_input').css_value('background-color') expect(css_value).not_to be_empty end it 'gets the text of an element' do text = driver.find_element(xpath: '//h1').text expect(text).to eq('Testing Inputs') end it 'gets the attribute value of an element' do attribute_value = driver.find_element(name: 'number_input').attribute('value') expect(attribute_value).not_to be_empty end end await driver.get('https://www.selenium.dev/selenium/web/linked_image.html'); // Returns text of the element let text = await driver.findElement(By.id('justanotherLink')).getText();/examples/javascript/test/elements/information.spec.js
const {By, Builder} = require('selenium-webdriver'); const assert = require("assert"); describe('Element Information Test', function () { let driver; before(async function () { driver = await new Builder().forBrowser('chrome').build(); }); beforeEach(async ()=> { await driver.get('https://www.selenium.dev/selenium/web/inputs.html'); }) it('Check if element is displayed', async function () { // Resolves Promise and returns boolean value let result = await driver.findElement(By.name("email_input")).isDisplayed(); assert.equal(result,true); }); it('Check if button is enabled', async function () { // Resolves Promise and returns boolean value let element = await driver.findElement(By.name("button_input")).isEnabled(); assert.equal(element, true); }); it('Check if checkbox is selected', async function () { // Returns true if element ins checked else returns false let isSelected = await driver.findElement(By.name("checkbox_input")).isSelected(); assert.equal(isSelected, true); }); it('Should return the tagname', async function () { // Returns TagName of the element let value = await driver.findElement(By.name('email_input')).getTagName(); assert.equal(value, "input"); }); it('Should be able to fetch element size and position ', async function () { // Returns height, width, x and y position of the element let object = await driver.findElement(By.name('range_input')).getRect(); assert.ok(object.height!==null) assert.ok(object.width!==null) assert.ok(object.y!==null) assert.ok(object.x!==null) }); it('Should be able to fetch attributes and properties ', async function () { // identify the email text box const emailElement = await driver.findElement(By.xpath('//input[@name="email_input"]')); //fetch the attribute "name" associated with the textbox const nameAttribute = await emailElement.getAttribute("name"); assert.equal(nameAttribute, "email_input") }); after(async () => await driver.quit()); }); describe('Element Information Test', function () { let driver; before(async function () { driver = await new Builder().forBrowser('chrome').build(); }); it('Should return the css specified CSS value', async function () { await driver.get('https://www.selenium.dev/selenium/web/colorPage.html'); // Returns background color of the element let value = await driver.findElement(By.id('namedColor')).getCssValue('background-color'); assert.equal(value, "rgba(0, 128, 0, 1)"); }); it('Should return the css specified CSS value', async function () { await driver.get('https://www.selenium.dev/selenium/web/linked_image.html'); // Returns text of the element let text = await driver.findElement(By.id('justanotherLink')).getText(); assert.equal(text, "Just another link."); }); after(async () => await driver.quit()); });// Navigate to URL driver.get("https://www.selenium.dev/selenium/web/linked_image.html") // retrieves the text of the element val text = driver.findElement(By.id("justanotherlink")).getText()获取特性或属性
获取与 DOM 属性关联的运行时的值。 它返回与该元素的 DOM 特性或属性关联的数据。
// FetchAttributes // identify the email text box WebElement emailTxt = driver.findElement(By.name(("email_input"))); // fetch the value property associated with the textbox String valueInfo = emailTxt.getAttribute("value");/examples/java/src/test/java/dev/selenium/elements/InformationTest.java
package dev.selenium.elements; import org.junit.jupiter.api.Test; import org.openqa.selenium.By; import org.openqa.selenium.Rectangle; import org.openqa.selenium.WebDriver; import org.openqa.selenium.WebElement; import org.openqa.selenium.chrome.ChromeDriver; import java.time.Duration; import static org.junit.jupiter.api.Assertions.assertEquals; import static org.junit.jupiter.api.Assertions.assertTrue; public class InformationTest { @Test public void informationWithElements() { WebDriver driver = new ChromeDriver(); driver.manage().timeouts().implicitlyWait(Duration.ofMillis(500)); // Navigate to Url driver.get("https://www.selenium.dev/selenium/web/inputs.html"); // isDisplayed // Get boolean value for is element display boolean isEmailVisible = driver.findElement(By.name("email_input")).isDisplayed(); assertTrue(isEmailVisible); // isEnabled // returns true if element is enabled else returns false boolean isEnabledButton = driver.findElement(By.name("button_input")).isEnabled(); assertTrue(isEnabledButton); // isSelected // returns true if element is checked else returns false boolean isSelectedCheck = driver.findElement(By.name("checkbox_input")).isSelected(); assertTrue(isSelectedCheck); // TagName // returns TagName of the element String tagNameInp = driver.findElement(By.name("email_input")).getTagName(); assertEquals("input", tagNameInp); // GetRect // Returns height, width, x and y coordinates referenced element Rectangle res = driver.findElement(By.name("range_input")).getRect(); // Rectangle class provides getX,getY, getWidth, getHeight methods assertEquals(10, res.getX()); // Retrieves the computed style property 'font-size' of field String cssValue = driver.findElement(By.name("color_input")).getCssValue("font-size"); assertEquals(cssValue, "13.3333px"); // GetText // Retrieves the text of the element String text = driver.findElement(By.tagName("h1")).getText(); assertEquals(text, "Testing Inputs"); // FetchAttributes // identify the email text box WebElement emailTxt = driver.findElement(By.name(("email_input"))); // fetch the value property associated with the textbox String valueInfo = emailTxt.getAttribute("value"); assertEquals(valueInfo,"admin@localhost"); driver.quit(); } } # FetchAttributes email_txt = driver.find_element(By.NAME, "email_input") value_info = email_txt.get_attribute("value")/examples/python/tests/elements/test_information.py
from selenium import webdriver from selenium.webdriver.common.by import By import pytest def test_informarion(): # Initialize WebDriver driver = webdriver.Chrome() driver.implicitly_wait(0.5) driver.get("https://www.selenium.dev/selenium/web/inputs.html") # isDisplayed is_email_visible = driver.find_element(By.NAME, "email_input").is_displayed() assert is_email_visible == True # isEnabled is_enabled_button = driver.find_element(By.NAME, "button_input").is_enabled() assert is_enabled_button == True # isSelected is_selected_check = driver.find_element(By.NAME, "checkbox_input").is_selected() assert is_selected_check == True # TagName tag_name_inp = driver.find_element(By.NAME, "email_input").tag_name assert tag_name_inp == "input" # GetRect rect = driver.find_element(By.NAME, "range_input").rect assert rect["x"] == 10 # CSS Value css_value = driver.find_element(By.NAME, "color_input").value_of_css_property( "font-size" ) assert css_value == "13.3333px" # GetText text = driver.find_element(By.TAG_NAME, "h1").text assert text == "Testing Inputs" # FetchAttributes email_txt = driver.find_element(By.NAME, "email_input") value_info = email_txt.get_attribute("value") assert value_info == "admin@localhost" // FetchAttributes // identify the email text box IWebElement emailTxt = driver.FindElement(By.Name("email_input")); // fetch the value property associated with the textbox string valueInfo = emailTxt.GetAttribute("value");/examples/dotnet/SeleniumDocs/Elements/InformationTest.cs
using System; using System.Drawing; using Microsoft.VisualStudio.TestTools.UnitTesting; using OpenQA.Selenium; using OpenQA.Selenium.Chrome; namespace SeleniumDocs.Elements { [TestClass] public class InformationTest { [TestMethod] public void TestInformationCommands(){ WebDriver driver = new ChromeDriver(); driver.Manage().Timeouts().ImplicitWait = TimeSpan.FromMilliseconds(500); // Navigate to Url driver.Url= "https://www.selenium.dev/selenium/web/inputs.html"; // isDisplayed // Get boolean value for is element display bool isEmailVisible = driver.FindElement(By.Name("email_input")).Displayed; Assert.AreEqual(isEmailVisible, true); // isEnabled // returns true if element is enabled else returns false bool isEnabledButton = driver.FindElement(By.Name("button_input")).Enabled; Assert.AreEqual(isEnabledButton, true); // isSelected // returns true if element is checked else returns false bool isSelectedCheck = driver.FindElement(By.Name("checkbox_input")).Selected; Assert.AreEqual(isSelectedCheck, true); // TagName // returns TagName of the element string tagNameInp = driver.FindElement(By.Name("email_input")).TagName; Assert.AreEqual(tagNameInp, "input"); // Get Location and Size // Get Location IWebElement rangeElement = driver.FindElement(By.Name("range_input")); Point point = rangeElement.Location; Assert.IsNotNull(point.X); // Get Size int height=rangeElement.Size.Height; Assert.IsNotNull(height); // Retrieves the computed style property 'font-size' of field string cssValue = driver.FindElement(By.Name("color_input")).GetCssValue("font-size"); Assert.AreEqual(cssValue, "13.3333px"); // GetText // Retrieves the text of the element string text = driver.FindElement(By.TagName("h1")).Text; Assert.AreEqual(text, "Testing Inputs"); // FetchAttributes // identify the email text box IWebElement emailTxt = driver.FindElement(By.Name("email_input")); // fetch the value property associated with the textbox string valueInfo = emailTxt.GetAttribute("value"); Assert.AreEqual(valueInfo, "admin@localhost"); //Quit the driver driver.Quit(); } } } attribute_value = driver.find_element(name: 'number_input').attribute('value')/examples/ruby/spec/elements/information_spec.rb
# frozen_string_literal: true require 'spec_helper' RSpec.describe 'Element Information' do let(:driver) { start_session } let(:url) { 'https://www.selenium.dev/selenium/web/inputs.html' } before { driver.get(url) } it 'checks if an element is displayed' do displayed_value = driver.find_element(name: 'email_input').displayed? expect(displayed_value).to be_truthy end it 'checks if an element is enabled' do enabled_value = driver.find_element(name: 'email_input').enabled? expect(enabled_value).to be_truthy end it 'checks if an element is selected' do selected_value = driver.find_element(name: 'email_input').selected? expect(selected_value).to be_falsey end it 'gets the tag name of an element' do tag_name = driver.find_element(name: 'email_input').tag_name expect(tag_name).not_to be_empty end it 'gets the size and position of an element' do size = driver.find_element(name: 'email_input').size expect(size.width).to be_positive expect(size.height).to be_positive end it 'gets the css value of an element' do css_value = driver.find_element(name: 'email_input').css_value('background-color') expect(css_value).not_to be_empty end it 'gets the text of an element' do text = driver.find_element(xpath: '//h1').text expect(text).to eq('Testing Inputs') end it 'gets the attribute value of an element' do attribute_value = driver.find_element(name: 'number_input').attribute('value') expect(attribute_value).not_to be_empty end end // identify the email text box const emailElement = await driver.findElement(By.xpath('//input[@name="email_input"]')); //fetch the attribute "name" associated with the textbox const nameAttribute = await emailElement.getAttribute("name");/examples/javascript/test/elements/information.spec.js
const {By, Builder} = require('selenium-webdriver'); const assert = require("assert"); describe('Element Information Test', function () { let driver; before(async function () { driver = await new Builder().forBrowser('chrome').build(); }); beforeEach(async ()=> { await driver.get('https://www.selenium.dev/selenium/web/inputs.html'); }) it('Check if element is displayed', async function () { // Resolves Promise and returns boolean value let result = await driver.findElement(By.name("email_input")).isDisplayed(); assert.equal(result,true); }); it('Check if button is enabled', async function () { // Resolves Promise and returns boolean value let element = await driver.findElement(By.name("button_input")).isEnabled(); assert.equal(element, true); }); it('Check if checkbox is selected', async function () { // Returns true if element ins checked else returns false let isSelected = await driver.findElement(By.name("checkbox_input")).isSelected(); assert.equal(isSelected, true); }); it('Should return the tagname', async function () { // Returns TagName of the element let value = await driver.findElement(By.name('email_input')).getTagName(); assert.equal(value, "input"); }); it('Should be able to fetch element size and position ', async function () { // Returns height, width, x and y position of the element let object = await driver.findElement(By.name('range_input')).getRect(); assert.ok(object.height!==null) assert.ok(object.width!==null) assert.ok(object.y!==null) assert.ok(object.x!==null) }); it('Should be able to fetch attributes and properties ', async function () { // identify the email text box const emailElement = await driver.findElement(By.xpath('//input[@name="email_input"]')); //fetch the attribute "name" associated with the textbox const nameAttribute = await emailElement.getAttribute("name"); assert.equal(nameAttribute, "email_input") }); after(async () => await driver.quit()); }); describe('Element Information Test', function () { let driver; before(async function () { driver = await new Builder().forBrowser('chrome').build(); }); it('Should return the css specified CSS value', async function () { await driver.get('https://www.selenium.dev/selenium/web/colorPage.html'); // Returns background color of the element let value = await driver.findElement(By.id('namedColor')).getCssValue('background-color'); assert.equal(value, "rgba(0, 128, 0, 1)"); }); it('Should return the css specified CSS value', async function () { await driver.get('https://www.selenium.dev/selenium/web/linked_image.html'); // Returns text of the element let text = await driver.findElement(By.id('justanotherLink')).getText(); assert.equal(text, "Just another link."); }); after(async () => await driver.quit()); });// Navigate to URL driver.get("https://www.selenium.dev/selenium/web/inputs.html") //fetch the value property associated with the textbox val attr = driver.findElement(By.name("email_input")).getAttribute("value")最后修改 July 29, 2025: Adding trailing / to retrieve code from GitHub (48b97e9bf82)




