当前位置: 首页 > news >正文

网站的icon图标做多大/如何在百度推广自己的产品

网站的icon图标做多大,如何在百度推广自己的产品,苹果网站用什么做的吗,上海seo整站优化本人学习的时候基本上是按照behave的tutorial教程一步步学习的,这篇文章就当Behave教程的翻译版吧(*^__^*) 嘻嘻……。 1 安装behave 安装好python后,使用 pip install behave命令安装behave ------ behave的官方网站: http://pyth…

本人学习的时候基本上是按照behave的tutorial教程一步步学习的,这篇文章就当Behave教程的翻译版吧(*^__^*) 嘻嘻……。

1         安装behave

         安装好python后,使用 pip install behave命令安装behave  

      ------ behave的官方网站: http://pythonhosted.org/behave/

2         一个简单的实例

新建下面几个文件,文件结构如下

                  firstCase

                  firstCase/wordcheck.feature

                  firstCase/steps

                  firstCase/steps/wordcheck.py

wordcheck.feature的内容如下:

Feature: word check
Scenario: Check letters
Given I have a letter y
When I input letter y
Then the inputed letter is Equal with y

wordcheck.py内容如下:

__author__ = 'helen'
from behave import *

@Given('I have a letter')
def step_impl(context):
pass

@When('I input letter {letter}')
def step_impl(context,letter):
context.letter = letter

@Then('the inputed letter is Equal with {TargetLetter}')
def step_impl(context,TargetLetter):
assert context.letter is context.TargetLetter

完成这两个文件,我们的第一个case就完成了,下面通过cmd命令来执行它。

第一次运行,结果如下,说没有TargetLetter参数。

 

检查了wordcheck.py,发现@Then的部份忘记给TargetLetter赋值了,加上红框部份。

 

第二次运行,执行通过,如下图所示:

 

 

就这样,一个简单的实例就完成了,是不是好简单(*^__^*) 嘻嘻……

 

3         features文件夹

我上面写的例子中的 “firstCase” 文件夹就相当于现在说的features文件夹。

下面简单说一下.feature和.py文件:

1)         .feature文件是用于编写测试场,你可以把各种场景和数据写在里面,支持中文;

2)         .py文件就是根据你写的测试场景和数据来执行测试。

3)         最好.feature文件与.py文件一一对应。

 

如官网教程所说,简单点的项目文件结构如下:

features/

features/everything.feature

features/steps/

features/steps/steps.py

         复杂一点的结构如下:

features/
features/signup.feature
features/login.feature
features/account_details.feature
features/environment.py
features/steps/
features/steps/website.py
features/steps/utils.py

4         .feature文件介绍

一个.feature文件里可以写多个Scenario,如下所示:

Feature: comparison
Scenario: comparison two words
Given I have two words
When input a and a
Then two words Equal

Scenario: comparison two numbers
Given I have two numbers
When I input number1 3 and number2 2
Then the first number big then the last number

下面对这些关键词做一些简单的解析:

1)         Feature:功能名称

2)         Scenario:场景名称

3)         Given:给出测试前提条件;

4)         when:相当我们的测试步骤;

5)         Then:给出期望结果

有一个值得注意的是,你可以把“And”或“But”加到这些步骤中,如下:

Feature: word check
Scenario: Check letters
Given I have a letter
When I input letter y
But I just want to show the key word "But"
Then the inputed letter is Equal with y
And continue to next case

但是要注意,你在.py中要写入相应的步骤处理方法,如下图所示,你要加入“When I just want to show the key word "But"”和“Then continue to next case”相对应的方法,

 

 

4.1  Scenario Outlines

在测试同一个场景时,很多时候我们需要输入各种各样的数据来验证不同的结果输出,这时我们用Scenario Outlines就可以实现了。如下图分别输大小写字母来验证场景

Feature: word check
Scenario Outline: Check letters
Given I have a letter
When I input letter <keyword>
Then the inputed letter is Equal with <targetword>

Examples: Lowercase letters
|keyword|targetword|
|
a      |a         |
|
b      |b         |

Examples:
Capital letters
|keyword|targetword|
|
F      |F         |
|
D      |D         |

执行结果如下:

 

 

4.2  在场景中添加注释

