自主学习---上海野生动物园之登录、订票、退票

Create了一个TestNG可以查看执行结果:

package FristTestNG;

import java.sql.Driver;

import org.openqa.selenium.Alert;
import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.firefox.FirefoxDriver;
import org.testng.annotations.Test;

import com.thoughtworks.selenium.webdriven.commands.Click;

public class ZooTest {
@Test
public void f() throws InterruptedException {
WebDriver driver = new FirefoxDriver();
driver.get("http://www.shwzoo.com/");//输入URL进入网站
driver.manage().window().maximize();//窗口最大化

Thread.sleep(1000);

driver.findElement(By.linkText("网上商城")).click();

driver.findElement(By.linkText("登录")).click();//登录
WebElement username = driver.findElement(By.id("txtUserName"));
username.sendKeys("2397244682@qq.com");
WebElement password = driver.findElement(By.id("txtPassword"));
password.sendKeys("123456");
driver.findElement(By.id("btnSubmit")).click();
//成功登录

driver.findElement(By.linkText("网上商城")).click();
Thread.sleep(1000);

driver.findElement(By.xpath("//img[contains(@src,'201704011017527881.jpg')]")).click();//购买成人票
Thread.sleep(1000);

//选票
driver.findElement(By.xpath("//input[@class='add']")).click();
driver.findElement(By.id("addtime")).sendKeys("2017-07-14");//日历怎么定位
driver.findElement(By.linkText("立即购买")).click();
driver.findElement(By.xpath("//div[@class='layui-layer-btn']/a")).click();
Thread.sleep(1000);
// Alert Dialog = driver.switchTo().alert();
// Dialog.accept();

//下单成功
driver.findElement(By.name("remark")).sendKeys("先别买,我还要退货。。。谢谢");
driver.findElement(By.id("btnSubmit")).click();
Thread.sleep(1000);

//更换窗口:当上一步骤执行后,打开了另外一个Windows时需要切换到改Windows窗口
String thisHandleId = driver.getWindowHandle();
for(String TempHanleId : driver.getWindowHandles())
if(!TempHanleId.equals(thisHandleId))
{
driver.switchTo().window(TempHanleId);
}
//成功退票
driver.findElement(By.xpath("//div[@class='wrap_1260']/ul/li[2]/a")).click();//B17061714522412143813
Thread.sleep(1000);
driver.findElement(By.xpath("//div[@class='main_content']/div[2]/div/a[3]")).click();
Thread.sleep(1000);

driver.findElement(By.xpath("//div[@class='layui-layer-btn']/a")).click();
}
}

Selenium入门练习(一)的更多相关文章

  1. 自动化测试Java一:Selenium入门

    From: https://blog.csdn.net/u013258415/article/details/77750214 Selenium入门 欢迎阅读Selenium入门讲义,本讲义将会重点介 ...

  2. Selenium自动化测试Python一:Selenium入门

    Selenium入门 欢迎阅读Selenium入门讲义,本讲义将会重点介绍Selenium的入门知识以及Selenium的前置知识. 自动化测试的基础 在Selenium的课程以前,我们先回顾一下软件 ...

  3. Selenium 入门到精通系列:六

    Selenium 入门到精通系列 PS:Checkbox方法 例子 HTML: <html> <head> <title>测试页面</title> &l ...

  4. Selenium 入门到精通系列:五

    Selenium 入门到精通系列 PS:显式等待.隐式等待.强制等待方法 例子 #!/usr/bin/env python # -*- coding: utf-8 -*- # @Date : 2019 ...

  5. Selenium 入门到精通系列:四

    Selenium 入门到精通系列 PS:鼠标右键.鼠标悬停.键盘操作方法 例子 #!/usr/bin/env python # -*- coding: utf-8 -*- # @Date : 2019 ...

  6. Selenium 入门到精通系列:三

    Selenium 入门到精通系列 PS:Driver_Element 常用方法 例子 #!/usr/bin/env python # -*- coding: utf-8 -*- # @Date : 2 ...

  7. Selenium 入门到精通系列:二

    Selenium 入门到精通系列 PS:用户登录 例子 #!/usr/bin/env python # -*- coding: utf-8 -*- # @Date : 2019-04-23 16:12 ...

  8. Selenium 入门到精通系列:一

    Selenium 入门到精通系列 PS:控制浏览器窗口大小.前进.后退.刷新 例子 #!/usr/bin/env python # -*- coding: utf-8 -*- # @Date : 20 ...

  9. Selenium入门6 操作元素,获取元素属性

    取元素的text,属性get_attribute,标签名tag_name 操作元素:send_keys输入,click点击,submit提交,clear清除输入 状态判断:is_display,is_ ...

  10. python3+selenium入门01-环境搭建

    作为一个测试,在最近两年应该有明显的感觉.那就是工作变的难找,要求变的高了,自动化测试,性能测试等.没有自动化测试能力,只会点点点工作难找不说,工资也不高.所以还是要学习一些技术.首先要学习一门编程语 ...

随机推荐

  1. Linux kill和kill-9区别

    进程状态转换图 kill和kill -9,两个命令在linux中都有杀死进程的效果,然而两命令的执行过程却大有不同,在程序中如果用错了,可能会造成莫名其妙的现象. 执行kill命令,系统会发送一个SI ...

  2. Apache配置虚拟主机的三种方法(基于IP、端口、域名)

    1 Apache虚拟主机的实现方式有3种. 基于IP的虚拟主机 基于端口的虚拟主机 基于域名的虚拟主机 2.1 启用虚拟主机的准备工作 2.1.1安装httpd [root@mail httpd]# ...

  3. Go实现查找目录下(包括子目录)替换文件内容

    [功能] 按指定的目录查找出文件,如果有子目录,子目录也将进行搜索,将其中的文件内容进行替换. [缺陷] 1. 没有过滤出文本文件 2. 当文件过大时,效率不高 [代码] package main i ...

  4. st试用笔记

    1.关于轮询 我的写法: var time_count = 0; var timer = setInterval(function(){ async.ajax({ url:'', data:'', s ...

  5. AngularJS 笔记系列(三)模块和作用域

    模块: 在 AngularJS 中,将函数代码全部都定义在全局命名空间中绝对不是什么好主意,全局变量污染会使冲突几率变大,调试困难,降低开发效率.上次写计时器的 controller 时,我们把 co ...

  6. centos7编译安装Python3.6(与2.7并存)

    首先去官网下载python3.6 https://www.python.org/ 环境准备:#yum install openssl-devel bzip2-devel expat-devel gdb ...

  7. mariadb多源复制 muiltil source replication

    环境:centos-6.5      Mariadb:10.1.13-MariaDB 多源复制:企业数据库中写的需求较大,以至于I/O负载比较大,那么就必须把写的操作分摊到多台主服务器上进行,然后在将 ...

  8. Mac使用操作

    快捷键退出程序:Command + Q 快捷键关闭窗口:Command + W(关闭程序的窗口不一定是退出程序) 单击左上角黑苹果,菜单里面有强制退出 Finder菜单的偏好设置,高级设置菜单里面可以 ...

  9. PKU 3687 Labeling Balls(拓扑排序)

    题目大意:原题链接 给出N个未编号的质量各不相同的球,以及它们质量轻重的大小关系,给它们从1-N贴标签编号,无重复.问是否存在可行的编号方法,不存在输出-1, 如果存在则输出唯一一种方案,此方案是使得 ...

  10. 手机端1px细线公共类

    手机端1px细线公共类 .borderBottom1px{ position: relative; } .borderBottom1px:after{ content: ""; p ...