51Testing软件测试论坛

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

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 2948|回复: 11
打印 上一主题 下一主题

driver.findElement(By.name("userName")).sendKeys("username")

[复制链接]
  • TA的每日心情

    2018-5-3 11:33
  • 签到天数: 3 天

    连续签到: 1 天

    [LV.2]测试排长

    跳转到指定楼层
    1#
    发表于 2016-10-13 14:35:31 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
    driver.findElement(By.name("userName")).sendKeys("username")

    给sendKeys("username");传参数username="lulu"  但是总是执行不过去呀,报空指针,By.name("userName"),但是当我不传参数的时候是可以找到的呀,这个怎么回事呢,难道这个方法不可以传参数吗??求大神指导
    分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
    收藏收藏
    回复

    使用道具 举报

  • TA的每日心情
    奋斗
    昨天 11:25
  • 签到天数: 2806 天

    连续签到: 5 天

    [LV.Master]测试大本营

    2#
    发表于 2016-10-13 14:52:59 | 只看该作者
    是不是考虑赋值是不是成功
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    慵懒
    2017-11-7 16:44
  • 签到天数: 290 天

    连续签到: 1 天

    [LV.8]测试军长

    3#
    发表于 2016-10-13 15:06:04 | 只看该作者
    driver.findElement(By.name("userName")).sendKeys("username")  变量不用引号的吧?
    回复 支持 反对

    使用道具 举报

  • TA的每日心情

    2018-5-3 11:33
  • 签到天数: 3 天

    连续签到: 1 天

    [LV.2]测试排长

    4#
     楼主| 发表于 2016-10-13 16:25:49 | 只看该作者
    jingzizx 发表于 2016-10-13 14:52
    是不是考虑赋值是不是成功

    成功了  上一行加的System.out.println(username+","+realname+","+password+","+tel); 已经输出来了
    回复 支持 反对

    使用道具 举报

  • TA的每日心情

    2018-5-3 11:33
  • 签到天数: 3 天

    连续签到: 1 天

    [LV.2]测试排长

    5#
     楼主| 发表于 2016-10-13 16:26:40 | 只看该作者
    若尘_51 发表于 2016-10-13 15:06
    driver.findElement(By.name("userName")).sendKeys("username")  变量不用引号的吧?

    是的  没有引号,我写错了。但是还是不对
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    慵懒
    2017-11-7 16:44
  • 签到天数: 290 天

    连续签到: 1 天

    [LV.8]测试军长

    6#
    发表于 2016-10-13 16:36:59 | 只看该作者
    Jay~ 发表于 2016-10-13 16:26
    是的  没有引号,我写错了。但是还是不对

    附上完整一点的脚本看看~~
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    奋斗
    2019-11-4 11:04
  • 签到天数: 274 天

    连续签到: 1 天

    [LV.8]测试军长

    7#
    发表于 2016-10-13 16:47:06 | 只看该作者
    打断点debug跟一下,应该获取到空值,所有报空指针异常
    回复 支持 反对

    使用道具 举报

  • TA的每日心情

    2018-5-3 11:33
  • 签到天数: 3 天

    连续签到: 1 天

    [LV.2]测试排长

    8#
     楼主| 发表于 2016-10-14 09:10:14 | 只看该作者
    本帖最后由 Jay~ 于 2016-10-14 09:13 编辑
    若尘_51 发表于 2016-10-13 16:36
    附上完整一点的脚本看看~~

            try {
                                            for(int i=0;i<row;i++)        {
                                                    String[] str = (String[]) list.get(i);
                                                            String username = str[0];
                                                            String realname = str[1];
                                                            String password = str[2];
                                                            String tel = str[3];
                                            Newcustomer cus = new Newcustomer();
                                            cus.newcust(username,realname,password,tel);
                                        
                                            }        
                                    } catch (Exception e) {
                                            e.printStackTrace();
                                    }
                   
                    if(stream != null){
                            stream.close();                        
                    }




    public void newcust(String username,String realname,String password,String tel) throws Exception {
                            
    System.out.println( driver.findElement(By.name("realName")));  这里就报空指针了 这是48行
                        driver.findElement(By.name("realName")).clear();
                        driver.findElement(By.name("realName")).sendKeys(realname);
                       // driver.findElement(By.xpath(".//*[@id='customerForm']/div/div/div/div/div/div[1]/div/input")).clear();
                       // driver.findElement(By.xpath(".//*[@id='customerForm']/div/div/div/div/div/div[1]/div/input")).sendKeys(realname);
                        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.name("mobile")).clear();
                        driver.findElement(By.name("mobile")).sendKeys(tel);
                      
                        driver.findElement(By.id("customerFormBtn")).click();
              }










    下面是报的错


    java.lang.NullPointerException
            at com.abczww.hs.demo.Newcustomer.newcust(Newcustomer.java:48)  
            at com.abczww.hs.demo.ExcelWorkBook.readExcel(ExcelWorkBook.java:80)
            at com.abczww.hs.demo.Newcustomer.test1(Newcustomer.java:41)
            at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
            at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
            at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
            at java.lang.reflect.Method.invoke(Unknown Source)
            at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:50)
            at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
            at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:47)
            at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17)
            at org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:26)
            at org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:27)
            at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:325)
            at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:78)
            at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:57)
            at org.junit.runners.ParentRunner$3.run(ParentRunner.java:290)
            at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:71)

    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    慵懒
    2017-7-10 17:29
  • 签到天数: 136 天

    连续签到: 1 天

    [LV.7]测试师长

    9#
    发表于 2016-10-15 21:41:19 | 只看该作者
    System.out.println( driver.findElement(By.name("realName")));   改成
    String realname = realName;
    System.out.println( driver.findElement(By.name(relaname)));

    评分

    参与人数 1测试积点 +10 收起 理由
    lsekfe + 10 积极回复获得测试积点10

    查看全部评分

    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    郁闷
    2016-10-16 10:22
  • 签到天数: 2 天

    连续签到: 2 天

    [LV.1]测试小兵

    10#
    发表于 2016-10-15 22:59:57 | 只看该作者
    先把引号取消。
    回复 支持 反对

    使用道具 举报

  • TA的每日心情

    2018-5-3 11:33
  • 签到天数: 3 天

    连续签到: 1 天

    [LV.2]测试排长

    11#
     楼主| 发表于 2016-10-17 16:15:38 | 只看该作者
    alchaochao 发表于 2016-10-15 21:41
    System.out.println( driver.findElement(By.name("realName")));   改成
    String realname = realName;  ...

    你这个写法是什么意思  。。。。。
    realName 是web端的 name=realName  如果改成你这样肯定报错 完全找不到
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    慵懒
    2017-7-10 17:29
  • 签到天数: 136 天

    连续签到: 1 天

    [LV.7]测试师长

    12#
    发表于 2016-10-17 16:49:54 | 只看该作者
    Jay~ 发表于 2016-10-17 16:15
    你这个写法是什么意思  。。。。。
    realName 是web端的 name=realName  如果改成你这样肯定报错 完全找 ...

    你的代码直接把形参当username当做字符串传进去了,肯定找不到,先定义一个变量接收传进去的参数,然后再By.name
    回复 支持 反对

    使用道具 举报

    本版积分规则

    关闭

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

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

    GMT+8, 2024-11-9 00:10 , Processed in 0.072282 second(s), 23 queries .

    Powered by Discuz! X3.2

    © 2001-2024 Comsenz Inc.

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