测试区域 3:签出/撤销签出

此源代码管理插件测试区域包括通过签出和撤消签出命令编辑和还原版本存储中的项目。

签出:将版本存储中的项标记为已检查,将本地副本修改为读/写。

撤消签出:将版本存储中的项目标记为检查,还原检查退出前的本地副本状态(具体取决于选项)。

命令菜单访问

测试用例中使用以下 Visual Studio 集成开发环境菜单路径。

退房:
  • 文件源代码管理签出

  • 文件签出

  • 快捷菜单, 签出

  • 撤消签出: 文件源代码管理撤消签出

常见预期行为

  • 检查 out 操作后,目标文件(s)和/或文件夹(s)在版本存储中标记为检查。

  • 版本存储属性检查输出到正确的用户。

  • 检查输出的时间和日期正确(根据用户的设置)。

Test Cases(测试用例)

以下是签出/撤消签出测试区域的特定测试用例。

案例 3a:签出

本部分重点介绍 检查 out 命令的操作。

操作 测试步骤 要验证的预期结果
签出独占 (COE) 客户端项目 1.创建客户端项目。
2.将解决方案添加到源代码管理。
3.完全签出整个项目(文件签出)。
签出。
签出文件系统或本地 IIS Web 项目的独占 (COE) 1. 在工具选项、项目Web 设置将 Web 服务器连接设置为文件共享。
2.创建 Web 项目。
3.将解决方案添加到源代码管理。
4.完全签出整个项目(文件源代码管理签出)。
签出。
查看解决方案中的解决方案项(用于处理其他文件的新方法) 1.创建空白解决方案。
2.将解决方案添加到源代码管理。
3.查看解决方案。
4.添加多个解决方案项。
5. 签入所有新添加的项目。
6.选择多个解决方案项。
7. 签出所选项目(快捷菜单, 签出)。
所选文件已检查。
查看本地版本(如果测试中的插件支持此功能) 1. 用户 1:创建客户端项目。
2.用户 1:将解决方案添加到源代码管理。
3.用户 2:将解决方案从源代码管理打开到另一个位置。
4.用户 2:签出文件。
5. 用户 2:修改文件。
6. 用户 2:签入文件。
7. 用户 1:签出文件的本地版本(在“签出”对话框中选中“签出本地版本”高级选项)。
文件的本地版本已检查出来。

用户 2 的修改不适用于用户 1 文件。

案例 3b:已断开连接签出

在断开连接模式下操作允许用户在未直接附加到版本存储时提供某种级别的持续源代码管理支持。 这是通过本地缓存有关登记的解决方案和项目的所有相关信息来完成的。

仅当连接到源代码管理存储时,才会发生独占检查退出操作。 无论连接还是断开连接,随时都可能发生共享检查退出操作。 因此,当与版本存储断开连接时,仅 启用“签出共享 ”(COS)命令。 断开连接时, “撤消签出 ”被禁用,因为无法检索旧版本来替换用户所做的更改。

当用户重新连接到版本存储时,将同步所有登记的解决方案和项目的检查输出状态。 这会对用户执行的检查输出执行所需的存储更新。 同步发生后,用户能够继续正常工作(已连接)。

预期行为

  • 在与版本存储断开连接时,无法使用 Check Out Exclusively 命令。

  • 在与版本存储断开连接时,无法使用“撤消签出”命令。

  • 共享签出 命令有效。

操作 测试步骤 要验证的预期结果
断开连接时,检查退出文件,然后连接进行同步 1.使用“更改源代码管理”对话框(文件、源代码管理更改源代码管理)断开受控项目的连接。
2.签出文件。
3. 在警告对话框中单击“签出”(已断开连接)。
4.编辑文件。
5. 使用“更改源代码管理”对话框连接。
6.获取已编辑文件的最新版本。
常见预期行为

案例 3c:查询编辑/查询保存(QEQS)

源代码管理下的项会跟踪编辑、更改和保存,以帮助用户轻松管理其文件。 编辑“检查”的受控项时,QEQS 会截获尝试的编辑,并询问用户是否要检查文件进行编辑。 根据工具选项设置,用户要么被迫检查文件进行编辑,也可以允许在内存中编辑副本,稍后再检查。 如果用户的工具“选项”设置未设置为显示“检查”对话框,并且只将其检查出来,则当用户进行编辑时,文件将尽可能自动检查出来。

