本地负载测试:无法打开负载测试结果数据库

时间:2012-08-31 03:10:36

标签: sql-server-2008 visual-studio-2012 load-testing

我正在使用VS2012创建一些负载测试。我可以使用StorageType为“None”运行测试,但当我将其更改为StorageType为“Database”时,我得到了可怕的错误

  

无法打开负载测试结果数据库。检查一下   加载测试结果数据库由您的连接字符串指定   测试控制器(或本地机器)指定包含的数据库   负载测试模式,目前可用。更多   信息,请参阅Visual Studio帮助主题“关于负载测试”   结果存储'。连接错误是:发生错误   尝试创建负载测试结果存储库架构:To   创建您的用户帐户必须具有的数据库'LoadTest2010'   SQL Server的'sysadmin'角色或'serveradmin'和   'dbcreator'角色

我在SQL的非本地副本上创建了一个名为LoadTest的数据库。当我从SQL跟踪连接字符串对话框测试连接时,我获得了成功。

我创建了一个SQL用户,其服务器角色为dbcreator,public,serveradmin和sysadmin。用户具有到LoadMMest2010数据库的用户映射,该数据库是从VS2012 IDE目录中的loadtestresultsrepository.sql创建的。在数据库上,用户具有数据库角色成员身份db_accessadmin,db_datareader,db_datawriter,db_owner。 在拥有的架构中,我在db_datareader,db_datawriter,db_owner和db_securityadmin上勾选了这些内容,现在它们显示为蓝色方块而不是刻度线。

那是怎么回事? Visual Studio是在尝试创建数据库还是其他问题?

我没有使用TestControllers或TestAgents我只是使用本地运行。

3 个答案:

答案 0 :(得分:4)

答案很简单。我在“SQL跟踪连接字符串”中设置连接字符串,而不是单击加载测试窗口顶部的小“管理测试控制器”图标并从那里设置连接字符串。

现在我要删除我在该SQL用户上创建的一些多余权限:)

修改

enter image description here

SQL连接字符串 NOT 存储在loadtest文件中。该设置似乎是PC特定的,所以我不得不在构建服务器上更改它 - 如图所示在一个loadtest文件(address.loadtest)中,然后所有其他负载测试采用相同的连接字符串。

答案 1 :(得分:3)

我正在使用Visual Studio 2013并且也出现此错误,但原因不同。在第一次设置负载测试时,它并不完全清楚它默认会尝试将结果保存到数据库。我没有意识到它试图将结果保存到数据库,直到我第一次尝试运行时出现错误。此外,在负载测试向导中,没有用于配置数据库设置或创建数据库架构的屏幕。

我在MSDN上发现这篇文章帮我解决了这个问题。

如何:使用SQL创建负载测试结果存储库 https://msdn.microsoft.com/en-us/library/ms182600%28v=vs.120%29.aspx?f=255&MSPPError=-2147217396

基本上,它解释了您首先需要运行脚本来创建负载测试存储库架构。一旦你的SQL实例就到位了(它可以在你喜欢的任何地方),那么你可以将你的负载测试指向这个数据库并将结果保存在那里。

答案 2 :(得分:0)

对我来说,设置数据库连接后,所有测试结果仍未写入数据库。

我忘记在运行设置的属性部分更改存储类型。 该属性称为“存储类型”

存储类型:将其从“无”更改为“数据库”