【发布时间】:2016-10-13 09:18:20
【问题描述】:
我想创建 SQL 单元测试来测量我的存储过程的执行时间。有没有办法断言每次执行的持续时间?
我最终使用的解决方案:
--运行我的存储过程
exec mySP
--获取指标
SELECT d.object_id, d.database_id, OBJECT_NAME(object_id, database_id) 'proc name',
d.cached_time, d.last_execution_time, d.total_elapsed_time,
d.total_elapsed_time/d.execution_count AS [avg_elapsed_time],
d.last_elapsed_time, d.execution_count
FROM sys.dm_exec_procedure_stats AS d
where OBJECT_NAME(object_id, database_id) = 'mySP'
ORDER BY [total_worker_time] DESC;
--根据last_elapsed_time 和avg_elapsed_time 朗读我的断言
【问题讨论】:
标签: sql-server unit-testing tsqlt