继续学习python
相信你通过之前的教程已经开始了编程语言的学习,虽然学的是bdd,但是对于python的基本知识还是需要掌握的,不用等到学习完再开始bdd的正式实习和实践,但是不开始也是万万不行的
我使用的是https://www.w3schools.com/,是我觉得最容易上手的网站。
我当时的进度是这样的,属于废人水平,出发半生,归来仍是零基础
但是有了目标,学习就会有奔头,在copy同事代码的同时,不要忘了继续完成目标哦
圆规正转
目前能看到同事的代码了,但是有很多文件夹和目录需要搞清楚。
这里给一些tips
常用目录结构
- 项目目录下创建一个名为"features"的目录(这个目录名称是随意的),可以在这个目录下定义所有behave的文件结构。
- 在features目录下创建一个".feature"文件,这是一种叫作"Gherkin"语言。“.feature"文件有两个用途:文档和自动化测试,在”.feature"里编写测试场景。
- feature文件中具体实现是通过此项目下的steps目录里的“.py”文件实现所有的Scenario的步骤。steps目录名是确定的不能改变的,但是里面的py文件名是随意的。
- "environment.py"中定义操作前和操作后的前置条件和后置条件,和“.feature”文件、steps目录并列在同一目录下,且它的名称必须是environment.py。
Gherkin文件语法介绍
- Feature:每一个.feature文件必须以关键字Feature开始,Feature关键字之后可以添加该feature的描述
- Scenario:一个feature可以包含多个Scenario,每一个Scenario都是一个独立可执行的Test
case,每个Scenario就是该feature的一个测试场景。 - Given、When、Then、And和But:Scenario中的step
-
Given:指测试所需要的前提条件
-
When:触发被测试件的执行步骤
-
Then:执行步骤所期待的结果
-
And:用来连接Given的多个条件,When的多个步骤,或者Then的多个期待结果
- Background:将.feature文件中多个scenario的公共step单独列出来。Background必须置于所有scenario之前。在运行时,Background中的步骤会和之前一样在每个scenario起始处被执行。Background关键字并不是必选项,它的存在是为了增加scenario的可读性。
- Scenario Outline 和 Examples: 数据驱动进行测试,可以采用二者进行配合,不能单独使用。
- tags:执行用于标记Feature、Scenario或Scenario Outlook,可以选择性的只执行被标记的。如果执行"Weaker opponent"的case,可以选择执行"behave --tags=slow"来执行。
steps中方法实现
-
在steps文件夹中的".py"文件编写相应的实现方法。
参数可以通过{}来传递,如上面的{baidu} 在py文件中每个步骤下的函数内第一个参数是context,它是Feature或Scenario的实例化,可以用来传递信息。 text文本在behave中为多行“”“格式,如下方的显示,在方法实现中为"context.text"
table数据是steps中可以通过变量方式调用{x},也可以通过"context.table" 方式来获得table的值
environment.py-操作前和操作后的前置条件和后置条件配置
- before_step(context, step)和after_step(context, step),每一步之前和之后运行
- before_scenario(context, scenario)和after_scenario(context,
scenario),每个场景运行之前和之后运行 before_feature(context,
feature)和after_feature(context, feature),每个feature文件执行之前和之后运行 - before_tag(context, tag)和after_tag(context, tag),每个标签调用之前和之后运行
- before_all(context)和after_all(context),整个behave之前和之后运行
学习的相关文档:
看到这里你一定很迷茫又很失望,想着这个人之前的画风不是这样的啊,我关注你就是为了看你扯犊子的,但是学习本来就是有一些枯燥的事情,读杂志也不能只看后面的数独和笑话。
照着上面的教程对照着自动化文件的结构对照,或者看看公司同事的wiki,什么都急不来哦加油!