atitit.浏览器web gui操作类库 和 操作chrome浏览器的类库使用总结

来源:互联网 发布:linux创建新用户和组 编辑:程序博客网 时间:2024/05/16 17:19

atitit.浏览器web gui操作类库 和 操作chrome浏览器的类库使用总结

 

 

1. 常见标准 1

1.1. 录制重放 1

1.2. 一个窗体一个proxy cookie 1

1.3. exec js 1

1.4. js 调用java 1

1.5. 修改dom属性 2

1.6. 关键字驱动 2

1.7. 加载js类库 2

1.8. 一个窗口一个代理 2

1.9. 独立窗口cookie 2

1.10. 无图模式支持 2

1.11. 支持自定义路径 2

2. 框架选型selenium2(webdriver)  QTP 2

3. 操作chrome浏览器 3

3.1. chromedriver 3

3.2. 自定义路径 3

3.3. 独立窗口代理器 3

3.4. 无图模式 3

3.5. code 3

 

1. 常见标准

1.1. 录制重放

这个功能好.不熟悉的时候儿直接能使用...相像help chm雅十..

1.2. 一个窗体一个proxy cookie

webdriveff可以。。swt browsernative swing的都是ie默认,改ff可麻烦了。。

1.3. exec js

 

作者:: 老哇的爪子 Attilax 艾龙,  EMAIL:1466519819@qq.com

转载请注明来源: http://blog.csdn.net/attilax

 

1.4. js 调用java

一般是浏览器扩展,,js调用。。如果不支持,只能使用cookie的方式了。。

1.5.  修改dom属性

通过js或者 后台的dom操作。ie com 可通过后台domwebdriveswt browser是通过js

 

1.6. 关键字驱动

,测试人员不需要录制测试脚本,而可以改成设计测试脚本。即:先将应用程序的GUI 对象添加到QTP的对象仓库(Object Repository)中,然后针对每一个需要操作到的对象设计每个测试步骤。我个人感觉,这的确是一个很酷的特性,它使我们可以不必实际去操作应用程 序,就可以编写出测试脚本,这样做既节省了时间,而且还有一个更大的好处就是可以在应用程序还没有设计完成,或者由于出错无法正常执行的时候仍然可以编写 我们的测试脚本。应用程序只需要有使用界面(UI),而不必实际运行,测试人员就可以开始建立测试脚本,为我们实施自动化测试赢得更充足的时间。而

1.7. 加载js类库

原理一般是创建一个script 标签....添加js

 

1.8. 一个窗口一个代理

1.9. 独立窗口cookie

1.10. 无图模式支持

1.11. 支持自定义路径

 

 

 

 

2. 框架选型selenium2(webdriver)  QTP

 

 

3. 操作chrome浏览器

3.1. chromedriver

// 在java程序中添加

System.setProperty("webdriver.chrome.driver", pathx.classPathParent()+ "\\chromedriver.exe");

selenium不能直接操作chrome,要通过这个驱动...

3.2. 自定义路径

ChromeOptions co = new ChromeOptions();

co.setBinary(path);

 

}

 

return new ChromeDriver(co);

 

3.3. 独立窗口代理器

 

默认gui界面是同ie的设置一样,多个窗口一个proxy。。不过命令行可以。-proxy-server 参数

 

   co.addArguments(-proxy-server=hostport);

 

3.4. 无图模式

命令行参数 --disable-images不过好像不去作用。。只能gui界面禁止。。这样所有的chrome窗口就生效了。

 

 

3.5. code

 

 

private static WebDriver getChromeDriver(FirefoxProfile profile) {

// 在java程序中添加

System.setProperty("webdriver.chrome.driver", pathx.classPathParent()+ "\\chromedriver.exe");

ChromeOptions co = new ChromeOptions();

 

String max = "--start-maximized";

 

String proxyParem = "";

try {

if (browserParams.get().get("network.proxy.http") != null) {

String proxy = browserParams.get().get("network.proxy.http")

":"

browserParams.get().get("network.proxy.http_port");

 

proxyParem = "-proxy-server=" + proxy;

}

catch (Exception e) {

e.printStackTrace();

}

String noimg = "";

if (browserParams.get().get("permissions.default.image") != null

&& browserParams.get().get("permissions.default.image")

.equals("2"))

noimg = "--disable-images";

//--disable-image-transport-surface

// haox bsin .only gui setting/privert//img

 

co.addArguments(proxyParem);

String path = pathx.classPathParent()

"\\Chrome\\Application\\chrome.exe";

if (new File(path).exists()) {

System.out.println(path);

co.setBinary(path);

 

}

 

return new ChromeDriver(co);

 

}

 

 

 

 

0 0
原创粉丝点击