编写背景:
测试组团队经过1年多的实战,测试工作流程及规范大家都已经明白并能很好的完成每个月的测试任务;下半年要向工作质量和工作效率迈上一个台阶,需要发挥大家的力量;自动化测试脚本编写这几个月在测试任务中让大家感受了一把;大家都认识到,要想让这些自动化测试脚本能高效的维护、使用,让新人和老人更容易的明白这些代码,我们需要一个自动化测试脚本编写的规范。
经过大家的努力,得出了这么个初稿,放在这里和大家交流交流,希望有经验的同行能给些建议。
一、命名规范
1.1 全体
1. 原则上不使用单词的省略词。
2. 对于作用域小的循环变量,以i, j, k这样的名字顺序使用。
3. 对于作用域小的变量名,可以使用类名的省略语。 (例: eo = ExampleObject.new)
1.2 类名和模块名
类以及模块名、各单词的每头一个字母大写,不要使用“_”下划线等分隔符。但是,像HTTP这样的通用缩略语,全都照样大写。名称好使用“名词”或者“形容词+名词”
正例:
OtherClass
HTTPClient
误例:
Other_Class
OTHERCLASS
HttpClient
HTTPclient
HTTP_Client
1.3 方法名
方法名全都小写、各个单词之间用“_”分隔。方法名中使用“动词”或者“动词+名词”
正例:
add_something
误例:
addsSomething
Add_Something
返回真假值的方法的命名,在动词或形容词后追加“?”,对形容词,不用添加“is_”。
正例:
visible?
误例:
is_visible
is_visible?
另外,在使用具有破坏性和非破坏性的方法时候,要在破坏性的方法名后追加“!”。
例:
split
split! # 具有破坏性的split
1.4 常数名
类和模块名以外的常数名,全都用大写,单词之间用“_”来分隔。
例:
EXAMPLE_CONSTANT
1.5 变量名
对于变量名,全都用小写,单词之间用“_”来分隔。全局变量以$开头,实例变量以@开头,类变量以2个@开头。
例:
tmp
local_variable
@instance_variable
$global_variable
@@class_variable
变量名称要能清晰表达该变量的含义,如order_state,记录订单的状态
1.6 文件名
文件名全都使用小写字母,单词之间用“_”来分隔。另外,可以把文件中的已经变换的主要类名作为文件名来使用。
例:
foo.rb # 定义了类Foo
foo_bar.rb # 定义了类FooBar