【Web自動化測試——代碼篇四】常用方法——常見元素操作

來源:互聯網
上載者:User

標籤:comm   font   相關   rubygems   sts   key   rda   fir   文字框   

瀏覽器這個大架構我們都能控制,區區頁面小元素又能奈我們何!!!之前的【Web自動化測試——代碼篇二】條條大路找元素 已經講述了許多擷取元素的方法,在此基礎上我們來認識幾個元素最常見的相關操作?(ˉ﹃ˉ?)

 

  Java Python Ruby
輸入內容 sendKeys(*value) send_keys(*value) send_keys(*value)
單擊元素 click() click() click
清除文本 clear() clear() clear
提交表單 submit() submit() submit
擷取元素的文本 getText() text text
擷取元素的指定屬性值 getAttribute(String attributeName) get_attribute(String attributeName) attribute(String attributeName)
**代碼時間 **

(。﹏。*)其實吧,“擷取元素的文本”這個方法我是想擷取 百度輸入框 的文本的,但是不知道為啥雖然代碼不報錯卻一直擷取不到它的文本(難道是因為它是input文字框的問題?╮(╯▽╰)╭)。所以我就想既然我們有“擷取元素的指定屬性值”這個方法,那我們就直接擷取它的value屬性值<( ̄︶ ̄)[GO!]

 

Java

 

 1 package JavaTest; 2  3 import org.openqa.selenium.By; 4 import org.openqa.selenium.WebDriver; 5 import org.openqa.selenium.firefox.FirefoxDriver; 6  7 public class Test { 8     public static void main(String[] arg) throws InterruptedException 9     {10         WebDriver driver = new FirefoxDriver();11         driver.get("http://www.baidu.com/");12 13         driver.findElement(By.id("kw")).sendKeys("Java");  //對百度輸入框賦值14         driver.findElement(By.id("kw")).submit();  //對百度輸入框提交15                 System.out.println(driver.findElement(By.id("kw")).getAttribute("value")); //擷取百度輸入框值16         Thread.sleep(2000);17         driver.findElement(By.id("kw")).clear();  //清除百度輸入框18         Thread.sleep(2000);19         driver.findElement(By.id("su")).click();  //點擊百度搜尋按鈕20         Thread.sleep(2000);21         System.out.println(driver.findElement(By.id("cp")).getText());  //顯示百度備案資訊文本22 23         driver.close();  //結束24     }25 }
 Python

 

 1 from time import * 2 from selenium import webdriver 3 from selenium.webdriver.common.by import By 4  5 # 啟動Firefox瀏覽器 6 driver = webdriver.Firefox() 7 driver.get(‘http://www.baidu.com‘) 8  9 driver.find_element(By.XPATH,"//*[@class=‘s_ipt‘]").send_keys(‘Python‘)  # 對百度輸入框賦值10 driver.find_element_by_xpath("//input[@type=‘submit‘]").submit()  # 對百度輸入框提交11 print(driver.find_element(By.ID,‘kw‘).get_attribute(‘value‘)) # 擷取百度輸入框值12 sleep(2) # 休眠2秒13 driver.find_element(By.ID,‘kw‘).clear()  # 清除百度輸入框14 sleep(2)15 driver.find_element_by_id(‘su‘).click()  # 點擊百度搜尋按鈕16 sleep(2)17 print(driver.find_element(By.ID,‘cp‘).text)  # 顯示百度備案資訊文本18 19 driver.close() # 結束
 Ruby

 

 1 class Baidu 2   require ‘rubygems‘ 3   require ‘selenium-webdriver‘ 4  5   #開啟firefox並輸入網址 6   driver = Selenium::WebDriver.for :firefox 7   driver.navigate.to "http://www.baidu.com" 8  9   driver.find_element(:name, ‘wd‘).send_keys(‘Ruby‘)  # 對百度輸入框賦值10   driver.find_element(:id, ‘kw‘).submit # 百度輸入框提交11   puts driver.find_element(:id, ‘kw‘).attribute(‘value‘) # 擷取百度輸入框值12   sleep(2) # 休眠2秒13   driver.find_element(:xpath, "//*[@class=‘s_ipt‘]").clear # 清除百度輸入框14   sleep(2)15   driver.find_element(:id, ‘su‘).click # 點擊百度搜尋按鈕16   sleep(2)17   puts driver.find_element(:id, ‘cp‘).text18 19   driver.close #退出程式20 end

【Web自動化測試——代碼篇四】常用方法——常見元素操作

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.