自动化脚本编码规范Word格式文档下载.docx

上传人:b****1 文档编号:3441591 上传时间:2023-05-01 格式:DOCX 页数:15 大小:22.46KB
下载 相关 举报
自动化脚本编码规范Word格式文档下载.docx_第1页
第1页 / 共15页
自动化脚本编码规范Word格式文档下载.docx_第2页
第2页 / 共15页
自动化脚本编码规范Word格式文档下载.docx_第3页
第3页 / 共15页
自动化脚本编码规范Word格式文档下载.docx_第4页
第4页 / 共15页
自动化脚本编码规范Word格式文档下载.docx_第5页
第5页 / 共15页
自动化脚本编码规范Word格式文档下载.docx_第6页
第6页 / 共15页
自动化脚本编码规范Word格式文档下载.docx_第7页
第7页 / 共15页
自动化脚本编码规范Word格式文档下载.docx_第8页
第8页 / 共15页
自动化脚本编码规范Word格式文档下载.docx_第9页
第9页 / 共15页
自动化脚本编码规范Word格式文档下载.docx_第10页
第10页 / 共15页
自动化脚本编码规范Word格式文档下载.docx_第11页
第11页 / 共15页
自动化脚本编码规范Word格式文档下载.docx_第12页
第12页 / 共15页
自动化脚本编码规范Word格式文档下载.docx_第13页
第13页 / 共15页
自动化脚本编码规范Word格式文档下载.docx_第14页
第14页 / 共15页
自动化脚本编码规范Word格式文档下载.docx_第15页
第15页 / 共15页
亲,该文档总共15页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

自动化脚本编码规范Word格式文档下载.docx

《自动化脚本编码规范Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《自动化脚本编码规范Word格式文档下载.docx(15页珍藏版)》请在冰点文库上搜索。

自动化脚本编码规范Word格式文档下载.docx

王春生

邮箱

chunsheng.wang@alibaba-wwccss@

历史

创建于2006-08-1110:

22,最后修改于2008-07-0816:

29

●本规范的目的是让保证team成员编码的统一。

●本规范的核心规则就是驼峰方式的命名规则。

●此规范必要时可以打破。

一、PHP命名规则

1.1变量命名

●采用驼峰方式。

首字母小写,后面的字母按照大小写间隔的方式加以区分,比如userName,serviceID

●如果有单词缩写,则采用大写形式。

如:

PID。

●应该避免大写的单词在一起,因为无法直接判断单词的分割,比如IMGFile,应该写成imgFile。

●类名,类的属性命名规则与此相同。

●数据库、表、字段的命名规则与此相同。

●SQL查询语句中关键词使用大写。

 

比如:

SELECT*FROMuserListWHERE

1.2常量命名

●采用大写单词与下划线间隔的方式,比如IMATCH_DISPATCHER_API。

1.3函数命名

●采用驼峰方式,动词加名词,动词小写,后面的名词用大小写间隔。

getAdInfo()

●如果需要,可以增加小写的前缀,这时动词则大写开始。

imGetAdInfo()

●类的方法命名规则与此相同,不过类的方法一般不需要增加前缀了。

1.4目录文件命名

●目录和文件一般采用小写的格式,尽量使用两个以内的单词表达。

●不建议使用下划线间隔的方式。

但如果目录或者文件名过长,无法使用少量单词表达时,应当使用下划线。

●不建议使用大写字母,但如果要表达的名称是大家约定俗称的,应尊重旧有的习惯。

二、PHP脚本文件的构成及注释

●每个文件按照以下顺序排列:

功能说明部分、包含声明部分、具体的业务逻辑、自定义函数部分。

●注释按照phpdoc的标准进行,这样可以和c++程序统一起来。

http:

//manual.phpdoc.org/HTMLSmartyConverter/HandS/phpDocumentor/tutorial_phpDocumentor.pkg.html

2.1功能说明部分

在每一个文件的开头部分,要包含这个程序的简要说明、详细说明以及作者和最后修改时间。

注释采用phpdoc的注释方式。

<

?

/**

*iMatch监控程序(简单注释)

*

*此脚本程序用来监控iMatch所建索引的完整性、一致性、正确性。

(详细说明,可选。

)。

*@authorwangcs<

chunsheng.wang@alibaba-,wwccss@>

*@version$Id$

*/

>

说明:

●详细说明部分是可选的,如果某个文件的逻辑比较复杂,可以在详细说明部分加以解释。

●其中的$Id$会被自动替换成subverion的相应信息,其中包含文件名、日期、修改者等信息。

在每个文档的开头部分包含此程序所用到的包含文件。

include'

init.php'

;

func/common.php'

2.3具体的业务逻辑

●注释的原则是将问题解释清楚,并不是越多越好。

●若干语句作为一个逻辑代码块,这个块的注释可以使用/**/方式。

●具体到某一个语句的注释,可以使用行尾注释:

//或者#,但应当保持风格一致。

