我们的产品(C ++ windows应用程序,作为测试框架的Google Test,作为IDE的VS2015)具有许多基于文件的外部产品接口,即我们生成一个文件,然后将其导入外部产品。为了测试这些接口,我们选择了一种黄金文件方法:
这种方法对我们很有用,但它有一个缺点:如果我们使用本地工作空间,VS只能识别黄金文件已经改变(从而允许我们调查更改)。如果我们使用服务器工作区,以编程方式从黄金文件中删除只读标志并如上所述刷新它们,VS仍然无法识别文件已更改。
所以我的问题是:有没有办法让我们的黄金文件测试方法适用于服务器工作区,例如告诉VS有些文件已经改变了吗?
答案 0 :(得分:1)
我可以想到两种方式。
第一种方法是运行tf checkout
而不是删除只读属性。
这具有内在风险,因为可能无意中检入生成的文件;这应该通过限制这些文件的签入权限来防止。此外,您可能需要运行tf undo
来清理本地状态。
另一种方法是将黄金文件映射到不同的目录中,并使用本地diff工具,而不是依赖Visual Studio内置工具。这比其他解决方案风险更小,但可能很麻烦。不要忘记您可以“克隆”工作区(例如Import Visual Studio TFS workspaces)。