全称
Behavior-driven development
中文
行为驱动开发
概念
是敏捷软件开发技术的一种,鼓励各方人员在一个软件项目里交流合作,包括开发人员、测试人员和非技术人员或业务参与者。
BDD 一开始是由 Dan North 在 2003 年作为对 TDD 的回应而命名的。
是一种语法定义良好的计算机软件设计交流语言。业务人员是不懂技术的,Gherkin 使得业务、开发、测试以及其他利益相关人员减少对需产生歧义和误解。
Feature(功能):登录
Scenario(场景):非中国用户不能登录商旅系统
Given(假如):我持有一个未在系统中注册过的账号 luoshangyu
When(当):我输入用户名和密码
Then(那么):我将看到一个提示用户名或密码无效的页面
功能描述
用户具体使用的场景
场景大纲可以添加相应的变量
在某些特定代码执行之前运行
比如在一个 Feature 开始或之后执行
在一个 Scenario 开始或之后执行
在一个 Step 开始或之后执行
这里是在一个 feature 开始及之后执行的例子
工程结构
Step.py
中文
运行behave --lang-help zh-CN
查看支持的中文关键字
另外查看支持哪些语言,可以运行命令behave --lang-list
。(我运行的时候报错)
不过,也可以在 behave 的工程目录下查看i18n.py
文件。
Python3.4 要修改 behave 的runner.py
文件,增加字符编码utf-8
,否则不能正常运行。
问题如下
修复方法