selenium与Behave结合
今天跟大家一起聊聊selenium与Behave结合使用;
Behavior:行为驱动开发(或BDD)是一种敏捷的软件开发技术,它鼓励开发人员、QA和软件项目中的非技术或业务参与者之间的协作。
Behave详细解释后期再聊,本次主要讲UI驱动测试开发;
我们试想一下,当产品提出一个需求,比如在百度搜索Behave,并验证“找到相关结果”在元素“div.nums”值中;
我们所需要的测试步骤有:
1、打开浏览器、输入百度地址
2、输入Behave,点击“百度一下”
3、验证“找到相关结果”在元素“div.nums”值中
首页创建Behave目录结构
第一步:现在我们要把以上的操作转换到Behave框架中all.feature文件,features文件是由一种叫Gherkin的语言编写;
feature文件代码结构,如下所示:
Feature: comparison 【Feature:功能名称】
Scenario: comparison two words 【Scenario:场景名称】
Given I have two words 【Given:给出测试前提条件】
When input a and a 【when:相当我们的测试步骤;】
Then two words Equal 【Then:给出期望结果】
即:
Feature: 在百度搜索Behave,并验证“找到相关结果”在元素“div.nums”
Scenario: 在百度搜索Behave,并验证“找到相关结果”在元素“div.nums”
Given 启动浏览器进入百度页面
When 输入Behave并点击“百度一下”
Then 验证“找到相关结果”在元素“div.nums”值中
第二步:在Util包中封装selenium,对页面操作各种方法;比如:启动浏览器、点击、输入、获取元素值 等等;
第三步:
在steps下面新建一个py文件就是根据你写的测试场景和数据来执行测试。详情如下:
第四步:在项目的根目录下输入behave回车,即可成功运行代码;
注释:当执行behave命令时,它会寻找至少一个feature文件,根据feature文件步骤去执行steps目录下py文件。(.feature文件与.py文件最好一一对应)