12/21的全部代码

来源:互联网 发布:网络厂商 编辑:程序博客网 时间:2024/05/21 07:04
package com.run;


import java.io.File;
import java.util.ArrayList;
import java.util.List;
import org.apache.xalan.templates.ElemElement;
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.interactions.Actions;
import org.openqa.selenium.support.ui.ExpectedCondition;
import org.openqa.selenium.support.ui.ExpectedConditions;
import org.openqa.selenium.support.ui.Select;
import org.openqa.selenium.support.ui.WebDriverWait;
public class FireFoxRunner {
static WebDriver driver;
static boolean flag;
// 初始化查找路径
public void initwebderiver() {
System.setProperty("webdriver.firefox.bin", "C://Program Files (x86)//Mozilla Firefox//firefox.exe");
driver = new FirefoxDriver();
driver.get("http://house.ifeng.com/search.shtml");
}
// 新房销售状态单选下拉框这个失败了
public void getStuta() {
Select userSelect = new Select(driver.findElement(By.id("openTimeWord")));
userSelect.selectByVisibleText("下月开盘");
}
// 鼠标的操作事件
public void action() throws InterruptedException {
// 左击
Actions action = new Actions(driver);
WebElement test1item = driver.findElement(By.partialLinkText("门头沟楼盘"));
//action.doubleClick(test1item).perform();双击
//action.moveToElement(test1item).perform();拖动
//action.contextClick(test1item).perform();右击
//action.click(test1item).perform();左击
Thread.sleep(4000);
//右击

}


// apk文件的下载
public void download() {
      




}
//


public static void main(String[] args) throws InterruptedException {
FireFoxRunner fr = new FireFoxRunner();
fr.initwebderiver();
try {
fr.action();
} catch (Exception e) {
e.printStackTrace();
}


System.out.println("start firefox browser succeed...");
}


}
package com.run;


import org.openqa.selenium.By;
import org.openqa.selenium.WebElement;


public class SimpleLink {
// 进入热门区域,查看链接是否正确
/*
* public void gointohotarea() throws Exception{ WebElement
* e=driver.findElement(By.partialLinkText("丰台")); Thread.sleep(4000);
* driver.findElement(By.partialLinkText("密云")).click(); Thread.sleep(4000);
* driver.findElement(By.partialLinkText("昌平")).click(); Thread.sleep(4000);
* driver.findElement(By.partialLinkText("门头沟")).click();
* Thread.sleep(4000); driver.findElement(By.partialLinkText("通州")).click();
* Thread.sleep(4000);
* driver.findElement(By.partialLinkText("张家口")).click();
* Thread.sleep(4000); driver.findElement(By.partialLinkText("顺义")).click();
* Thread.sleep(4000); driver.findElement(By.partialLinkText("延庆")).click();
* Thread.sleep(4000); driver.findElement(By.partialLinkText("东城")).click();
* Thread.sleep(4000); driver.findElement(By.partialLinkText("燕郊")).click();
* Thread.sleep(4000); }
*/
// 通过数组来打开链接
/*
* public void gointohotarea(String currentcity){ List ll=new
* ArrayList<E>(); ll=createCitys("北京");
* driver.findElement(By.partialLinkText("密云")).click(); }
*/
// 查看地铁链接是否正常
/*
* public void subway() throws Exception {
* driver.findElement(By.partialLinkText("昌平线")).click();
* Thread.sleep(4000);
* driver.findElement(By.partialLinkText("7号线")).click();
* Thread.sleep(4000);
* driver.findElement(By.partialLinkText("大兴线")).click();
* Thread.sleep(4000);
* driver.findElement(By.partialLinkText("10号线")).click();
* Thread.sleep(4000);
* driver.findElement(By.partialLinkText("5号线")).click();
* Thread.sleep(4000);
* driver.findElement(By.partialLinkText("八通线")).click();
* Thread.sleep(4000);
* driver.findElement(By.partialLinkText("房山线")).click();
* Thread.sleep(4000);
* driver.findElement(By.partialLinkText("4号线")).click();
* Thread.sleep(4000); }
*/
/*
* public void Tab() throws InterruptedException {
* driver.findElement(By.partialLinkText("新房")).click(); Thread.sleep(3000);
* // 二手房作为一个海外链接

* driver.findElement(By.partialLinkText("二手房")).click();
* Thread.sleep(3000);

* driver.findElement(By.partialLinkText("资讯")).click(); Thread.sleep(3000);
* driver.findElement(By.partialLinkText("视频")).click(); Thread.sleep(3000);

* }
*/
// 创建城市
/*public void createCitys() {
// List<String> listcitys=new ArrayList<String>();
String[] sb = { "丰台", "密云", "昌平" };
// cityname=driver.findElement(By.className("city-curr"));

* if(cityname.equals("北京")){ sb.append("丰台");
 

* listcitys.add(0, "丰台"); listcitys.add(0, "密云"); listcitys.add(0,
* "昌平"); listcitys.add(0, "门头沟");
 
System.out.println(driver.findElement(By.className("city-curr")));
// if(driver.findElement(By.className("city-curr").equals("北京"))){
for (int i = 0; i < sb.length; i++) {
driver.findElement(By.partialLinkText(sb[i])).click();
}*/
// 均价户型单选按钮 OK
/*
* public void getprice() throws InterruptedException {
* ArrayList<WebElement> search_type = (ArrayList<WebElement>)
* driver.findElements(By.className("priceAverage")); for (WebElement ele :
* search_type) { ele.click(); Thread.sleep(5000); } }
*/
/*

* // 查找新房的方法
public void findnewhouse() {
driver.findElement(By.id("lp_keyword")).sendKeys("孔雀城");
driver.findElement(By.className("search-submit")).click();
}


// 判断链接是否全部是正确的不存在空的
public void judgeLinkNull() {


}
*/
/*
* // 特殊窗口切换
public void changewindow() throws InterruptedException {
WebElement phone_link = driver.findElement(By.linkText("手机"));
phone_link.click();
Thread.sleep(1000);
// 获取当前页面句柄
String handle = driver.getWindowHandle();
// 获取所有页面的句柄,并循环判断不是当前的句柄
for (String handles : driver.getWindowHandles()) {
if (handles.equals(handle))
continue;
driver.switchTo().window(handles);
}
WebElement xiaomi_link = driver.findElement(By.linkText("小米"));
xiaomi_link.click();
Thread.sleep(1000);
}
*/
}
package com.run;


