您的位置:首页 > Web前端

html+selenium+webdriver+java,一个前端自动化Demo

2016-12-07 19:04 519 查看
某支付产品,需要以form post方式调起。用httpclient或其他接口测试工具直接发报文(key1=value1&key2=value2&……keyN=valueN)么也可以,但是这个产品是带前端页面的,还想看看前端页面长什么样,于是想到了借助前端自动化工具selenium来玩。

一、环境搭建

selenium+webdriver+java环境搭建就不详述,具体可参考材料http://www.cnblogs.com/fnng/p/4753511.html

二、制作html

按照接口设计编写一个简单的html。

接口设计:



html:



页面:



三、编写脚本

package com.mypro.b2ctest;

import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.ie.*;
import Certificate.CertificateCoder;
import java.util.Date;
import java.text.SimpleDateFormat;

public class test{

public static void main(String[] args){

SimpleDateFormat df1 = new SimpleDateFormat("yyyyMMddHHmmss");//设置日期格式
SimpleDateFormat df2 = new SimpleDateFormat("yyyyMMdd HH:mm:ss");//设置日期格式

//配置测试数据
String key1="1.0.0";
String key2=df1.format(new Date());
String key3=df2.format(new Date());

//计算签名
String string="key1="+key1+"&key2="+key2+"&key3="+key3;
System.out.println("[DATA]"+string);
String sign = null;
try {
sign = CertificateCoder.sign(string, "证书path", "证书密钥").replaceAll("[\\s]", ""); //替换掉所有空白字符
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
System.out.println("[SIGN]"+sign);

//前端赋值
System.out.println("start selenium");
WebDriver driver=new InternetExplorerDriver();
driver.get("C:/Users/Administrator/Desktop/b2c_req.html");
driver.findElement(By.xpath("/html/body/form[1]/input[1]")).sendKeys(key1);
driver.findElement(By.xpath("/html/body/form[1]/input[2]")).sendKeys(key2);
driver.findElement(By.xpath("/html/body/form[1]/input[3]")).sendKeys(key3);
driver.findElement(By.xpath("/html/body/form[1]/input[4]")).sendKeys(sign);
driver.findElement(By.xpath("/html/body/form[1]/input[5]")).submit();

//driver.close();

}
}


四、运行

运行效果就不展示了。脚本可以继续完善,完全实现前端自动化。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: