51Testing软件测试论坛

 找回密码
 (注-册)加入51Testing

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 2466|回复: 4
打印 上一主题 下一主题

selenium登录流程 可以参数化吗

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2014-8-2 16:20:12 | 只看该作者 回帖奖励 |正序浏览 |阅读模式
selenium登录流程 可以参数化吗

如一个java怎么写登录成功、登录失败呢
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
回复

使用道具 举报

该用户从未签到

5#
 楼主| 发表于 2014-8-7 10:33:52 | 只看该作者
selenium登录流程 可以参数化吗

如一个java怎么写登录成功、登录失败呢
bokewangyu 发表于 2014-8-2 16:20



    package com.webdriver.example;

import static org.junit.Assert.*;
import java.util.concurrent.TimeUnit;
import org.databene.benerator.anno.Source;
import org.databene.feed4junit.Feeder;
import org.junit.runner.RunWith;
import com.thoughtworks.selenium.*;
import org.openqa.selenium.*;
import org.openqa.selenium.firefox.*;
import org.junit.AfterClass;
import org.junit.BeforeClass;
import org.junit.Test;

@RunWith(Feeder.class)
public class WebDriverlogin {
        private static WebDriver driver;
        private static String baseUrl;

        @BeforeClass
        public static void setUpBeforeClass() throws Exception {
                driver = new FirefoxDriver();
            baseUrl = "http://127.0.0.0";
            driver.manage().timeouts().implicitlyWait(30, TimeUnit.SECONDS);
        }

        @AfterClass
        public static void tearDownAfterClass() throws Exception {
                driver.quit();
        }

          @Source("username.xlsx")
          @Test
        public void test(String username,String password) {
                  driver.get(baseUrl + "/");
                  driver.findElement(By.name("username")).clear();
                  driver.findElement(By.name("username")).sendKeys(username);
                  driver.findElement(By.name("password")).clear();
                  driver.findElement(By.name("password")).sendKeys(password);
                  driver.findElement(By.cssSelector("input[type=\"submit\"]")).click();

                  if(username.contains("username1")){
                          SeleneseTestBase.seleniumEquals("xxxxxx", driver.getTitle());
                          driver.findElement(By.linkText("安全退出")).click();
                          
                  }else if(username.contains("username2")||username.contains(" ")){
                          SeleneseTestBase.seleniumEquals("xxxxxx", driver.getTitle());
                          assertEquals("您操作失败了!可能因为:用户名错误!", driver.findElement(By.xpath("html/body/div[3]/div[1]/div")).getText());
                          
                  }else if(username.contains("username3")){
                          SeleneseTestBase.seleniumEquals("xxxxxx", driver.getTitle());
                          assertEquals("您操作失败了!可能因为:密码错误!", driver.findElement(By.xpath("html/body/div[3]/div[1]/div")).getText());                          
                  }                          
        }
          
          private boolean isElementPresent(By by) {
                    try {
                      driver.findElement(by);
                      return true;
                    } catch (NoSuchElementException e) {
                      return false;
                    }
                  }
}
回复 支持 反对

使用道具 举报

  • TA的每日心情

    2015-4-9 17:10
  • 签到天数: 1 天

    连续签到: 1 天

    [LV.1]测试小兵

    4#
    发表于 2014-8-5 11:41:37 | 只看该作者
    放数据库 java 反射机制
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    无聊
    2020-12-8 11:20
  • 签到天数: 605 天

    连续签到: 1 天

    [LV.9]测试副司令

    3#
    发表于 2014-8-5 10:55:24 | 只看该作者
    当然可以。。传参数嘛
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    2#
    发表于 2014-8-2 17:48:25 | 只看该作者
    同问哦
    回复 支持 反对

    使用道具 举报

    本版积分规则

    关闭

    站长推荐上一条 /1 下一条

    小黑屋|手机版|Archiver|51Testing软件测试网 ( 沪ICP备05003035号 关于我们

    GMT+8, 2024-11-22 21:14 , Processed in 0.076958 second(s), 28 queries .

    Powered by Discuz! X3.2

    © 2001-2024 Comsenz Inc.

    快速回复 返回顶部 返回列表