多应用+插件架构,代码干净,二开方便,首家独创一键云编译技术,文档视频完善,免费商用码云13.8K 广告
[toc] 默认情况下,ReadyAPI 以单个 XML 文件来存储某个项目数据。当独自一人工作时,项目是方便管理的,但如果多个人同时编辑同一个项目,就可能会产生一些问题。为了更好的支持团队协作,将项目转换为 `Composite` (复合)项目,并分享项目到代码托管平台,如 `GitHub` 。ReadyAPI 支持从 `GitHub` 上直接导入项目。复合项目的数据被保存在多个文件中,因此可以多个人同时编辑项目(分别编辑不同的文件)。 # 复合项目 **新建** 将项目属性 *Composite Project* 设置为 true ,并保存该项目,可以将默认项目转换为复合项目。如有必要,请切换复合项目的版本。 **结构** ReadyAPI 复合项目的文件夹结构如下: <table class="aqTable" cellspacing="0" cellpadding="0"> <thead> <tr> <th class="aqTableHeader">内容</th> <th class="aqTableHeader">存储位置</th> </tr> </thead> <tbody> <tr> <td>API 定义</td> <td rowspan="4"> <p>单独的文件夹。</p> </td> </tr> <tr> <td>SoapUI 测试套件</td> </tr> <tr> <td>ServiceV 虚拟服务</td> </tr> <tr> <td>报告配置</td> </tr> <tr> <td>性能测试</td> <td rowspan="2"> <p>项目根文件夹。</p> </td> </tr> <tr> <td>项目属性</td> </tr> <tr> <td>安全测试</td> <td> <p>测试用例文件,或项目根文件夹。</p> <p><span><img src="https://support.smartbear.com/readyapi/docs/_assets/commonImages/pay-attention.gif" class="aqInlineImg"> 存储位置取决于复合项目的版本。</p> </td> </tr> </tbody> </table> **版本** 复合项目有两个版本:1.2 和 1.3 。修改项目属性 *Composite Project Format* 的值来切换复合项目的版本。 **1.3** 版本 ReadyAPI 将安全测试保存在项目根文件夹下的单个文件中。 >[warning]使用 1.3 版本(复合项目版本)前,确保所有团队成员的 ReadyAPI 软件版本高于 1.3 。1.2 版本(复合项目版本)则适用于任何 ReadyAPI 软件版本。 **1.2** 版本 ReadyAPI 将安全测试保存在测试用例文件中。 >[info]当您打开一个 1.2 版本格式的项目时,可以选择将其保存为 1.3 版本格式。 **兼容性** ...我是内容,看不见我... **UI 界面修改与文件修改的关系** 见[附录1](#appendix_1) # 集成 Git ReadyAPI 提供了 [Git](http://git-scm.com/) 插件,方便与团队中的其他人共享你的复合项目。 **要求** - 项目必须是一个复合项目。 - 需要专业版许可证才能分享项目。如果你没有许可证,可以在 SmartBear 官方网站或工具的 Help > License Manager 菜单申请 [专业版试用版](https://smartbear.com/product/ready-api/overview/#_ga=2.34698210.2117004648.1529914018-948303488.1528796554) 。 - 您的帐户必须能够访问要推送更改的代码仓库。 **使用插件** 插件 Wiki 介绍了插件的详细用法: - [将项目添加到 Git 仓库](https://github.com/SmartBear/ready-git-plugin/wiki/Adding-Project-to-Git-Repository) - [从 Git 仓库克隆项目](https://github.com/SmartBear/ready-git-plugin/wiki/Cloning-Project-From-Git-Repository) - [从 Git 仓库中拉取远程更改](https://github.com/SmartBear/ready-git-plugin/wiki/Pulling-Changes-From-Git-Repository) - [将更改推送到 Git 仓库](https://github.com/SmartBear/ready-git-plugin/wiki/Pushing-Changes-to-Git-Repository) - [放弃更改](https://github.com/SmartBear/ready-git-plugin/wiki/Discarding-Changes) - [查看远程更改](https://github.com/SmartBear/ready-git-plugin/wiki/Viewing-Remote-Changes) - [查看和创建标签](https://github.com/SmartBear/ready-git-plugin/wiki/Viewing-and-Creating-Tags) - [查看提交历史](https://github.com/SmartBear/ready-git-plugin/wiki/Viewing-Commit-History) >[info]推荐开启以下两项 ReadyAPI 设置: > >1、菜单:**Preferences** > **WSDL** ,设置项:*Pretty print project files* 。 >2、菜单:**Preferences** > **UI**,设置项:*Normalize line-break* 。 > >这将使得 ReadyAPI 项目文件对 Git 的 `auto-merge` 特性更加友好。 如果你在使用插件时遇到问题,请查看 [故障排除](https://github.com/SmartBear/ready-git-plugin/wiki/Troubleshooting) 主题,或者搜索 [SmartBear 社区](http://community.smartbear.com/#_ga=2.55263150.425108352.1529475399-149287080.1528966079) 获得解决方案。如果仍然无法解决,请联系 [SmartBear 支持团队](http://support.smartbear.com/message/?prod=ReadyAPI) 。 --- # 附录 ## <span id="appendix_1">附录1</span> **测试对象** ReadyAPI 复合项目。 **测试环境** 软件版本:ReadyAPI 2.4.0 操作系统:Windows 7 64 位 **测试结果** **操作:增、删、改项目自定义属性或项目属性** 操作位置:Projects 面板 涉及文件: ``` settings.xml ``` **操作:修改 REST Service B 的名称(现有A/B两个REST服务)** 操作位置:Projects 面板 > REST Service 涉及文件: ~~~ project.content element.order Rest Service A/element.order 文件夹重命名:Rest Service B -> Rest Service B1 ~~~ **操作:修改 REST Service 的 endpoint** 操作位置:Projects 面板 > REST Service 涉及文件: ``` REST Service A/settings.xml ``` **操作:新增资源 Gaga** 操作位置:Projects 面板 > REST Service 涉及文件: ~~~ RSET Service A/Gaga.xml project.content ~~~ **操作:修改资源 Haha 的名称** 操作位置:Projects 面板 > REST Service 涉及文件: ~~~ project.content 资源文件重命名:REST Service A/Haha.xml -> REST Service A/Haha_g.xml ~~~ **操作:修改资源 Haha 的内容(Path、方法、请求)** 操作位置:Projects 面板 > REST Service 涉及文件: ``` REST Service A/Haha.xml ``` **操作:新增/删除测试套件** 操作位置:SoapUI 面板 > TestSuite 涉及文件: ~~~ element.order TestSuite-1文件夹(element.order、settings.xml等) project.content(取决于测试套件下是否有测试用例,如果有的话) ~~~ **操作:修改测试套件名称** 操作位置:SoapUI 面板 > TestSuite 涉及文件: ~~~ 修改:project.content 修改:element.order 重命名文件夹:TestSuite-1 -> TestSuite99 ~~~ **操作:在已经新增的空测试套件 TestSuite-1基础上,新增第一个测试用例 TestCase-1** 操作位置:SoapUI 面板 > TestCase 涉及文件: ~~~ 修改:project.content 修改:TestSuite-1/element.order 新增:TestSuite-1/TestCase-1.xml ~~~ **操作:重命名测试用例** 操作位置:SoapUI 面板 > TestCase 涉及文件: ~~~ 修改:project.content 修改:TestSuite99/element.order 重命名文件:TestSuite99/TestCase-1.xml -> TestSuite99/TestCase88.xml ~~~ **操作:新增、修改、删除测试步骤** 操作位置:SoapUI 面板 > TestStep 涉及文件: ``` 修改:TestSuite99/TestCase88.xml ``` **操作:新增、删除一个环境** 操作位置:Environments 涉及文件: ~~~ settings.xml 各资源文件 ~~~ **操作:修改一个环境** 操作位置:Environments 涉及文件: ``` settings.xml ``` --- 参考资料: 1. [ReadyAPI Documentation / Testing APIs / Teamwork](https://support.smartbear.com/readyapi/docs/testing/teamwork.html) --- :-: --- 贡献者名单(排名不分先后) --- :-: **材料** :-: **编写** 李云 :-: **校验** :-: **支持**