sunzhiwen150411 发表于 2017-8-17 11:00:02

selenium执行脚本时每个输入框只保留了两个字符

方法如下:public void input(String sheet,String objectName,String value) throws Exception {
            ReadExcelUtil ex=new ReadExcelUtil(path, sheet);
            String[] locator=ex.getvalue(objectName);
            switch (locator) {
                case "id":
                        driver.findElement(By.id(locator)).sendKeys(value);
                        System.out.println(driver.findElement(By.id(locator)).getText());
                        break;
                case "xpath":
                        driver.findElement(By.xpath(locator)).sendKeys(value);
                        break;
                case "name":
                        driver.findElement(By.name(locator)).sendKeys(value);
                        break;
                case "class":
                        driver.findElement(By.className(locator)).sendKeys(value);
                        break;
                default:
                        break;

sunzhiwen150411 发表于 2017-8-17 11:01:00

RT,input之后,执行脚本时每个输入框只保留两个字符,不管中文还是英文还是数字,求指导!

finomy 发表于 2017-8-17 12:30:54

是不是chrome?把输入操作单拿出来做个验证,输入结果不对就再输一次

yuyubill 发表于 2017-8-18 13:20:08

我很奇怪的是你的代码中switch分支条件里string字符串不会报错

sunzhiwen150411 发表于 2017-8-25 14:16:13

finomy 发表于 2017-8-17 12:30
是不是chrome?把输入操作单拿出来做个验证,输入结果不对就再输一次

是火狐浏览器,无论怎么输入,结果都是一样的,只保留两位

sunzhiwen150411 发表于 2017-8-25 14:16:40

yuyubill 发表于 2017-8-18 13:20
我很奇怪的是你的代码中switch分支条件里string字符串不会报错

请问大神,这段代码有什么问题吗?

yuyubill 发表于 2017-8-25 14:31:24

sunzhiwen150411 发表于 2017-8-25 14:16
请问大神,这段代码有什么问题吗?

switch()括号里面不能是字符串啊,你使用字符串不会报错???

yuyubill 发表于 2017-8-25 14:40:00

还真可以。。。。

finomy 发表于 2017-8-25 14:41:06

我用chrome有时候会这样,可以尝试把value拆开用循环一个一个输入。以前的java版本switch不支持string,新的好像可以

yuyubill 发表于 2017-8-25 14:44:13

在java中switch后的表达式的类型只能为以下几种:byte、short、char、int(在Java1.6中是这样),
   在java1.7后支持了对string的判断   
我艹,我不造:Q
页: [1]
查看完整版本: selenium执行脚本时每个输入框只保留了两个字符