selenium grid解决多台电脑进行并发执行测试脚本
1 两台计算机,一台计算机既做HUB,又做Node
机器A设置HUB的步骤:
1 运行---输入cmd
2 输入: cd c:/
3 输入: java -jar selenium-server-standalone-2.48.2.jar -role hub
设置node的步骤:
1 运行---输入cmd
2 输入: cd c:/
3 输入: java -jar selenium-server-standalone-2.48.2.jar -role node -port 5555 -hub http://HubIP:4444/grid/register -maxSession 15 -browser browserName="ie",version=ANY,platform=WINDOWS,maxInstances=15 -Dwebdriver.ie.driver=C:\IEDriverServer.exe
机器B设置Node的步骤:
同机器A设置node的步骤
2 testng.xml的设置
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd">
<suite name="TestNGSuite" parallel="classes" thread-count="2"
verbose="1">
<test name="Test2" preserve-order="true">
<parameter name="seleniumHost" value="172.16.107.74" />
<parameter name="seleniumPort" value="5555" />
<parameter name="name" value="100001" />
<parameter name="password" value="100001" />
<parameter name="seleniumHost1" value="192.168.198.128" />
<parameter name="seleniumPort1" value="5556" />
<parameter name="name1" value="100002" />
<parameter name="password1" value="100002" />
<classes>
<class name="cn.test.testScripts.TestsuijiPbgc1" />
<class name="cn.test.testScripts.TestsuijiPbgc2" />
</classes>
</test>
</suite>
3代码设置
@Parameters({ "seleniumHost", "seleniumPort" ,"name", "password" })
@BeforeClass
public void beforeMethod(String seleniumHost,String seleniumPort,String name,String password) {
DOMConfigurator.configure("log4j.xml");
//System.setProperty("webdriver.ie.driver",
// "C:\\Program Files (x86)\\Internet Explorer\\IEDriverServer.exe");
DesiredCapabilities ieCapabilities = DesiredCapabilities
.internetExplorer();
ieCapabilities
.setCapability(
InternetExplorerDriver.INTRODUCE_FLAKINESS_BY_IGNORING_SECURITY_DOMAINS,
true);
//ieCapabilities.setCapability(InternetExplorerDriver.FORCE_CREATE_PROCESS, true);
try {
//driver = new InternetExplorerDriver(ieCapabilities);
driver = new RemoteWebDriver(new URL("http://" + seleniumHost + ":"+seleniumPort+"/wd/hub"), ieCapabilities);
} catch (Exception e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
driver.manage().timeouts().implicitlyWait(30, TimeUnit.SECONDS);
long id = Thread.currentThread().getId();
System.out.println("这个是电脑1,After test-method. Thread id is: " + id);
Login_Action.excutepw(driver, name, password);
try {
Thread.sleep(5000);
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
selenium grid解决多台电脑进行并发执行测试脚本的更多相关文章
- Selenium执行测试脚本稳定性的一些经验分享交流
Selenium执行测试脚本稳定性的一些经验分享交流 公司的自动化WEB测试框架IATA已上线运行了一段时间,期间发现一些脚本稳定性的问题,与大家分享一下. CASE执行游览器:ie firefox ...
- 聊聊 Jmeter 如何并发执行 Python 脚本
1. 前言 大家好,我是安果! 最近有小伙伴后台给我留言,说自己用 Django 写了一个大文件上传的 Api 接口,现在想本地检验一下接口并发的稳定性,问我有没有好的方案 本篇文章以文件上传为例,聊 ...
- docker+selenium grid解决node执行经常卡死
执行用例时出现下图: 可以在启动node节点容器时添加如下红色字体的参数 docker run -d -p 5903:5900 --shm-size=512m --link selenium_hub: ...
- selenium grid中的多个线程同步执行
需求:有一个工作流,每一步审批都需要多个领导参与,才能推流程到下一步去 代码思考:多个领导在自己的线程中运行,速度有的快有的慢,如何保证下一步的领导审批时,这个步骤已经激活 如下是代码:思路为:如果这 ...
- Appium IOS 使用多模拟器并发执行测试
申明一下 转载请注明出处 复制粘贴请滚蛋 !!!!!!!! 最近在是用appium进行app的并发测试,并且Android已经实现在同一台PC机使用多个模拟器并发测试的功能 这里说一句模拟器使 ...
- 解决方法:loadrunner 场景下执行webservice脚本是---报错10492 Error: Exception was raised when calling per-process-init function in extens
在vug下执行时,脚本无异常,但是在controller下执行时报下面错误,网上查了下,解决方法千奇百怪,但无一可行. 分析了下错误,似乎是初始化进程有关.想到rts中的设置习惯时以线程方式执行. 遂 ...
- 用docker搭建selenium grid分布式环境实践之路
最近需要测试zoom视频会议,同时模拟100个人加入会议.经过了解,zoom提供了直接通过url链接加入会议的方式(只能通过chrome浏览器或者FireFox浏览器,因为用的协议是webrtc). ...
- Selenium Grid和IE /Firefox各种填坑
使用selenium grid的步骤 1.确保hub和node都安装并且配置好了java jdk. 2.在hub上运行以下命令. java -jar C:\Software\selenium\sele ...
- Selenium Grid分布式测试入门详解
本文对Selenium Grid进行了完整的介绍,从环境准备到使用Selenium Grid进行一次完整的多节点分布式测试. 运行环境为Windows 10,Selenium版本为 3.5.0,Chr ...
随机推荐
- angularjs实战
1.指令 transclude 保留原来的内容 replace 去掉<my-directive>指令 <script src="http://apps.bdimg.com ...
- AndroidStudio创建新项目报错
创建新项目自动执行时报错: Failed to import new Gradle project: failed to find Build Tools revision 17.0.0 Consul ...
- css 内联元素
内联元素又名行内元素(inline element),和其对应的是块元素(block element),都是html规范中的概念.内联元素的显示,为了帮助理解,可以形象的称为“文本模式”,即一个挨着一 ...
- 第四篇:SOUI资源文件组织
什么是资源? 现代的软件只要有UI,基本上少不了资源. 资源是什么?资源就是在程序运行时提供固定的数据源的文件. 在MFC当道的时代,资源一般就是位图(Bitmap),图标(Icon),光标(Curs ...
- VR 相关专业词汇
最近在看 SIGGRAPH2015 有关 VR Display and Interaction 的几篇文章,之前从来没看过有关方面的 paper,一看才发现专业词汇太多了,根本不懂啊,幸亏 Paper ...
- Android ImageCache图片缓存,使用简单,支持预取,支持多种缓存算法,支持不同网络类型,扩展性强
本文主要介绍一个支持图片自动预取.支持多种缓存算法的图片缓存的使用及功能.图片较大需要SD卡保存情况推荐使用ImageSDCardCache. 与Android LruCache相比主要特性:(1). ...
- 两种方法获取shadow ssdt
ULONG GetShadowSsdtCurrentAddresses( PSSDT_ADDRESS AddressInfo, PULONG Length ) { PSYSTEM ...
- Arduino101学习笔记(九)—— 中断函数
1.设置中断函数 //***************************************************************************************** ...
- javascript 时间倒计时
新加入一个项目的集中开发,遇到一个需要倒计时的需求,经过测试,有以下几种方案,分享出来: 方案一: 页面Html: <span style="font-size:18px;" ...
- 金融左侧js错误