Mac OS下应用Python+Selenium实现web自动化测试

在Mac环境下应用Python+Selenium实现web自动化测试

在这个过程中要注意两点:

1.在终端联网执行命令"sudo pip install --U selenium"如果失败了的话,可以尝试用命令"sudo easy_install selenium"来安装selenium;

2.安装好PyCharm后新建project,Interpreter一定要选对,默认给出的两个可选项很有可能是不对的。亲测通过的一个Interpreter是"/usr/bin/python2.7"。如果你创建project的时候选错了Interpreter的话,可以从PyCharm(我的PyCharm版本是PyCharm Community Edition 5.0.1)的File->Default Settings->Default Project->Project Interpreter->Add local来重新进行选择,如下图:

如果第2点选择不对的话在import selenium的时候会出错,提示:Unresolved preference 'Selenium'。

只有选择对Interpreter之后才能够正常的引入selenium并执行程序(以下用测试博客园登录功能为例):

python 复制代码
#-*- coding: UTF-8 -*-
from selenium import webdriver
import time
browser = webdriver.Firefox()
browser.get("http://cnblogs.com")
time.sleep(1)
browser.find_element_by_link_text("登录").click()
time.sleep(1)
browser.find_element_by_id("input1").send_keys("用户名")
browser.find_element_by_id("input2").send_keys("密码")
browser.find_element_by_id("signin").click()
time.sleep(1)
try:
    if browser.find_element_by_link_text("退出"):
        print "Login Successfully."
except:
    print "Login failed."
#browser.quit()

运行结果(测试通过):

这样在Mac+Python+PyCharm+Selenium下一个简单的测试用例就完成了。

最后说些关于自动化的事,哪些测试有必要自动化,哪些测试没必要自动化。我认为页面上的文字以及图像类检查,都没有必要自动化。为什么呢?因为布局上的一些东西,是要靠肉眼看的。即便是文字内容对了,如果布局出错了,用传统的自动化页面定位元素的检查方法也是check不出来的。所以我认为,凡是涉及到图像和文字等一切表现层的东西都没有必要自动化,表现层上的测试还是要手动的完成。至于功能逻辑上的测试,比如点哪个按钮跳转到哪里之类的测试,可以自动化完成。

最后感谢每一个认真阅读我文章的人,礼尚往来总是要有的,这些资料,对于【软件测试】的朋友来说应该是最全面最完整的备战仓库,虽然不是什么很值钱的东西,如果你用得到的话可以直接拿走:

这些资料,对于【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴上万个测试工程师们走过最艰难的路程,希望也能帮助到你!

相关推荐
程序员黑豆5 小时前
鸿蒙应用开发之双向绑定实战:从 V1 到 V2 的完整迁移指南
前端·harmonyos
Escape5 小时前
为什么你的 AI 越聊越傻?从 Token 到 Agent,彻底搞懂 AI Agent的秘密㊙️
前端·人工智能·后端
Sisphusssss5 小时前
香橙派5plus GPIO
linux·python·ubuntu
李明卫杭州6 小时前
Vue3 响应式概念 ↔ React 对应方案(类组件与函数组件)对照笔记
前端·vue.js·react.js
windliang6 小时前
Claude Code 源码分析(二):CC 的心脏 queryLoop Agent主循环
前端·ai编程·claude
颜酱6 小时前
08 | 把维度值同步到 Elasticsearch(生成阶段)
人工智能·python·langchain
Revolution616 小时前
reactive 对象重新赋值后,表单为什么没有恢复默认值
前端·vue.js·面试
米饭同学i6 小时前
微信小程序 input maxlength 遇上输入法拼音被截断?这是最完整的解决方案
前端
董员外6 小时前
RAG 系统进化论(二):Naive RAG,检索增强生成的最小闭环
前端·人工智能·后端
脾气有点小暴6 小时前
ECharts 伪 3D 柱状图完整注释 + 实现原理说明
前端·3d·信息可视化·vue·echarts