import java.io.File;
import java.util.ArrayList;


import org.openqa.selenium.By;
import org.openqa.selenium.WebElement;


public class Fenghuanghui {
// 账号密码登录凤凰会
/*
* public void login() throws InterruptedException { //
* driver.findElement(By.partialLinkText("账号密码登录")).click(); //
* driver.findElement(By.className("at2")).click(); // 获取手机号
* driver.findElement(By.id("mobile")).sendKeys("13133814608");
* Thread.sleep(3000); // 获取图片验证码

* String conent = driver.findElement(By.id("picvalidbtn")).getText();
* System.out.println(conent); if(conent.equals(" ")){
* System.out.println("获取的数据是空的"); }

* // driver.findElement(By.id("password")).sendKeys("933032shixinfa"); //
* 获取编辑框里面默认的字符串 String sj =
* driver.findElement(By.id("picvalid")).getAttribute("placeholder");
* System.out.println(sj); boolean flag =
* driver.findElement(By.id("picvalid")).isEnabled();
* System.out.print(flag); // 这个属性被隐藏了,所以根本无法使用,需要借助js改变属性
* driver.findElement(By.xpath(".//*[@id='picvalid']")).sendKeys("sss");
* Thread.sleep(4000); // System.out.println(b); // 获取短信验证码 // String code =
* driver.findElement(By.id("btnCode")).getText(); //
* driver.findElement(By.id("code")).sendKeys(code); // 点击登录 //
* driver.findElement(By.id("loginPH")).click(); try { Thread.sleep(3000); }
* catch (InterruptedException e) { e.printStackTrace(); } //
* driver.findElement(By.id("loginPW")).click(); Thread.sleep(3000); }
*/
/*// 文件上传
public void upfile() {
File file = new File("C://Users//shixf//Desktop//sxf.jpg");
if (file.exists()) {
// 找到input,然后利用sendKeys来上传文件
driver.findElement(By.id("photoPath")).sendKeys(file.getPath());
System.out.println(file.getPath());
}
}
// 复选按钮和单选按钮的代码一模一样
public void checkBox() throws InterruptedException {
ArrayList<WebElement> answer_options = (ArrayList<WebElement>) driver.findElements(By.className("saleStatus"));
for (WebElement ele : answer_options) {
ele.click();
Thread.sleep(1000);
}
}*/
}
package com.run;


