python - 在 DevOps 管道中下载并安装 selenium、webdriver 和 chromedriver?
问题描述
我被困在如何通过 CI/CD 管道执行 Selenium 测试。我的 selenium python-script 位于 Azure 的 VM 中。我想通过 CI/CD 管道运行它。这就是我所做的:
从构建中下载了 Artifacts(以获取我的 selenium python-script):
然后我将 selenium python-script 移动login.py
到: D:\a\1\a\LoginTestSuite\selenium\bin
然后我安装了 selenium-webdriver (npm install selenium-webdriver) 和 chromedriver (npm install chromedriver)D:\a\1\a\LoginTestSuite\selenium\bin
但我得到:from selenium import webdriver ModuleNotFoundError: No module named 'selenium'
我做错了什么?安装或我如何做到这一点的方式?
任何帮助都非常感谢。
编辑:
安装 webdriver_manager 并运行脚本后:
解决方案
您也可以通过 webdriver manager 使用它,通过在 chrome 中转到 about 来检查 chrome 版本,并将兼容 chromedriver 的版本指定为版本参数
安装管理器:
pip install webdriver_manager
与 Chrome 一起使用:
from selenium import webdriver
from webdriver_manager.chrome import ChromeDriverManager
driver = webdriver.Chrome(ChromeDriverManager(version="87.0.4280.88").install())
driver.get("https://www.google.com")
更新:
如果使用铬铬:
from selenium import webdriver
from webdriver_manager.chrome import ChromeDriverManager
from webdriver_manager.utils import ChromeType
driver = webdriver.Chrome(ChromeDriverManager(version="87.0.4280.88",chrome_type=ChromeType.CHROMIUM).install())
driver.get("https://www.google.com")
推荐阅读
- mysql - 如何使用 sql 获取特定条件下的结果?
- javascript - angular-slickgrid,在选择编辑器更改事件时触发单元格编辑
- sql - 如果数据存在于另一个表中,则更新表
- mysql - 将 MS Access 查询转换为 MariaDB
- javascript - 从对象数组中选择,通过匹配其中的一个属性,该属性也是一个数组
- python - 如何从odoo外部向odoo控制器发出发布请求?
- python - 在没有 Docker 的 Azure 函数中包含 Selenium/Firefox
- angular - 如何在不触发的情况下将值设置为文本区域
- json - 查询仅适用于小数据,而对于更多数据则不起作用
- scala - 避免火花广播加入超时