selenium+pthon----Grid2分布式执行测试脚本

本文介绍了使用Selenium进行测试的步骤,包括下载Selenium Server、配置grid文件、启动hub和node,还给出了测试脚本。作者配置了Firefox和Chrome两个浏览器进行测试,Firefox能正常启动,但Chrome启动报错,文中展示了报错信息,尚未找到解决办法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

原文出处:https://blog.youkuaiyun.com/real_tino/article/details/53467406

按步骤操作:

1.下载selenium server,本人用的selenium版本是3.141.0(可以在cmd窗口用命令查询:pip show selenium),所以下载对应selenium-server-standalone-3.141.0.jar

2.grid配置文件,该文件负责提供主机和浏览器信息

def grid():
d = {'http://127.0.0.1:4444/wd/hub' : 'firefox','http://127.0.0.1:5555/wd/hub' : 'chrome',
}
return d

3.下载完成后进入相应的目录中打开cmd,输入java -jar selenium-server-standalone-3.141.0.jar -role hub,这是万恶之源,先启它才能干后面的事。启动之后再打开一个cmd,输入java -jar selenium-server-standalone-3.141.0.jar -role node -port 5555,这是启动第一个node,指定端口5555,与grid配置文件中所写的端口一致。

4.测试脚本# encoding:utf-8


from selenium import webdriver
from selenium.webdriver.common.desired_capabilities import DesiredCapabilities
import time,os.path
import grid_module

for host,browser in grid_module.grid().items():
driver = webdriver.Remote(
command_executor=host,
desired_capabilities={
'platform':'ANY',
'browserName':browser,
'version':'',
'javascriptEnabled':True
}
)
driver.get("http://www.baidu.com")
driver.find_element_by_id("kw").send_keys(u"中国")
driver.find_element_by_id("su").click()
time.sleep(3)
if driver.title == u"中国_百度搜索":
print("title匹配")
else:
print("title不匹配")
driver.close()
5.在浏览器中打开:http://127.0.0.1:4444/grid/console,显示好下图所示就说明启动成功

6.执行测试脚本查看是否能启动配置的两个浏览器

  我配置了firefox和chrome两个浏览器,firefox能正常启动,但chrome启动报异常,还没有找到解决办法

title匹配
Traceback (most recent call last):
File "F:/HQL/源码学习/selenium Gird2/testcase.py", line 15, in <module>
'javascriptEnabled':True
File "E:\python\lib\site-packages\selenium\webdriver\remote\webdriver.py", line 157, in __init__
self.start_session(capabilities, browser_profile)
File "E:\python\lib\site-packages\selenium\webdriver\remote\webdriver.py", line 252, in start_session
response = self.execute(Command.NEW_SESSION, parameters)
File "E:\python\lib\site-packages\selenium\webdriver\remote\webdriver.py", line 321, in execute
self.error_handler.check_response(response)
File "E:\python\lib\site-packages\selenium\webdriver\remote\errorhandler.py", line 242, in check_response
raise exception_class(message, screen, stacktrace)
selenium.common.exceptions.SessionNotCreatedException: Message: Unable to create new service: ChromeDriverService
Build info: version: '3.141.0', revision: '2ecb7d9a', time: '2018-10-31T20:22:52'
System info: host: 'USER-20150818GG', ip: '172.16.13.49', os.name: 'Windows 7', os.arch: 'amd64', os.version: '6.1', java.version: '1.8.0_91'
Driver info: driver.version: unknown
Stacktrace:

 

转载于:https://www.cnblogs.com/shanliguniang/p/10824213.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值