《Java接口自动化测试项目构建规范》由会员分享,可在线阅读,更多相关《Java接口自动化测试项目构建规范(22页珍藏版)》请在金锄头文库上搜索。
1、java 接口自动化测试项目构建规范接口自动化测试项目构建规范概要概要:本文档旨在指导说明如何基于 eclipse+maven 构建 Java 接口自动化测试项目,并遵循相关 规范说明,各 Java 接口自动化测试项目需按此规范执行基本要求基本要求1)JDK:JDK1.8 svn:/ 2)git 客户端 svn:/ 3)Eclipse:相关插件 testNG、maven 等已安装配置好 svn:/ 4)构建 Java 项目编码要求:统一使用 UTF-8 编码 5)所有项目源码使用 teamcode 管理Teamcode 操作及最佳实践操作及最佳实践git clone ssh:/yourUser
2、N:29418/fangdd/engineering/teamcode & scp -p -P 29418 yourUserN:hooks/commit-msg teamcode/.git/hooks/clone 后可参考 specs 目录下 teamcode-workflow.md 与 teamcode-best-practice.md 说明Maven 基本配置基本配置maven环境配置.ppttestNG 测试框架介绍及使用测试框架介绍及使用TestNG介绍.ppt构建步骤说明构建步骤说明1 1)新建新建 JavaJava mavenmaven 项目,如下图所示,点击新建项目,如下图所示,
3、点击新建2 2、弹窗中选择新建、弹窗中选择新建 JavaJava mavenmaven 项目,如下图所示,下一步项目,如下图所示,下一步3、修改、修改 workspace 路径为路径为 Eclipse workspace 路径,如下如所示,下一步路径,如下如所示,下一步4、选择类别,如下图所示,下一步、选择类别,如下图所示,下一步5、输入相关信息,完成、输入相关信息,完成groupId 统一为 com.fangdd.qaartifactId 为 java 项目名,自定义,如 agent-service-testversion 默认package 统一为 com.fangdd6、 Java 项目
4、建好后修改项目编码项目建好后修改项目编码 选中项目右键,选择如下箭头所指修改项目编码为 UTF-87、选中项目右键,新建、选中项目右键,新建 package,选择如下箭头所指,选择如下箭头所指8、输入如下图所示,完成、输入如下图所示,完成9、更改项目、更改项目 buildpath,选中项目右键,选择如下图所示,选中项目右键,选择如下图所示10、弹框中切换至、弹框中切换至 source11、点击、点击 Add Folder,弹框中勾选,弹框中勾选 resources,如下图所示,如下图所示,OK项目建好后基本结构如下,将默认的项目建好后基本结构如下,将默认的 App.java 与与 AppTes
5、t.java 删除删除 后续相关配置文件均存放至后续相关配置文件均存放至 resources 目录下目录下12、从从 代码库代码库 clone 出出 agent-service-test 项目项目(确保本机已安装及配置确保本机已安装及配置 好好 git 相关配置相关配置)(作为后续新建项目作为后续新建项目 demo 参考参考) git clone ssh:/yourUserN:29418/fangdd/testcode/agent-service-test & scp -p -P 29418 yourUserN:hooks/commit-msg agent-service- test/.gi
6、t/hooks/13、配置新建项目配置新建项目 1)重命名新建项目 pom.xml 文件为 pom-back.xml,重命名操作如下图所示2)复制 agent-service-test 中 pom.xml 及.gitignore 文件至新建项目根目录3)修改 pom.xml 中artifactId 与 name 配置,与pom-back.xml 对应配置保持一致,如下红框所示内容4)修改后变为如下图所示5)覆盖完成后即可删除 pom-back.xml 文件 6)拷贝 agent-service-test 下 src/main/resources 目录下资源文件至新建项目 src/main/re
7、sources 目录(可根据自身项目需要增加、修改或删除配置),如下图红框所示Server.properties:主要配置工具类的基础配置,也可将自身项目测试的相关配置也配置在 该文件中,如被测系统 ip、port 等配置信息 Db.properties:主要配置数据库连接信息,测试项目有需要操作数据库的,可将相关配置信 息配置在此文件中 log4j.properties:主要配置日志相关配置信息,基本不用修 7)同时需要将相关 properties 配置文件编码做修改,选中某配置文件,右键菜单选择如下图 所示8)弹窗中修改编码为 UTF-8,点击 OK 即可(OK 后如有提示弹窗,选择 ye
8、s)14、在在 src/main/java 目录及目录及 src/test/java 新建相关新建相关 package,我们目前测试代码的结构主,我们目前测试代码的结构主 要包括两部分,处理逻辑的要包括两部分,处理逻辑的 action 与与 action 对应的对应的 testcase(可根据项目情况自定义可根据项目情况自定义),故此,故此, 需要新建两个需要新建两个 package,testcase 的的 package 需建在需建在 src/test/java 下下 Package 命名规范:Action package(被测试类 package): com.fangdd.项目名.acti
9、onTestcase package(测试类 package,与被测试类 package 保持一致): com.fangdd.项目名.action以 agent 项目为例: Action package(被测试类 package): com.fangdd. agent.actionTestcase package(测试类 package,与被测试类 package 保持一致): com.fangdd. agent.action如需其他 package,根据自身项目需要自定义15、最终项目完成后目录结构如下:、最终项目完成后目录结构如下:附录:规范要求及说明附录:规范要求及说明1、所有配置文件,
10、除 pom.xml、.gitignore 外,均放在 src/main/resources 目录 2、package 命名:字母全部小写,例 com.fangdd.agent.action,testcase 的的 package 需建在需建在 src/test/java 下下 Package 命名规范:Action package(被测试类 package): com.fangdd.项目名.actionTestcase package(测试类 package,与被测试类 package 保持一致): com.fangdd.项目名.action以 agent 项目为例: Action packa
11、ge(被测试类 package): com.fangdd. agent.actionTestcase package(测试类 package,与被测试类 package 保持一致): com.fangdd. agent.action如需其他 package,根据自身项目需要自定义 3、被测试类命名:首字母大写,例 MyStoreAction4、测试类命名:首字母大写,与对应被测试类名对应,并加上 Test 后缀,例MyStoreActionTest(采用驼峰命名方式)5、被测试方法命名,首字母小写,例insertStoreProject6、测试方法命名,首字母小写,与对应被测试方法名对应,并加
12、上test 前缀,例testInsertStoreProject(采用小驼峰命名方式)7、TestCase 中测试方法均需有 Assert 断言,且在断言失败时需返回失败说明,例:8、有异常捕获的代码,需抛出自定义 BusinessException 异常,便于 testNG 测试框架捕获异常信息并在测试报告中反馈出来 例如:创建 thrift client,可能有异常,需抛出例如:thrift 接口调用逻辑代码,可能有异常,需抛出例如:HTTP 调用接口逻辑代码,后台返回 HTTP status code 非 200,抛出异常9、项目 pom 中添加如下 dependency 依赖11、po
13、m 中关键配置说明 1)properties 属性定义2)profiles 配置,通过此配置可以实现不同环境动态加载对应环境配置文件,如 10.0.1.76 与 10.0.4.104 测试环境切换执行,在 maven 命令行增加-P 参数即可例:clean test -Ptest104 -U3)resources 配置,配合 profiles 配置,实现不同环境动态加载对应环境配置文件4)pluginRepositories 配置,指定要使用的 maven 插件下载地址5)maven-clean-plugin 指定 maven clean 命令清理目录6)maven-surefire-plugin 指定 testng 配置路径并执行测试7)testng-xslt-plugin 美化 testNG HTML 报告8)common-util-plugin 执行 ExecSend 触发钉钉 push 通知,并生成邮件文件内容,执行mail 发送邮件通知