美文网首页
操作日期控件的自动化脚本

操作日期控件的自动化脚本

作者: 青风飞絮 | 来源:发表于2018-12-13 21:28 被阅读0次

    第一步:准备日期控件的界面代码,如下所示:

    <html>
        <head>
            <title>日期控件测试</title>
        </head>
        
        <body>
            <table border = '0'>
                <tr>
                    <th>出发日期</th>
                    <td><input type='date' readonly='readonly' name='sendDate' value = '2018-01-01'/></td>
                </tr>
                <tr>
                    <th>返回日期</th>
                    <td><input type='date' readonly='readonly' name='backDate' value = '2018-01-01'/></td>
                </tr>
            </table>
        </body>
    </html>
    

    第二步:使用xpath定位元素并编写JS脚本,脚步如下:

    //声明一个变量,并把xpath语句存放在变量中
    var xpath = "//input[@type='date']";
    //使用xpath定位元素,并把定位结果取出来放到一个结果集中
    var res = document.evaluate(xpath,document,null,XPathResult.ANY_TYPE,null);
    //从结果集中取第一个元素
    var e1 = res.iterateNext();
    //从结果集中取第二个元素
    var e2 = res.iterateNext();
    //去除元素e1的只读属性,并设值为"2018-12-01"
    e1.removeAttribute("readonly");
    e1.value = "2018-12-01";
    //去除元素e2的只读属性,并设值为"2018-12-05"
    e2.removeAttribute("readonly");
    e2.value = "2018-12-05";
    

    第三步:编写Java自动化测试脚本,脚步如下

        //测试日期控件
        @Test
        public void testDate() {
            //打开测试界面文件
            driver.get("C:\\Users\\LENOVO\\Desktop\\2018-10-01\\demo1.html");
            //线程休息2秒钟
            sleep(2);
            //将第二步中JS脚本拼接成一个字符串存放在String类型的js变量中
            String js = "var xpath = \"//input[@type='date']\";" +
                    "var res = document.evaluate(xpath,document,null,XPathResult.ANY_TYPE,null);" +
                    "var e1 = res.iterateNext();" +
                    "var e2 = res.iterateNext();" +
                    "e1.removeAttribute(\"readonly\");" +
                    "e1.value = \"2018-10-01\";" +
                    "e2.removeAttribute(\"readonly\");" +
                    "e2.value=\"2018-10-07\";";
            //强制类型转换,把driver强制转换为可以执行js代码的driver
            JavascriptExecutor jsDriver = (JavascriptExecutor)driver;
            //使用executeScript()方法执行js代码
            jsDriver.executeScript(js);
            //线程休息2秒钟
            sleep(2);
        }
    

    相关文章

      网友评论

          本文标题:操作日期控件的自动化脚本

          本文链接:https://www.haomeiwen.com/subject/qvqihqtx.html