【Web自动化测试——代码篇四】常用方法——常见元素操作

浏览器这个大框架我们都能控制,区区页面小元素又能奈我们何!!!之前的【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‘).text
18
19   driver.close #退出程序
20 end

原文地址:https://www.cnblogs.com/CSgarcia/p/9413791.html

时间: 2024-10-08 12:46:12

【Web自动化测试——代码篇四】常用方法——常见元素操作的相关文章

【Web自动化测试——代码篇五】常用方法——鼠标键盘事件

  Java Python Ruby 鼠标事件 右击 Actions action = new Actions(driver); action.contextClick(inputBox).build().perform() ActionChains(driver).context_click(元素).perform() driver.action.context_click(元素).perform 双击 action.doubleClick(元素).build().perform() Acti

【Web自动化测试——代码篇八】常用方法——上传/下载文件

上传文件 对于Web页面的上传功能实现一般有一下俩种方式: 普通上传:将本地文件的路径作为一个值放在input标签中,通过form表单将这个值提交给服务器(不做介绍send_keys方法). AutoIt上传:利用模拟键盘按键,鼠标移动和窗口/控件的组合来实现自动化任务. 下面我们实际操作一下来讲解AutoIt上传文件的过程: 1.安装AutoIt(下载网址:https://www.autoitscript.com/site/autoit/downloads/) 2.打开AutoIt Windo

selenium 常见元素操作:三大等待

selenium 常见元素操作 三大等待 三大切换(iframe,window,alert) 下拉列表 鼠标和键盘 js+ dom应用() 上传操作 强制等待:time.sleep()        (译:私立破) 必须等待固定时间后才可以往下运行 from selenium import webdriver import time # 强制等待需要导入time,使用其中的sleep方法 # 强制等待 sleep(译:私立破) # 打开谷歌浏览器,建立会话.启动Chromedriver.exe

Web自动化测试项目(四)测试报告

测试报告生成 使用HTMLTestRunner 生成测试报告 本文使用的 HTMLTestRunner 来源于github: https://github.com/githublitao/HTMLTestRunner_Chart 参考链接: http://tungwaiyip.info/software/HTMLTestRunner.html https://github.com/GoverSky/HTMLTestRunner_cn 把下载下来的HTMLTestRunner_Chart.py存放

web自动化测试—selenium游览器下拉框操作

# coding=utf-8'''下拉框实战思路导包:from selenium.webdriver.support.select import Select #下拉框select from selenium.webdriver.common.action_chains import ActionChains #鼠标操作先定位到下拉框-->>实例化Select类-->>实例化后调用select类的任何一个方法定位方式分为索引 select_by_index() value sele

后端码农谈前端(HTML篇)第二课:常见元素

一.根元素 <doctype> 定义文档类型. <html> 定义 HTML 文档. 二.元数据元素 <head> 定义关于文档的信息. <meta> 定义关于 HTML 文档的元数据. <link> 定义文档与外部资源之间的关系,一般用于引入样式表. <base> 定义页面上所有链接的默认地址或默认目标. <title> 定义文档标题. <style> 定义文档的样式信息. 三.脚本元素 <script

web自动化测试-D3-学习笔记之一(Selenium彩蛋篇-Xpath使用方法)

由于最新版火狐不在支持FireBug等开发工具,可以通过https://ftp.mozilla.org/pub/firefox/releases/下载49版本以下的火狐就可以增加Firebug等扩展了. 什么是Xpath? XPath是XML的路径语言,通俗一点讲就是通过元素的路径来查找到这个标签元素. 工具 Xpath的练习建议大家安装火狐浏览器后,下载插件,FireBug. Xpath使用方法 注:默认死格式 先写 //* 代表定位页面下所有元素 1.Xpath支持ID.Class.Name

Python3-Selenium自动化测试框架(四)之css元素定位

Selenium自动化测试框架(四)之css元素定位 一.css元素定位 CSS可以通过元素的id.class.标签(input)这三个常规属性直接定位到 id-->> # class-->> . 1.通过id进行定位 input#kw #kw 2.通过class进行定位 input.s_ipt .s_ipt 3.子类定位">":通过先定位父类(self),再定位self下的子类 #s_kw_wrap>#kw 4.同级定位"+":

python - web自动化测试 - 元素操作 - 窗口切换

# -*- coding:utf-8 -*- ''' @project: web学习 @author: Jimmy @file: 元素操作-切换.py @ide: PyCharm Community Edition @time: 2019-01-19 10:43 @blog: https://www.cnblogs.com/gotesting/ ''' ''' windows窗口切换:切换到要操作的窗口 有多个窗口 1. 触发新窗口的出现 2. 得知道新窗口是谁 -- 依据窗口的window_h