/*生成配置文件、数据文件。

*/

$this->

setConfig();

createConfigFile();

clearCache();

#清除缓存文件。

createDataFiles();

//生成数据文件。

prepareProxys();

restart();

●如果当前PHP脚本需要定义一个函数,则在文件尾部声明。

●凡有两个以上文件用到的函数,应将其定义在一个公共的函数库文件中。

比如function.php中。

●自定义函数需包含以下几个部分:

函数功能描述、函数参数说明、返回值说明。

示例:

*数据库连接函数(简单说明)

*通过这个函数链接到数据库,并返回相信的链接标识符。

(详细的说明)

*@authorwangcs<

chunsheng.wang@alibaba-,wwccss@>

*@globalstring数据库服务器(全局变量声明,无需指定变量名,顺序对应)

*@paramstring$SQL连接成功以后执行的查询语句,默认为空。

(变量声明)

*@returnarray返回数据库连接信息。

(返回值说明)

functiondbConnect($SQL="

"

{

global$mysql;

xxxx;

xxxx;

}

●如果函数功能比较简单,也可以采用一句话注释的方式,来说明此函数的作用,省略参数的说明。

php

/*清楚缓存文件(一句话说明,省略了参数的说明)*/

functionclearCache()

{

if(!

clearCache)return;

system("

mdbm_trunc-f$this->

dataRoot"

.'

cache.mdbm>

/dev/null'

);

defCaches.mdbm>

examinedb.mdbm>

}

2.5类的注释方式

*AdDispatcher测试的基本类文件。

(类的基本说明)

*@authorchunsheng.wang<

chunsheng.wang@alibaba->

/*AdDispatcher类。

classaddisp

var$binRoot;

#addisp运行的根目录。

var$dataRoot;

#addisp数据文件所在的目录。

var$configFile;

#addisp的配置文件。

/*构造函数,初始化各个变量。

functionaddisp($clearCache=true)

global$CFG;

/*设置基本的参数。

$this->

binRoot=$CFG['

binRoot'

];

dataRoot=$this->

binRoot.'

data/'

/*生成配置文件、数据文件。

……

●大括号分成两列书写,理由是可以方便的界定大括号的范围。

●缩进采用四个空格,不使用Tab键进行缩进。

●操作符前后应该有空格,比如$userName='

wangcs'

●同一逻辑代码块的代码操作符应当尽量对齐,这样可以方便阅读与修改。

$userName='

$userAddress='

hangzhou'

四、MMT测试脚本约定

通常来讲,某一个系统模块的测试脚本可以由下面几种类型的文件构成:

●与模块交互的api定义文件,一般是一个类文件,里面定义了与该模块交互的各种方法。

●该模块相应的配置文件,里面定义了若干参数变量。

●具体某一个测试用例的入口文件,一般我们把它定义为case.php,该文件继承自上述的类,调用该类的方法与模块进行交互,以完成某一个测试用例的各个步骤。

●具体某一个测试用例的数据文件,这和你测试的模块相关。

●辅助的一些工具,比如控制模块的启动、停止等。

●按照模块通常的约定名称在svn里面建立一个目录。

比如叫做AdDispatcher

●在该目录下面有如下的文件和目录:

⏹addisp.class.phpAdDispatcher的api定义文件。

⏹config.php测试脚本的配置文件。

⏹10_nationbroadcat/第一组用例的目录。

◆01_cpc第一组的第一个用例的目录。

●case.php第一个用例的入口文件。

●data第一个用例的数据文件。

◆02_cpc第二个用例的目录。

⏹20_binddomain/第二组用例。

⏹30_querytype/第三组用例。

⏹40_precheck/第四组用例。

⏹50_icast/第五组用例。

●上述的例子只是一个例子,具体的应该根据所测模块的实际情况而定。

●某一组用例建议放在一个目录下面,前面通过数字来保证排序。

数字有间隔,以便后续可以插入新的用例分组。

●如果某一个模块的测试脚本构成比较简单,可以不用采取分组的格式,统一将其放在cases目录下面,比如:

moduleA

⏹module.class.php

⏹config.php

⏹cases

◆01_cpc.php

◆02_cpc.php

◆10_cpt.php

●如果在一个模块的测试脚本中需要用到另外一个模块的测试脚本,可以通过在Makefile中写入一句svnexport命令来完成:

svnexport

这样只需要执行make命令,就可以把相应的脚本导出到指定的目录下面。

●如果在测试过程中涉及到接口方面的数据,可以考虑使用ini格式的文件。

php解析起来非常的方便,维护起来也方便:

[query1]

queryType=6

url=

title=title

keyword=鲜花

pid=mm_10000505_990_188598

ip=10.62.0.112

五、XHTML代码规范

5.1样式表的引用

●样式表通过外部引用的方式调用,不建议在页面中新定义样式。

●页面元素中的展现形式不建议通过html代码进行定义,都统一使用样式表进行。

比如要显示红色字体,用Html代码可以这样进行定义:

fontclolor=”red”>

红色字体<

/font>

但最好的方法是通过样式表来定义。

spanclass=”redtext”>

红色字段<

/span>

●将对网站样式的定义集中到一个样式表文件中去,如果对网站进行修改,可以很快进行。

而如果分散到各个网页文件中去,改动起来就非常麻烦了。

5.2缩进、换行约定

●网页代码的缩进使用两个空格。

因为网页嵌套标签可能比较多,所以使用四个空格进行缩进会导致最深层的代码缩进太多,因而使用两个空格进行缩进。

●如果一行中代码太长,请换行。

tr>

td>

inputtype=”text”name=”test”value=”test”class=”MyInput”onclick=”alert(‘test’)”>

/td>

/tr>

可以改成

●如果多行相似的代码出现,属性尽量对齐

inputtype="

hidden"

name="

ProjectID"

value="

{$ProjectID}"

/>

ModuleID"

{$ModuleID}"

BugID"

{$BugID}"

AssignedTo"

{$AssignedTo}"

type、name和value属性对齐以后阅读起来比较方便。

●对于某种标记的多个属性,其顺序尽量保持一致。

比如table标记的定义可以按照下面的顺序来定义。

tablewidth="

90%"

align="

center"

border="

0"

cellpadding="

1"

cellspacing="

class="

BgTable"

5.3书写规范

5.3.1所有的标记都必须要有一个相应的结束标记

以前在HTML中,你可以打开许多标签,例如<

p>

和<

li>

而不一定写对应的<

/p>

/li>

来关闭它们。

但在XHTML中这是不合法的。

XHTML要求有严谨的结构,所有标签必须关闭。

如果是单独不成对的标签,在标签最后加一个"

/"

来关闭它。

例如:

br/>

imgheight="

80"

alt="

网页设计师"

src="

../images/logo_w3cn_200x80.gif"

width="

200"

5.3.2所有标签的元素和属性的名字都必须使用小写

与HTML不一样,XHTML对大小写是敏感的,<

title>

TITLE>

是不同的标签。

XHTML要求所有的标签和属性的名字都必须使用小写。

例如:

BODY>

必须写成<

body>

大小写夹杂也是不被认可的,通常dreamweaver自动生成的属性名字"

onMouseOver"

也必须修改成"

onmouseover"

5.3.3所有的标记都必须合理嵌套

5.3.4所有的属性必须用引号"

括起来

在HTML中,你可以不需要给属性值加引号,但是在XHTML中,它们必须被加引号。

5.3.5给所有属性赋一个值

XHTML规定所有属性都必须有一个值,没有值的就重复本身。

tdnowrap>

<

checkbox"

shirt"

medium"

checked>

必须修改为:

tdnowrap="

nowrap"

checked="

checked"

5.4表单变量命名约定

表单中的变量命名采用PHP的命名方式,使用驼峰方式命名。

formname=”LoginForm”>

inputtype=”text”name=”userName”value=””/>

inputtype=”password”name=”password”value=””/>

/form>

六、JavaScript代码规范

6.1变量命名约定

由于JavaScript区分大小写,所以对变量进行命名的时候需要谨慎。

同时为了与php程序保持统一,JavaScript的变量命名也采用驼峰的形式。

6.2函数命名、注释约定

6.2.1函数命名采用动词+名词的形式,第一项首字母小写。

也可以增加前缀。

functioncheckUserName()

增加前缀的命名可以为:

functionsysCheckUserName()

6.2.2函数的注释沿用phpDoc的标准。

*Displaysanconfirmationboxbeformetosubmita"

DROP/DELETE/ALTER"

query.

*Thisfunctioniscalledwhileclickinglinks

*@authorwangcs<

wangcs@>

*@paramobjectlinkthelink

*@paramobjectsqlQuerythesqlquerytosubmit

*@returnbooleanwhethertorunthequeryornot

functionconfirmLink(link,sqlQuery)

6.3代码书写规范

●缩进约定:

缩进采用四个空格进行缩进。

●每一行都以”;

”结束。

●循环、逻辑判断中大括号都单独占一行。

●相邻几行代码中相似的部分尽量对齐。

*动态显示表格。

*@author王春生<

wwccss@>

*@paramintid表格编号。

*@paraminttotalCount表格总数。

functionshowTable(id,totalCount)

for(i=1;

i<

=totalCount;

i++)

if(I==ID)

else

●php脚本开始部分应当加上$Id$标签,这样svn会自动将其替换为最后的修改时间、版本和修改者。

在提交svn的时候,需要通过下面的语句设置文件的Id属性:

svnpropsetsvn:

keywordsId

●commit的时候一定要写注释,注释的内容必须是此版本的修改信息。

注释信息请按照下面的说明进行:

+表示新增功能

*表示修改功能

-表示删除的功能;

●+-*前后都有一个空格。

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 幼儿教育 > 育儿理论经验

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2