摘要: 10.13号期待了几年的selenium 4 release版正式发布 Selenium 4提供了几个新功能:对定位器、Chrome DevTools、改进的 Selenium Grid 等。 除了 Java,对于Selenium支持的语言,如Python、C#、PHP、Ruby和JavaScrip 阅读全文
posted @ 2021-10-17 22:40 大牛测试技术 阅读(336) 评论(0) 推荐(0) 编辑
摘要: 用PO的思想去重构或者管理行为驱动测试能使测试更有效率。 以携程网登录场景为例,项目中体现PO思想的是page目录下的两个文件分别为“base.py”和“loginPage.py”。 其中“base.py”文件代码抽取了一些基本的方法,如元素定位的方法;打开网站方法和得到当前网页标题等方法。其代码如 阅读全文
posted @ 2021-10-17 16:18 大牛测试技术 阅读(57) 评论(0) 推荐(0) 编辑
摘要: 大家对行为驱动测试应该有了一个具体的认知。更进一步如果这种测试机制能和Selenium框架融合并运用到真正的自动化项目中,这样更大的价值将显现出来。继续以实例来演示这种设想。以携程网的登录场景为例来讲解。 总体目录结构与上例一致,这里忽略。 1)场景描述。 场景主要是为了实现登录的目的。可以拆分为三 阅读全文
posted @ 2021-10-17 16:12 大牛测试技术 阅读(58) 评论(0) 推荐(0) 编辑
摘要: 行为驱动的概念(Behavior-Drivern Development,简称BDD)在国内测试领域还不怎么流行,应用面也不是特别广泛。在行为驱动中运用结构化的自然语言描述测试场景 ,然后将这些结构化的自然语言转化为可执行的测试脚本或者其他形式。BDD的一种优势是它建立了一种“通用语言”,而这种通用 阅读全文
posted @ 2021-10-17 16:06 大牛测试技术 阅读(177) 评论(0) 推荐(0) 编辑
摘要: Selenium Grid组件是Selenium一个非常重要的一个组件,它主要是用于远程分布式测试或者多浏览器并发测试。通常有如下两种情况下发生时会使用Selenium Grid。 测试需要运行在多种浏览器(比如火狐、谷歌和IE等),多种版本的浏览器(如IE9、IE11和Chrome 70.0 等) 阅读全文
posted @ 2021-10-17 15:58 大牛测试技术 阅读(233) 评论(0) 推荐(0) 编辑
摘要: 查看WebDriver API详细用法,可以浏览官方网站,也可以通过在本地启动服务方式。DOS窗口输入命令: #python –m pydoc–p4567 Server启动后如下所示: 访问网址http://localhost:4567/, 页面如下所示: 选择selenium->webdriver 阅读全文
posted @ 2021-10-17 15:50 大牛测试技术 阅读(72) 评论(0) 推荐(0) 编辑
摘要: Web测试过程中,常遇到Cookie测试,如查看不同浏览器中的Cookie、Cookie是否起作用等。在Selenium中提供了读取、添加、删除等操作Cookie的方法。详细方法如下所示: Cookie操作方法 方法描述 add_cookie(cookie_dict) 在当前会话中添加cookie信 阅读全文
posted @ 2021-10-17 15:46 大牛测试技术 阅读(149) 评论(0) 推荐(0) 编辑
摘要: 在自动化测试结束后,往往都需要查看执行结果,如何得到一份便于查看和管理的测试报告呢?这里,笔者推荐HTMLTestRunner应用程序,它是Python标准库unittest模块的一个扩展,可以生成HTML的测试报告,而且界面十分友好。 准备工作: 下载HTMLTestRunner.py文件,下载地 阅读全文
posted @ 2021-10-17 15:36 大牛测试技术 阅读(145) 评论(0) 推荐(0) 编辑
摘要: 单元测试库(unittest)实现了我们开发代码过程中实际值和预期值进行比较这类功能,使用起来也很方便。Unittest作为一种单元测试框架,其思想来源于Junit,跟目前市场上主流的一些测试框架有很多相似之处。 Unittest工作流中核心的四大组件简介: Test fixture是指执行测试之前 阅读全文
posted @ 2021-10-17 15:30 大牛测试技术 阅读(233) 评论(0) 推荐(0) 编辑
摘要: 在实际的项目中,代码在执行定位页面元素的过程中有些是需要等待时间的,但是如果在所有定位元素的操作之前都加上等待时间的话就比较麻烦,并且不易维护。 此时可以考虑智能等待,方法很简单, 可以在代码前面加上全局的智能等待时间,比如“driver.implicitly_wait(10)”,这里需要解释一下智 阅读全文
posted @ 2021-10-17 15:14 大牛测试技术 阅读(90) 评论(0) 推荐(0) 编辑
摘要: XML(可扩展标记语言),是互联网数据传输的重要载体,它不受系统和编程语言的限制。可以说它是一个数据携带者且具有高级别通行证。XML传递的具有结构化特征的数据是系统间,组件间得以沟通交互的重要媒介之一。 编程实践中,XML不仅可以用来标记数据,还可以用来定义数据类型等。XML提供统一的方法来描述和交 阅读全文
posted @ 2021-10-17 15:04 大牛测试技术 阅读(92) 评论(0) 推荐(0) 编辑
摘要: Json是一种轻量级的数据交换格式,采用的是一种完全独立于编程语言的文本格式来存储和表示数据。Json的特点是,不仅可读性强,而且也有利于机器解析和生成,一般用于提升网络传输速率。 Json库有两个比较重要的函数: dumps()方法:将Python对象编码成JSON字符串。 loads()方法:将 阅读全文
posted @ 2021-10-17 14:59 大牛测试技术 阅读(72) 评论(0) 推荐(0) 编辑
摘要: Python要读取Excel文件,需要先安装xlrd库,可以直接在命令行窗口下运行 #pip install xlrd 命令,如图10.24所示。另外,也可以利用离线包安装,离线包的下载地址是:https://pypi.org/project/xlrd/ 安装完xlrd库之后,就可以对Excel文件 阅读全文
posted @ 2021-10-17 14:48 大牛测试技术 阅读(114) 评论(0) 推荐(0) 编辑
摘要: DDT是“Data-Driven Tests”的缩写。ddt为第三方库,Unittest没有自带数据驱动功能,需先安装: #pip install ddt ddt.data,装饰测试方法,参数是一系列的值,比如元组等。 #学习有疑问请联系作者 #作者qq:2574674466 #作者邮箱257467 阅读全文
posted @ 2021-10-17 14:41 大牛测试技术 阅读(158) 评论(0) 推荐(0) 编辑
摘要: 在自动化测试过程中,遇到异常是时有发生的,为了使测试更加健壮,需要在自动化项目中去处理这些异常。 如何处理异常呢?首先需要搞清楚异常产生的原因,然后再对这些异常进行处理。 举一些简单的例子来说明异常处理的重要性和一般的处理方法。例子如下: #学习有疑问请联系作者 #作者qq:2574674466 # 阅读全文
posted @ 2021-10-17 14:32 大牛测试技术 阅读(84) 评论(0) 推荐(0) 编辑
摘要: 鼠标悬停即当光标与其名称表示的元素重叠时触发的事件,Selenium中对键盘鼠标操作封装在Action Chains类中。 Action Chains类的主要应用场景为单击鼠标、双击鼠标、鼠标拖拽等。部分常用的方法使用分类如下: click(on_element=None),模拟鼠标单击操作。 cl 阅读全文
posted @ 2021-10-17 14:22 大牛测试技术 阅读(64) 评论(0) 推荐(0) 编辑
摘要: 在做自动化测试项目过程过程中,有时需对元素截图操作,本篇将分析截图常用方法: 常用场景: 对验证码截图 图像识别验证码 以登录验证码为例: 去哪儿网登窗口 步骤: 实现对整个页面截图 对验证码元素进行裁切,从而实现对整个页面截图 代码1:实现对页面截图 #学习有疑问请联系作者#作者qq:257467 阅读全文
posted @ 2021-10-17 12:11 大牛测试技术 阅读(139) 评论(0) 推荐(0) 编辑