selenium测试(Java)--下拉框(二十一)
例子:

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>calc</title>
<script>
function calcResult() {
var num1 = document.getElementById("id1").value;
var calctag = document.getElementById("id2").value;
var num2 = document.getElementById("id3").value;
var result = 0; switch (calctag) {
case "+":
result = parseInt(num1) + parseInt(num2);
break;
case "-":
result = parseInt(num1) - parseInt(num2);
break;
case "*":
result = parseInt(num1) * parseInt(num2);
break;
case "/":
if (parseInt(num2) == 0) {
alert("数字2不能为0");
} else {
result = parseInt(num1) / parseInt(num2);
}
break;
default:
alert("......");
} document.getElementById("id5").value = result; }
</script>
</head>
<body>
<form>
数字1:<input type="text" id="id1" name="num1" />
<select id="id2" name="calc">
<option value="+" selected="selected">加</option>
<option value="-">减</option>
<option value="*">乘</option>
<option value="/">除</option>
</select>
数字2:<input type="text" id="id3" name="num2" />
<input type="button" name="is" id="id4" value="=" onclick="calcResult()" />
结果:<input type="text" id="id5" name="result" />
</form>
</body>
</html>
代码:
package com.test.select; import java.util.Iterator;
import java.util.List; import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.firefox.FirefoxDriver;
import org.openqa.selenium.support.ui.Select; public class SelectTest { public static void main(String[] args) {
WebDriver driver = new FirefoxDriver();
driver.get("file:///D:/10-selenium/workspace/SeleniumTest/src/com/test/select/calc.html");
driver.manage().window().maximize(); driver.findElement(By.id("id1")).sendKeys("4"); Select sel = new Select(driver.findElement(By.name("calc")));
sel.selectByValue("/"); driver.findElement(By.id("id3")).sendKeys("2"); driver.findElement(By.id("id4")).click(); System.out.println(driver.findElement(By.id("id5")).getAttribute("value")); ////////////////////////////////////////////////////////////////
driver.findElement(By.id("id1")).clear();
driver.findElement(By.id("id1")).sendKeys("3"); Select sel2 = new Select(driver.findElement(By.name("calc")));
sel2.selectByValue("+"); driver.findElement(By.id("id3")).clear();
driver.findElement(By.id("id3")).sendKeys("1"); driver.findElement(By.id("id4")).click(); System.out.println(driver.findElement(By.id("id5")).getAttribute("value")); ////////////////////////////////////////////////////////////////
driver.findElement(By.id("id1")).clear();
driver.findElement(By.id("id1")).sendKeys("5"); Select sel3 = new Select(driver.findElement(By.name("calc")));
sel3.selectByValue("*"); driver.findElement(By.id("id3")).clear();
driver.findElement(By.id("id3")).sendKeys("6"); driver.findElement(By.id("id4")).click(); System.out.println(driver.findElement(By.id("id5")).getAttribute("value")); ////////////////////////////////////////////////////////////////
driver.findElement(By.id("id1")).clear();
driver.findElement(By.id("id1")).sendKeys("100"); Select sel4 = new Select(driver.findElement(By.name("calc")));
sel4.selectByValue("-"); driver.findElement(By.id("id3")).clear();
driver.findElement(By.id("id3")).sendKeys("1"); driver.findElement(By.id("id4")).click(); System.out.println(driver.findElement(By.id("id5")).getAttribute("value")); ////////////////////////////////////////////////////////////////////////////////
Select selall = new Select(driver.findElement(By.name("calc"))); List<WebElement> lw= selall.getOptions();
Iterator<WebElement> iterator = lw.iterator();
while(iterator.hasNext()){
System.out.println(iterator.next().getAttribute("value"));
} driver.quit(); } }
结果:
4
99
+
-
*
/
selenium测试(Java)--下拉框(二十一)的更多相关文章
- 《手把手教你》系列技巧篇(三十二)-java+ selenium自动化测试-select 下拉框(详解教程)
1.简介 在实际自动化测试过程中,我们也避免不了会遇到下拉选择的测试,因此宏哥在这里直接分享和介绍一下,希望小伙伴或者童鞋们在以后工作中遇到可以有所帮助. 2.select 下拉框 2.1Select ...
- Python3 Selenium自动化-select下拉框
Python3 Selenium自动化-select下拉框 selenium介绍select下拉框相关的操作方法:
- Selenium+java - 下拉框处理
常见下拉框也分两种:一种是标准控件和非标准控件(一般为前端开发人员自己封装的下拉框),本篇文章中将重点讲解标准下拉框操作. 1.Select提供了三种选择某一项的方法 select.selectByI ...
- Java+selenium 如何定位下拉框select
场景:需要进行下拉选择定位元素. 一.select菜单 select也是比较常见的,selenium封装了以下方法, 创建select WebElement selector = dr ...
- python+selenium七:下拉框、选项框、select用法
# from selenium import webdriverfrom selenium.webdriver.common.action_chains import ActionChainsimpo ...
- Selenium WebDriver-操作下拉框内容
操作下拉框中的内容 #encoding=utf-8 import unittest import time import chardet from selenium import webdriver ...
- java下拉框,滚动条
package com.soft.test; /** * 下拉列表.下拉框.滚动条的使用 */ import javax.swing.*; import java.awt.*; public clas ...
- 基于定位下拉框或者需要点击link才显示的下拉框,二次定位与多次定位实现的实际效果区别
还是基于上次那个练习的后续出现的思考,http://www.cnblogs.com/8013-cmf/p/6555790.html 界面: 源码: 写法如下: 继续解释这两种的区别: 1.其实基于定 ...
- selenium中的下拉框处理模块Select
在UI自动化测试过程中,经常会遇到一些下拉框,如果我们基于Webdriver操作的话就需要click两次,而且很容易出现问题,实际上Selenium给我们提供了专门的Select(下拉框处理模块). ...
- 百度“搜索设置”之基于定位下拉框或者需要点击link才显示的下拉框,二次定位与多次定位实现的实际效果区别
还是基于上次那个练习的后续出现的思考,http://www.cnblogs.com/8013-cmf/p/6555790.html 界面: 源码: 写法如下: 继续解释这两种的区别: 1.其实基于定 ...
随机推荐
- posix 条件变量与互斥锁 示例生产者--消费者问题
一.posix 条件变量 一种线程间同步的情形:线程A需要等某个条件成立才能继续往下执行,现在这个条件不成立,线程A就阻塞等待,而线程B在执行过程中使这个条件成立了,就唤醒线程A继续执行. 在pthr ...
- lua——元表、元方法、继承
[元表] 元表中的键为事件(event),称值为元方法(metamethod). 通过函数getmetatable查询不论什么值的元表,通过函数setmetatable替换表的元表. setmetat ...
- es6 generator 基础知识
1.定义和使用 function *gen() { return 'first generator'; } // 有点类似类的实例化过程 let generatorResult = gen() // ...
- mysql 行转列(存储过程)
直接sql(自己抽离代码,无法和order by rand() 复用): select shit from( select 要累加的字段, @tt:=CONCAT(@tt,',',a.要累加的字段) ...
- 深入mysql “ON DUPLICATE KEY UPDATE” 语法的分析
本篇文章是对mysql “ON DUPLICATE KEY UPDATE”语法进行了详细的分析介绍,需要的朋友参考下. mysql “ON DUPLICATE KEY UPDATE” 语法 如果在IN ...
- Windows上怎么安装ELK
In this guide I will show that it is also possible to run Logstash on a Windows Server 2012 machine ...
- PHP位操作符
二进制怎么算 http://www.doc88.com/p-474114598610.html 这个涉及到系统底层,WEB开发中几乎没用到,知道下有这个东西就好了.底层的东西解释总是简单不了的. 变量 ...
- JS教程:window.location使用方法的区别
介绍了window.location使用方法的区别. window.location.href=&http://www.jbxue.com/javascript/ldquo;url”:改变ur ...
- C#用正则表达式一键Unicode转UTF8(解决LitJson中文问题)
txt = Regex.Unescape(txt);
- express设置模板引擎
app.set('views', path.join(__dirname,'views')); app.set('view engine', 'ejs');