在场景中,你可以通过"""来输出更多注释信息,这些注释会成为Context的“.text”属性值,如下图分别在Given\When\Then中加入注释:

Feature: word check
Scenario : show notes
Given I want to show some notes
"""
This is Given Notes
"""
When just want to show some notes
"""
This is When notes
"""
Then there is a word "Then" in the attribute ".text"
"""
This is Then notes
"""

然后在py文件中,我们最后判断"Then"是否存在Context.text中,如下代码:

__author__ = 'helen'
from behave import *

@Given('I want to show some notes')
def step_impl(context):
pass

@When('just want to show some notes')
def step_impl(context):
pass

@Then('there is a word "Then" in the attribute ".text"')
def step_impl(context):
assert context.text.find("Then")

最后执行通过,执行结果如下,在结果中输出了注释:

 

 

4.3  使用table

跟上面的context.text一样,在场景中可以一个表格作为context.table属性值,如下图在Given中加入表格:

Feature: show the table
Scenario: some scenario
Given a set of specific users
| name      | department  |
|
Barry     | Beer Cans   |
|
Pudey     | Silly Walks |
|
Two-Lumps | Silly Walks |

When
we count the number of people in each department
Then we will find two people in "Silly Walks"
But we will find one person in "Beer Cans"

 

 

 

 

 

6         Environment.py

Environment.py是个非常重要的文件,放在feature文件夹下,与.feature文件并列。下面是Environment.py中定义的一些方法:

before_step(context, step), after_step(context, step)

These run before and after every step.

before_scenario(context, scenario), after_scenario(context, scenario)

These run before and after each scenario is run.

before_feature(context, feature), after_feature(context, feature)

These run before and after each feature file is exercised.

before_tag(context, tag), after_tag(context, tag)

These run before and after a section tagged with the given name. They are invoked for each tag encountered in the order they’re found in the feature file. See controlling things with tags.

before_all(context), after_all(context)

These run before and after the whole shooting match.

         下面是一个简单的例子,大家可以根据自己的需要定义方法:

# coding:utf-8
__author__ = 'helen'
import sys
from behave import *
from selenium import webdriver

# 开始测试前,定义系统编码为utf-8
def before_all(context):
reload(sys)
sys.setdefaultencoding('utf-8')

def before_feature(context):
context.driver = webdriver.Firefox()

def after_feature(context):
context.driver.quit()

 

7         通过标签tag来控制测试执行

标签以@开头,如下示例:

Feature: find a look
@valid
Scenario: look up a book
Given I search for a valid book
Then the result page will include "success"

@invalid
Scenario: look up an invalid book
Given I search for a invalid book
Then the result page will include "failure"

执行的时候在behave 后面加上tag 标签即可,如我只测试“valid”这个场景,那么就输入“behave --tags=valid”,执行如下图所示,一个场景跳过忽略:

 

 

如果你想执行若干个不同标签的场景,你可以这么写“behave --tags=valid,invalid”;

如果你想执行除了@invalid外的所有场景,你可以这么写“behave --tags=-invalid”;

如果你要执行标签包含了 “valid”和“invalid”两个签标的场景,你可以这么写“behave --tags=valid --tags=invalid”

当然,tags在py文件中也起作用,例如

def before_feature(context):
if 'browser' in feature.tags:
context.driver = webdriver.Firefox()

def after_feature(context):
if 'browser' in feature.tags:
context.driver.quit()

 

转载于:https://www.cnblogs.com/helenMemery/p/6429492.html

http://www.jmfq.cn/news/5036329.html

相关文章:

  • 网页设计与制作实训报告制作内容/搜索引擎优化理解
  • 北京手机网站制作/东莞seo建站咨询
  • 网站开发和推广的不同/推广工具有哪些
  • 114黄页公司/百度爱采购优化软件
  • 网站色调选择/湖南平台网站建设设计
  • 福建省网站建设/友情链接检测
  • 可以做动画的网站有哪些/seo顾问服务公司
  • 网站制作基础教程/随机关键词生成器
  • 简易手机站/统计网站访问量
  • php做的一个网站/海外seo是什么
  • 无锡网站建设 微信/私域运营软件
  • 模板展示网站源码/网站排名查询工具有哪些
  • seo官网优化/郑州seo优化顾问
  • 免费com网站域名注册/18款禁用看奶app入口
  • 专做网站/八大营销模式有哪几种
  • 广西防城港建设厅网站/网站开发培训
  • eclipse 网站开发/石家庄seo顾问
  • 公司做网站的/宁波网站推广哪家公司好
  • 网站监测/免费发布广告
  • 网站建设需要哪些人/怎么做一个公司网站
  • 攀枝花网站开发/免费建站系统哪个好用吗
  • 新品发布会的目的和意义/宁波抖音seo搜索优化软件
  • asp.net网站备份/网络营销相关的岗位有哪些
  • 可不可以用帝国cms做企业网站/seo咨询河北
  • 易语言怎么做点击按钮打开网站/seo主要做什么工作内容
  • 自己做的网站给人攻击了怎么办/南京做网站的公司
  • 织梦系统网站搭建教程/sem优化怎么做
  • 厦门 外贸商城网站制作/seo云优化软件
  • 建设海外网站/互联网优化是什么意思
  • vip解析网站怎么做的/推广网站要注意什么