预期行为

  • 检查 out 操作后,目标文件(s)和/或文件夹(s)在版本存储中标记为检查。

  • 版本存储属性检查到正确的用户。

  • 检查的时间和日期正确(根据用户的设置)。

  • 目标文件或文件夹的本地副本是可写的。

操作 测试步骤 要验证的预期结果
编辑检查的文本文件 1.创建包含文本文件的新项目。
2.将解决方案添加到源代码管理。
3. 设置工具、选项、源代码管理允许在磁盘上只读时编辑文件检查。
4.设置工具、选项、源代码管理编辑文件检查时提示检查。
5. 设置工具、选项、源代码管理保存文件检查时提示检查。
6. 在编辑器中打开文本文件,尝试在文件中键入新文本。 如果此步骤成功,请继续执行下一步。
7. 在“签出以供编辑”对话框中单击“取消”。 如果此步骤成功,请继续执行下一步。
8. 设置工具、选项、源代码管理允许在磁盘上只读时编辑文件以检查。
9. 在编辑器中打开项目文件,尝试在文件中键入新文本。 如果此步骤成功,请继续执行下一步。
10. 在“签出以供编辑”对话框中单击“编辑”。 如果此步骤成功,请继续执行下一步。
11. 编辑文本文件并尝试保存它。
Result of step 6:

此时会显示“编辑”对话框。

Result of step 7:

文件保持不变。

Result of step 9:

此时会显示“编辑”对话框。

Result of step 10:

可以在内存中编辑项目文件。

Result of step 11:

保存时,将显示“保存时签出”对话框。
编辑检查的解决方案文件 重复上述测试中所述的步骤,但不要修改文本文件,而是通过更改解决方案属性来修改解决方案。 与以前的测试相同
编辑检查的项目文件 重复上述测试中所述的步骤,但不要修改文本文件,而是通过更改项目属性来修改项目。 与以前的测试相同。

案例 3d:无提示签出

此子区域涵盖检查“签出”对话框未按用户的工具选项源代码管理设置显示的方案

预期行为

  • 检查 out 操作后,目标文件(s)和/或文件夹(s)在版本存储中标记为检查。

  • 版本存储属性检查到正确的用户。

  • 检查超时的时间和日期正确(根据用户的设置)。

  • 目标文件或文件夹的本地副本是可写的。

操作 测试步骤 要验证的预期结果
文件的无提示检查输出 1.设置工具选项源代码管理在编辑时自动检查输出文件。
2.使用文件创建新项目。
3.将解决方案添加到源代码管理。
4.签出文件。
文件以无提示方式检查(无 UI)。
项目的无提示检查输出 1.设置工具选项源代码管理在编辑时自动检查输出文件。
2.创建新项目。
3.将解决方案添加到源代码管理。
4.查看项目。
文件以无提示方式检查(无 UI)。

案例 3e:撤消签出

撤消签出用于取消文件检查退出状态,并避免检查对文件所做的更改。

预期行为

  • 默认值基于用户的 “签出本地版本 ”设置。 如果用户已选择检查本地版本,则撤消检查输出的默认值始终还原到检查输出的版本。

  • 接受撤消后,解决方案资源管理器中的图标会更新为受影响的文件,并且该项目将从“挂起的签入”窗口中删除。

操作 测试步骤 要验证的预期结果
撤消以独占方式检查的单个文件的签出 1.创建客户端项目。
2.将解决方案添加到源代码管理。
3.以独占方式签出文件。
4.修改文件。
5.撤消签出(文件源代码管理撤消签出)。
常见的预期行为。
撤消已检查共享的单个文件的签出 1.创建客户端项目。
2.将解决方案添加到源代码管理。
3.签出文件共享。
4.修改文件。
5.撤消签出(文件源代码管理撤消签出)。
常见的预期行为。
将文件添加到项目后撤消签出项目 1.创建新项目并将其添加到源代码管理。
2.查看项目。
3.向项目添加文件。
4.撤消项目的签出。
已添加的文件将从解决方案资源管理器中的项目中删除。

不再检查项目。
从项目中删除文件后撤消签出项目 1.创建新项目并将其添加到源代码管理。
2.查看项目。
3.从项目中删除文件。
4.撤消项目的签出。
已删除的文件显示在解决方案资源管理器的项目下。

不再检查项目。