在CentOS 7操作系统上安装Selenium并使用webdriver_manager
自动安装ChromeDriver,可以有效提升Web自动化测试的效率。以下是详细的步骤和代码示例。
一、前提准备
在安装Selenium之前,我们需要确保系统上有Python环境和pip工具。可以通过以下命令检查:
python --version
pip --version
如果还没有安装Python 2或Python 3,可以通过以下命令安装:
sudo yum install python3
安装pip工具:
sudo yum install python3-pip
二、安装Chrome浏览器
Selenium运行时需要浏览器支持。我们以Chrome浏览器为例,首先需要安装Chrome。可以通过以下步骤安装Chrome:
- 下载Chrome RPM包:
wget https://dl.google.com/linux/direct/google-chrome-stable_current_x86_64.rpm
- 安装Chrome:
sudo yum localinstall google-chrome-stable_current_x86_64.rpm
- 安装依赖包(如果需要):
sudo yum install -y libX11-xcb
三、安装Selenium和webdriver_manager
接下来,我们将安装Selenium库以及webdriver_manager
库。使用pip
命令可以轻松安装这两个库。
pip install selenium webdriver_manager
四、编写测试脚本
下面是一个简单的Python脚本,使用Selenium通过webdriver_manager
自动管理ChromeDriver。创建一个名为test_selenium.py
的文件,并添加以下代码:
from selenium import webdriver
from webdriver_manager.chrome import ChromeDriverManager
import time
# 初始化Chrome浏览器
driver = webdriver.Chrome(ChromeDriverManager().install())
# 访问网站
driver.get("https://www.baidu.com")
# 等待2秒
time.sleep(2)
# 找到输入框,输入搜索内容
search_box = driver.find_element("name", "wd")
search_box.send_keys("Selenium")
# 找到搜索按钮并点击
search_button = driver.find_element("id", "su")
search_button.click()
# 等待搜索结果加载
time.sleep(5)
# 关闭浏览器
driver.quit()
五、运行测试脚本
确保文件test_selenium.py
已经保存后,可以在终端中运行这个脚本:
python3 test_selenium.py
这个脚本会打开Chrome浏览器,访问百度,输入"selenium"进行搜索,并最后关闭浏览器。
六、注意事项
-
防火墙和SELinux:在某些情况下,CentOS的防火墙和SELinux可能会阻止浏览器正常工作。可以考虑暂时禁用SELinux或在防火墙中允许相应的流量。
禁用SELinux(重启后恢复):
bash sudo setenforce 0
-
Chrome和ChromeDriver版本兼容性:确保Chrome和ChromeDriver的版本匹配。
webdriver_manager
会自动处理这一点,但在某些情况下,您可能需要手动检查版本。 -
可视化环境:如果您是在服务器上操作而没有图形界面,您可能需要使用虚拟显示(如Xvfb)来运行Selenium。
结论
通过以上步骤,我们在CentOS 7上成功安装了Selenium,并使用webdriver_manager
自动管理ChromeDriver。这使得Web自动化测试变得更加简单和高效,适合于各类Web应用的测试需求。希望这篇文章能够对您有所帮助!