在docker run -i --rm --name myweb -w C:/users/Administrator/Documents -v "$(Agent.BuildDirectory):c:/users/Administrator/Documents/myweb:rw" vsbuildtools2017:web-v1 msbuild "myweb\s\CSS.sln" /nr:false /fl /flp:"logfile=myweb\s\css.sln-build.log" /p:platform="any cpu" /p:configuration="release" /p:RunCodeAnalysis=true /p:DeployOnBuild=true /p:PublishProfile=Release /p:PackageLocation="c:/users/Administrator/Documents/cssweb/a/PublishedPackage"
中设置path
之后,有没有办法覆盖它?
我有很多测试(边界值),这些测试基本上仅取决于测试它们的功能。很好,我可以在Background:
中设置path
。
但是在奇怪的情况下,我需要链接多个调用,因此也需要链接Background
变量。
如果我这样做
path
在每次Given path 'Client/GetClient'
...
Given path 'GetServices'
...
调用中路径均被正确覆盖,但是如果我这样做,则
path
Background:
* path 'Client/GetClient'
...
Given path 'GetServices'
路径被附加到已经定义的Given
路径上,因此它变为Background
。
我希望它是第一次Client/GetClient/GetServices
,第二次是Client/GetClient
。
答案 0 :(得分:1)
是的,“附加”行为是设计使然,在RESTful URL-s的典型测试中效果很好!但是为什么不将背景路径移入测试?
Given path basePath, 'Client', 'GetClient'
...
Given path basePath, 'GetServices'
(编辑删除了错误的信息)。
另一个建议是不要使用path
并且仅使用URL:
Given url myUrl + '/basePath/Client/GetClient'
...
Given url myUrl + '/basePath/GetServices'