import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.support.ui.ExpectedCondition;
import org.openqa.selenium.support.ui.ExpectedConditions;
import org.openqa.selenium.support.ui.WebDriverWait;


public class BaiduSerach {


// 关于百度的一系列方法
public void search() {
// driver.findElement(By.id("kw")).sendKeys("北京大学");
// driver.findElement(By.id("su")).click();
// Thread.sleep(3000);
// driver.findElement(By.linkText("北京大学马克思主义学院")).click();
// driver.findElement(By.xpath(".//*[@id='2']/h3/a")).click();
// driver.findElement(By.className("t")).click();
// driver.findElement(By.partialLinkText("马克思主义学院")).click();
// driver.findElement(By.partialLinkText("马克思主义学院")).click();
// 因为马克思主义学院的字体的颜色和北京大学是不一致的,部分链接就是马克思主义学院
}
// 等待函数
/*public void waittime() {
// 标题是不是“百度一下,你就知道”
//boolean flag=new WebDriverWait(driver, 5).until(ExpectedConditions.titleIs("百度一下,你就知道"));
//
// 标题是不是包含“百度一下”
//boolean flag=new WebDriverWait(driver, 5).until(ExpectedConditions.titleContains("百度一下"));

// 判断该元素是否被加载在DOM中,并不代表该元素一定可见
new WebDriverWait(driver, 5).until(ExpectedConditions.presenceOfElementLocated(By.xpath("//*[@id='kw']")));
// 判断元素(定位后)是否可见
new WebDriverWait(driver, 5)
.until(ExpectedConditions.visibilityOf(driver.findElement(By.xpath("//*[@id='kw']"))));
// 判断元素是否可见(非隐藏,并且元素的宽和高都不等以0)
new WebDriverWait(driver, 5).until(ExpectedConditions.visibilityOfElementLocated(By.xpath("//*[@id='kw']")));
// 只要存在一个就是true
ExpectedConditions.presenceOfAllElementsLocatedBy(By.xpath("//*[@id='kw']"));
// 元素中的text是否包含语气的字符串
ExpectedConditions.textToBePresentInElementLocated(By.xpath("//*[@id='kw']"), "百度一下");
// 元素的value属性中是否包含语气的字符串
ExpectedConditions.textToBePresentInElementValue(By.xpath("//*[@id='kw']"), "***");
// 判断该表单是否可以切过去,可以就切过去并返回true,否则放回false
ExpectedConditions.frameToBeAvailableAndSwitchToIt(By.id("**"));
// 判断某个元素是否不存在于DOM或不可见
ExpectedConditions.invisibilityOfElementLocated(By.xpath("//*[@id='kw']"));
// 判断元素是否可以点击
ExpectedConditions.elementToBeClickable(By.xpath("//*[@id='kw']"));
// 等到一个元素从DOM中移除
ExpectedConditions.stalenessOf(driver.findElement(By.xpath("//*[@id='kw']")));
// 判断某个元素是否被选中,一般用在下拉列表
ExpectedConditions.elementToBeSelected(By.xpath("//*[@id='kw']"));
// 判断某个元素的选中状态是否符合预期
ExpectedConditions.elementSelectionStateToBe(By.xpath("//*[@id='kw']"), true);
// 判断某个元素(已定位)的选中状态是否符合预期
ExpectedConditions.elementSelectionStateToBe(driver.findElement(By.xpath("//*[@id='kw']")), false);
// 判断页面中是否存在alert
new WebDriverWait(driver, 5).until(ExpectedConditions.alertIsPresent());
// --------------------自定义判断条件-----------------------------
WebDriverWait wait = new WebDriverWait(driver, 3);
wait.until(new ExpectedCondition<Boolean>() {
public Boolean apply(WebDriver driver) {
return !driver.findElement(By.xpath("//*[@id='kw']")).getAttribute("class")
.contains("x-form-invalid-field");
}
});


}
*/
}

原创粉丝点击