Selenium+Python自动化测试环境搭建和搭建过程遇到的问题解决

时间:2021-02-13 18:34:16

环境搭建:

第一步:安装Python 

网址:https://www.python.org/

按照如图提示安装,并且配置环境变量(安装时候选中pip会自动安装Python的包管理工具 pip,推荐选择“Add exe to path”,将会自动添加Python的程序到环境变量中)

Selenium+Python自动化测试环境搭建和搭建过程遇到的问题解决

查看python是否安装成功:打开cmd 输入python,如下图说明安装成功

Selenium+Python自动化测试环境搭建和搭建过程遇到的问题解决

第二步:安装基于Python的Selenium包

打开cmd,进入到目录: D:\setup\Python\Scripts(根据自己的安装目录选择 Python的Scripts)

然后敲入命令: pip install selenium  结果如下图说明安装成功

Selenium+Python自动化测试环境搭建和搭建过程遇到的问题解决

检查Selenium是否安装成功
方法1:使用命令”pip show selenium”可以看到当前系统中安装的版本信息,如图所示即为安装成功

Selenium+Python自动化测试环境搭建和搭建过程遇到的问题解决

方法2:在IDLE中输入下图中的命令(箭头所指),回车后显示以下内容就可以判断硒安装成功了。

Selenium+Python自动化测试环境搭建和搭建过程遇到的问题解决

第三步:安装PyCharm(Python的ide,步骤略)

第四步:检查安装好的环境是否能进行自动化测试

写一个简单的Python的自动化脚本,(代码要实现的功能是打开的Firefox浏览器,输入百度的网址,打开百度界面,在百度搜索框中输入“Selenium2”关键字,然后点“百度一下”按钮搜索出结果,然后自动关闭浏览器)

 from selenium import webdriver

 driver = webdriver.Firefox()
driver.get("http://www.baidu.com") driver.find_element_by_id("kw").send_keys("selenium2")
driver.find_element_by_id("su").click()
driver.quit()

步骤:

1.新建一个的Python脚本文件,必须以的.py为后缀,这是的Python脚本文件的固有后缀名

2.复制粘贴上面的代码,或者自己动手敲进去,自动动手敲可以加深印象

3.运行,运行结果是:电脑自动打开的Firefox浏览器,输入百度的网址,打开百度界面,在百度搜索框中输入“Selenium2”关键字,然后点“百度一下”按钮搜索出结果,然后自动关闭浏览器,

出现的问题总结:

1. 如果不是用PyCharm,只是用记事本在桌面新建了.py文件,会遇到打不开.py的问题

解决:打开cmd  输入 python 你的.py文件路径 点击回车即可

2. 运行后报错如图

Selenium+Python自动化测试环境搭建和搭建过程遇到的问题解决

解决:可能是文件中有中文的字符或者空格,建议不要直接复制粘贴,自己最好手写,保证没有中文字符,空格等出现即可

3.运行后报错如图:

Selenium+Python自动化测试环境搭建和搭建过程遇到的问题解决

解决:需要重新下载一个驱动文件,文件名为“geckodriver.exe”,下载后将其路径配置在路径变量中。或者直接把文件拷贝到Python安装目录下

geckodriver.exe的下载路径:https://github.com/mozilla/geckodriver/releases

将解压的文件拷贝到Python目录

Selenium+Python自动化测试环境搭建和搭建过程遇到的问题解决

4.使用PyCharm编写程序时from selenium import webdriver报错: 无法导入selenium webdriver

错误截图:

Selenium+Python自动化测试环境搭建和搭建过程遇到的问题解决

解决:在pycharm里配置python环境,在pycharm中,打开File/settings,设置 python.exe路径

Selenium+Python自动化测试环境搭建和搭建过程遇到的问题解决

5.定位元素时报错(定位带空格的class属性)

Selenium+Python自动化测试环境搭建和搭建过程遇到的问题解决

解决:既然知道class属性有空格是多个属性了,那定位的时候取其中的一个就行(并且要唯一),改成:

driver.find_element_by_class_name("btn-block").click()即可  或者btn.btn-primary.btn-lg.btn-block 空格用.代替

安装过程和问题总结如上,备忘。

文章参考博客:https://blog.csdn.net/youxianzide/article/details/81451633 感谢作者总结