你是怎么用 selenium 做自动化测试的?
回答·30
最热
最新
- 我目前的解决方案如下,供参考 Python+ selenium(基于 selenium 二次封装主要目的是完成界面元素定位及调用)+ pytest(封装测试用例)+ pytest-HTML/allure(生成自动化测试报告)+ logging(实现有日志可以方便跟踪问题)+ email(方便测试结束邮件自动发生,随时随地了解测试结果)+ jenkins(啥时候可以少了它)+ git/SVN(管理你的代码,代码总要更新迭代的,你懂的)
- Python+selenium+unittest 实现 UI 自动化: 我们会用到的工具是 python2.7,安装 pycharm 进行自动化脚本的编写,首先创建一个登录自动化的文件夹,新建一个以 .py 结尾的 python 文件,首先导入 selenium 模块中的 webdriver, 导入 time 模块中的 sleep, 导入 unittest 框架,导入网页运转的页面 HTMLTestRunnerCN 模块中的 HTMLTestRunner, 定义一个 test 类(unittest.testcase) Def setup(self),self 作传参,初始化工作,封装登录操作,设立 URL 作为登录页面的网址
- 我们用的是 Python+selenium+unittest+beautifulreport 来进行 web 自动化的,Python 很多三方库,用着很方便 selenium 的 webdriver 搭配浏览器驱动来操纵浏览器进行元素的定位、操作等,用 unittest 来组织测试用例,把用例里面涉及到的方法、元素、页面再次封装,保证代码简洁、易读易修改,最后用 beautifulreport 来跑用例,生成测试报告。
- 看了一些回答基本太基础 首先,如果是是企业级的 UI 自动化,根据测试对象的业务类型,选择测驱动,常见的测定驱动有三类 数字驱动 关键字驱动 混合驱动 selenium 本身作为一个 web 页面自动化测试的一个框架,支持 java 和 python 做二次深度开发,提供了很多元素定位方法(id css name xpath,这个只是自动化定位的方法,不是基于业务类型选择的测试驱动,很多人这里会搞混),一般企业级的自动化测试在 java 和 python 基础上基于 selenium 之上重新做二次封装,隐藏核心测试部件(系统的核心运算结构,密文的加密方法,核心算法防破解等),为了更加贴合企业测试环境需求,定义或重构框架函数(log,截图,测试结果,数据图表分析,问题指向,bug 录入,邮件提醒等),自动化框架本事的 ai 程度决定了框架技术的深浅,因为涉及自动化(无人托管),异常处理(业务异常,场景异常,系统异常)的逻辑模块往往比业务自动化实现模块根难根费神,还有很多东西需要实践去弥补自动化测试系统,这是一门知识,更是一门学科
- 1 选语言 2 选择浏览器和下载相应的驱动 3 搭建框架,比如日志放到那,测试报告路径,发送邮件,配置文件,数据需不需要持久化,是用数据库持久化,还是直接保存 csv 或者 xml。4 写代码,页面执行过程过去元素的方法,xpath.css,jquery,js,slector 等方法,便利数据,断言,异常捕捉等等 5 代码提交 git,或者 pull 下来进行维护 6 代码通过 jenkins 编译构建,设置执行周期,每周或者几天执行一次,设置发送人,查看测试报告。
- puppeteer,cypress 了解下,都 0202 年了谁还在用 selenium。
- java+testng+selenium,集成第三方报告工具,用 maven 管理项目。
- 我做的 UI 自动化测试是登录--搜索商品--选择商品--添加购物车--提交订单这样一个流程 首先测试前的准备工作把要使用的一些第三方库通过 pycharm 或者是通过命令 pip install 安装好 selenium、xlrd、pymysql 等库,然后把和浏览器版本相对应的浏览器驱动放到 python 的安装目录,做好这些准备工作之后就开始配置 pytest.ini 文件,里面包括执行的路径,执行的规则等参数,然后的话开始使用 selenium 进行一些操作比如获得浏览器驱动,然后通过一个 get 函数传入谷歌网址,之后通过 find_element 对搜索框、按钮等元素进行定位,这里我们最常用的元素定位方法是 Xpath、CSS 和 id 定位,定位之后我们可以对元素进行一些操作比如 click 点击,send 发送文本,在这期间我们也可以使用 time.sleep 进行操作的等待,退出浏览器驱动的话我们可以用 quit 函数那么在这里我们还可以使用 po 模型把定位元素的方法封装在一个类里面,对于登录的参数我们是把用户名和密码放在 excel 表格里使用 ddt 模型使数据和脚本进行分离,接下来呢就是利用 assert 断言来帮助我们判断预期结果和实际结果是否一致,最后的话我们再引入一个 html 库和 allure 库生成自动化测试报告,然后对报告进行分析,主要看失败了多少,错误了多少,对于错误的一般是我们的脚本的问题,失败的我们首先检查是不是脚本的问题,如果不是脚本的问题,那么就可以提 bug 了,UI 自动化的话我们大概就是这样做的。
- 现在有很多等装好的工具,直接拿过来用就好了。比如 RF,配置好了以后,可以自己设计测试,打开网页什么的不用自己在写了,直接 open brown 就可以了。另外,最近 cypress 也是一个不错的选择,下载下来就能用,不用配置环境什么的。
- python+selenium+pytest 实现 ui 自动化