selenium webdriver 实现百度贴吧自动签到
public static void main(String[] args) { //TestUtils.killProcess("javaw.exe"); TestUtils.killProcess("iexplore.exe"); WebDriver driver=ExplorerBase.IESetting(); driver.manage().window().maximize(); String baseUrl= "http://www.baidu.com/"; driver.get(baseUrl); driver.manage().window().maximize(); driver.manage().timeouts().implicitlyWait(5, TimeUnit.SECONDS); String name; try { name=driver.findElement(By.id("s_username_top")).getText(); System.out.println(name); }catch (NoSuchElementException e) { driver.findElement(By.id("lb")).click(); driver.findElement(By.id("TANGRAM__PSP_10__pass-pop-login-placeholder-normal")).click(); WebElement username=driver.findElement(By.id("TANGRAM__PSP_10__userName")); username.clear(); username.sendKeys("");//username WebElement password=driver.findElement(By.id("TANGRAM__PSP_10__password")); password.click(); password.clear(); password.sendKeys("");//password driver.findElement(By.id("TANGRAM__PSP_10__submit")).click(); //Assert.assertEquals("x429791240",driver.findElement(By.id("s_username_top")).getText()); } driver.findElement(By.linkText("贴吧")).click(); driver.manage().timeouts().implicitlyWait(10, TimeUnit.SECONDS); WebElement element= driver.findElement(By.id("wd1")); element.sendKeys("刘诗诗"); driver.findElement(By.id("tb_header_search_form")).submit(); String setscroll = "document.documentElement.scrollTop=100"; JavascriptExecutor jse=(JavascriptExecutor) driver; jse.executeScript(setscroll); driver.manage().timeouts().implicitlyWait(10, TimeUnit.SECONDS); try { WebElement elementSign= driver.findElement(By.xpath("//a[@title='签到']")); elementSign.click(); System.out.println("亲!签到成功~"); } catch (NoSuchElementException e) { driver.findElement(By.xpath("//a[@title='签到完成']")); System.out.println(driver.findElement(By.xpath("//a[@title='签到完成']")).getAttribute("title"));//getText(),获得标签内文本 System.out.println("亲!今天已经签过到了~"); } driver.quit(); }
public class Cnblogs { private WebDriver driver; private String baseUrl; private boolean acceptNextAlert = true; private StringBuffer verificationErrors = new StringBuffer(); @Before public void setUp() throws Exception { driver = ExplorerBase.IESetting(); baseUrl = "http://www.cnblogs.com"; driver.manage().timeouts().implicitlyWait(30, TimeUnit.SECONDS); } @Test public void testCnblogs() throws Exception { driver.get(baseUrl + "/"); driver.findElement(By.linkText("登录")).click(); driver.findElement(By.id("tbUserName")).clear(); driver.findElement(By.id("tbUserName")).sendKeys(""); driver.findElement(By.id("tbPassword")).clear(); driver.findElement(By.id("tbPassword")).sendKeys(""); driver.findElement(By.id("btnLogin")).click(); assertEquals("苦逼IT男", driver.findElement(By.linkText("苦逼IT男")).getText()); } @After public void tearDown() throws Exception { driver.quit(); String verificationErrorString = verificationErrors.toString(); if (!"".equals(verificationErrorString)) { fail(verificationErrorString); } } private boolean isElementPresent(By by) { try { driver.findElement(by); return true; } catch (NoSuchElementException e) { return false; } } private boolean isAlertPresent() { try { driver.switchTo().alert(); return true; } catch (NoAlertPresentException e) { return false; } } private String closeAlertAndGetItsText() { try { Alert alert = driver.switchTo().alert(); String alertText = alert.getText(); if (acceptNextAlert) { alert.accept(); } else { alert.dismiss(); } return alertText; } finally { acceptNextAlert = true; } } }
public class ITeye { private WebDriver driver; private String baseUrl; private boolean acceptNextAlert = true; private StringBuffer verificationErrors = new StringBuffer(); @Before public void setUp() throws Exception { driver = ExplorerBase.IESetting(); baseUrl = "http://www.iteye.com"; driver.manage().timeouts().implicitlyWait(30, TimeUnit.SECONDS); } @Test public void testITeye() throws Exception { driver.get(baseUrl + "/"); driver.findElement(By.linkText("登录")).click(); driver.findElement(By.id("user_name")).sendKeys("TestQA0"); driver.findElement(By.id("password")).sendKeys("654321a"); driver.findElement(By.id("button")).click(); assertTrue(isElementPresent(By.linkText("欢迎TestQA0"))); driver.findElement(By.linkText("退出")).click(); } @After public void tearDown() throws Exception { driver.quit(); String verificationErrorString = verificationErrors.toString(); if (!"".equals(verificationErrorString)) { fail(verificationErrorString); } } private boolean isElementPresent(By by) { try { driver.findElement(by); return true; } catch (NoSuchElementException e) { return false; } } private boolean isAlertPresent() { try { driver.switchTo().alert(); return true; } catch (NoAlertPresentException e) { return false; } } private String closeAlertAndGetItsText() { try { Alert alert = driver.switchTo().alert(); String alertText = alert.getText(); if (acceptNextAlert) { alert.accept(); } else { alert.dismiss(); } return alertText; } finally { acceptNextAlert = true; } } }