`
收藏列表
标题 标签 来源
简单的商品搜索加入购物车取消订单流程 自动化下订单取消订单
package yyw.one.run;


import java.util.Iterator;
import java.util.Set;

import org.openqa.selenium.By;
import org.openqa.selenium.By.ByClassName;
import org.openqa.selenium.Cookie;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.firefox.FirefoxDriver;
import org.openqa.selenium.support.ui.Select;
import org.testng.annotations.Test;

import yyw.two.run.newwindow;

public class login {

	public static void main(String[] args) {
	
//	public void test(){
		System.out.println("开始执行!");
//		System.setProperty("webdriver.firefox.bin", 
//				"D:\\Program Files (x86)\\Mozilla Firefox\\firefox.exe");
			WebDriver driver=new FirefoxDriver();
			System.out.println("浏览器已启动!");
			driver.get("http://passport.111.com.cn/sso/login.action");
			System.out.println("已跳转至官网www.111.com.cn!");
			WebElement username=driver.findElement(By.id("userName"));
			username.sendKeys("chili17");
			WebElement pwd=driver.findElement(By.id("userPass"));
			pwd.sendKeys("test1234");
			
			WebElement btnlog=driver.findElement(By.id("btnSubmit"));
			
			btnlog.click();
			System.out.println("登录成功!");
			try {
				Thread.sleep(5000);
			} catch (InterruptedException e1) {
				// TODO Auto-generated catch block
				e1.printStackTrace();
			}
			WebElement closefuceng=driver.findElement(By.className("close_a"));
			//WebElement closefuceng=driver.findElement(By.cssSelector("a.close_a"));
			closefuceng.click();
			try {
				if(closefuceng!=null)
				{
					
					System.out.println("浮层已关闭!");
				}
				else
				{
					System.out.println("无浮层!未执行关闭浮层操作,直接跳过该动作。");
				}
				
			} catch (Exception e) {
				e.printStackTrace();
			}
			
			WebElement ss=driver.findElement(By.id("word"));
			ss.sendKeys("牛奶");
			WebElement bt=driver.findElement(By.className("searchBtn"));
			
			
			try {
				bt.click();
			} catch (Exception e) {
				e.printStackTrace();
			}
			
			//选定商品
			WebElement sp=driver.findElement(By.id("buyButton_50080146"));
			//加入到购物车
			sp.click();
			
			//找到购物车
			WebElement gwc=driver.findElement(By.className("f_wei"));
			try {
				gwc.click();
				System.out.println("加入购物车成功!");
			} catch (Exception e) {
				e.printStackTrace();
			}
			
			//结算
			WebElement btnorder=driver.findElement(By.className("btn_order"));
			
			try {
				btnorder.click();
				System.out.println("结算跳转成功!~");
			} catch (Exception e) {
				e.printStackTrace();
			}
				
			
			//提交订单
			WebElement ordersubmitbtn=driver.findElement(By.id("orderSubmitButton"));
			ordersubmitbtn.click();
			try {
				Thread.sleep(2000);//等待2秒
			} catch (InterruptedException e) {
				// TODO Auto-generated catch block
				e.printStackTrace();
			}
			//进入订单详情页
			WebElement ordermain=driver.findElement(By.xpath("//a[@class='blue mr10']"));
			String orderid=ordermain.getText();
			System.out.println(ordermain.getText());
			
			ordermain.click();
			
			try {
				Thread.sleep(5000);
			} catch (InterruptedException e) {
				// TODO Auto-generated catch block
				e.printStackTrace();
			}
			String currentwindow=driver.getWindowHandle();
			Set<String> handles=driver.getWindowHandles();
			Iterator<String> it=handles.iterator();
			while(it.hasNext()){
				String handle = it.next();
				if(currentwindow.equals(handle)) continue;
				WebDriver window=driver.switchTo().window(handle);
				System.out.println("title:"+window.getTitle());
				System.out.println("url:"+window.getCurrentUrl());
				System.out.println("当前句柄:"+currentwindow);
				
				try {
					Thread.sleep(5000);
					//点击取消订单
					WebElement gporder=driver.findElement(By.xpath("//a[@class='cancelOrderItem hblue']"));
					gporder.click();
				} catch (InterruptedException e) {
					// TODO Auto-generated catch block
					e.printStackTrace();
				}
				
			}
			
			
			//选择取消原因
			//Select select=new Select(driver.findElement(By.id("cancelReason")));
			driver.switchTo().frame("_DialogFrame_0");
			Select select=new Select(driver.findElement(By.id("cancelReason")));
			select.selectByIndex(1);
			
			
			
			try {
				Thread.sleep(3000);
				System.out.println("等待中.....");
			} catch (InterruptedException e) {
				// TODO Auto-generated catch block
				e.printStackTrace();
			}
			//确定取消
			System.out.println("等待完毕....");
			WebElement gpok=driver.findElement(By.className("bule_btn"));
			gpok.click();
			try {
				System.out.println("订单编号为:"+orderid+"的订单已取消成功!");
			} catch (Exception e) {
				
				e.printStackTrace();
			}
			driver.quit();
			//增加cookie
//			Cookie cookie= new Cookie("key", "value");
//			driver.manage().addCookie(cookie);
//			//获取cookie
//			Set<Cookie> allCookies=driver.manage().getCookies();
//			for(Cookie loadedCookie:allCookies){
//				
//				System.out.println(String.format("%s->%s", loadedCookie.getName(),loadedCookie.getValue()));
//			}
			//根据某个cookie的name来获取cookie值;
			//driver.manage().getCookieNamed("mmsid");
			//删除cookie
			//driver.manage().deleteCookieNamed("CookieName");//根据name
			//driver.manage().deleteCookie(loadedCookie); //根据cookie
			//driver.manage().deleteAllCookies();//删除所有cookie
			
			
//			driver.close();//关闭浏览器
			
//			WebElement myorders=driver.findElement(By.className("menu-hd"));
//			
//			if(myorders!=null)
//			{
//				myorders.click();
//			}
//			else
//			{
//				System.out.println("元素定位失败!~");
//				
//			}
			
			
			
	}

}
Global site tag (gtag.js) - Google Analytics