【发布时间】:2021-11-13 13:26:43
【问题描述】:
我很感激这可能不是问的地方,如果有更好的地方请告诉我。
我有一个旧的存储过程,它选择一些数据并插入到表中。但是,有很多案例语句我想测试,我想知道应该怎么做。
insert into [dbo].[utb_ITP]
...
case when [sme].[Reporting Countries] = 'Multiple Countries'
then 'United Kingdom-Multiple Countries'
when patindex('%-$',[sme].[Reporting Countries) > 1
then left([sme].[Reporting countries], (pat index('%-%', [sme].[Reporting Countries]) - 1 ))
else [sme].[Reporting Countries]
end as [SVC_COUNTRY]
我认为我看到的样本都是模拟数据和测试函数,但我还没有真正看到像案例陈述这样的例子。我要测试最终输出还是组件?所以我会先测试
[sme].[Reporting Countries] = 'Multiple Countries'
then 'United Kingdom-Multiple Countries'
我将使用 AssertEqualsTable ,其中预期值为“英国-多个国家”,然后插入实际值将运行案例的第一部分,类似于:
insert into #Expected values ('United Kingdom-Multiple Countries')
insert into #Actual
select case [sme].[Reporting Countries] = 'Multiple Countries'
then 'United Kingdom-Multiple Countries'
end
from [SourceTable] as [sme]
where [sme].[Reporting Countries] = 'Multiple Countries'
exec AssertEqualsTable ...
【问题讨论】: