大家对行为驱动测试应该有了一个具体的认知。更进一步如果这种测试机制能和Selenium框架融合并运用到真正的自动化项目中,这样更大的价值将显现出来。继续以实例来演示这种设想。以携程网的登录场景为例来讲解。

  总体目录结构与上例一致,这里忽略。

  • 1)场景描述。

场景主要是为了实现登录的目的。可以拆分为三步操作:打开登录页面;输入用户名;输入密码。具体可以参考场景文件“example.feature”如下所示:

2)按照以上对场景的描述,创建行为驱动脚本如下。在脚本中实现了3个步骤,分别是打开登录页面;输入用户名;输入密码。

#学习有疑问请联系作者
#作者qq:2574674466
#作者邮箱2574674466@qq.com
#coding=utf-8
from behave import *
from selenium import webdriver
#以下函数为了实现打开网站的操作
@when('I open the login website')
def step_impl(context):#请在下列代码中添加真实的chromedriver的路径  context.driver = webdriver.Chrome("xxx")context.driver.get('https://passport.ctrip.com/user/login?')
#以下的函数是为了实现输入用户名
@Then('I input username')
def step_i2(context):
context.driver.find_element_by_id("nloginname").send_keys("test")#以下的函数是为了实现输入密码
@Then('I input password')
def step_i3(context): context.driver.find_element_by_id("npwd").send_keys("test")

3)在项目主目录下执行命令“behave”。查看测试结果。如下所示:

视频、学习笔记联系qq:2574674466
更多内容请关注公众号:“大牛测试

行为驱动behave集合selenium相关推荐

  1. behave java_Behave + Selenium(Python) 三

    来自T先生 通过之前的2篇文章,大家都了解了如果利用behave和selenium打开网页和进行基本的操作,但是这些对于项目来说,却是往往不够的. 如果对junit或者TestNG熟悉的人都知道有@B ...

  2. selenium火狐驱动_在Selenium Firefox驱动程序上运行测试

    selenium火狐驱动 带有Selenium 3.0的Gecko Marionette Firefox驱动程序 (Gecko Marionette Firefox Driver with Selen ...

  3. 行为驱动:Cucumber + Selenium + Java(一) - 环境搭建

    1.1 什么是行为驱动测试 说起行为驱动,相信很多人听说过. 行为驱动开发-BDD(Behavior Driven Development)是一个诞生于2003年的软件开发理念.其关键思想在于通过与利 ...

  4. 【自动化测试不求人】行为驱动behave环境搭建

    行为驱动的概念(Behavior-Drivern Development,简称BDD)在国内测试领域还不怎么流行,应用面也不是特别广泛.在行为驱动中运用结构化的自然语言描述测试场景 ,然后将这些结构化 ...

  5. jdk8集合类流_JDK 8中的流驱动的集合功能

    jdk8集合类流 这篇文章介绍了JDK 8的应用–引入了带有集合的 流 ,以更简洁地完成通常需要的与集合相关的功能. 在此过程中,将演示并简要说明使用Java Streams的几个关键方面. 请注意, ...

  6. JDK 8中的流驱动的集合功能

    这篇文章介绍了JDK 8的应用–引入了带有集合的 流 ,以更简洁地完成通常需要的与集合相关的功能. 在此过程中,将演示并简要说明使用Java Streams的几个关键方面. 请注意,尽管JDK 8 S ...

  7. 自由天空综合驱动包集合

    SkyDriverXP v11.1(自由天空综合驱动包) 增强安装版 e驱动v5.11 Final(WinXP专版) http://www.xp510.com/soft/ossoft/Drivers/ ...

  8. Selenium+WebDriver 各浏览器驱动下载与版本对应

    一.chromedriver要与chrome版本对应 chromedriver与chrome浏览器版本对应表(记得就会更新): chromedriver版本 支持的Chrome版本 v2.36 v64 ...

  9. selenium的webdrive驱动安装(谷歌浏览器)

    文章目录 selenium的webdrive驱动安装(谷歌浏览器) selenium测试报错,显示为webdrive驱动问题 一运行程序就 !闪频 ! 闪退 ! 解决方法 1. 重新安装相对应版本的w ...

最新文章

  1. 数据产品--浅析如何搭建维度指标系统
  2. 图像格式jpg、jpeg、jpe、gif、png、png等有何不同?ps中那种图片格式可以保留图层?
  3. 4.4 VGG CNN、tensorflow实现——python实战
  4. Win11系统的显卡驱动安装的详细方法步骤
  5. 在浏览器输入localhost:3000显示需要新应用打开此localhost原因
  6. Linux8 搭建缓存DNS服务器
  7. 服务器系统管理维护,服务器操作系统的管理维护
  8. 前端开发的流程与规范
  9. 自由浏览器 android,百度浏览器发布安卓6.1版 趣味视频弹幕吐槽不停
  10. 拖延、迷茫、无力感,就到此为止吧!
  11. 【webrtc】fdk-aac 编解码库cmake和 gn编译
  12. Matlab中将行向量转为列向量的方法
  13. 简易付安装后无法使用
  14. 【AutoGPT】LangChain 快速入门指南(中文版)
  15. 压缩包密码破解器......含我本人购买的注册码,不注册用不了.分享!!
  16. 报错:from .. import deform_conv_cuda
  17. 汇聚瞩目 耀然开启!DTC2022第二届数字孪生城市建设与产业发展高峰论坛
  18. In-place Sorting
  19. cadlisp点选面积标注_求帮忙实现 批量框选图形 标注面积 (注意不是点选)
  20. 测量磁场强度的九大方法

热门文章

  1. 如何解决change事件只触发一次?
  2. python基本操作知识_python 入门基本知识
  3. contextmenu样式 wpf_WPF ContextMenu设计。如何在WPF MenuItem中设置背景?
  4. When AWGN-based Denoiser Meets Real Noises
  5. web标准中的网页:结构层、表现层、行为层
  6. MatLab-----GUI之菜单栏
  7. Python先生,你好!(2)——对数据进行标准化处理
  8. 走进C++11(三十七)原子操作之 std::atomic
  9. 常见的外链建设方法有哪些?
  10. 项目搭建后启动时无法自动打开浏览器 Your application is running here: