2012-02-21 75 views
2

我想在使用ValidateAntiForgeryToken s的网站上对多个HttpPost进行负载测试。但是,正如您所期望的那样,当我运行加载测试脚本时,由于__RequestVerificationToken要么从先前的请求中复制,要么是空白的,因此我会收到500个错误。两者都失败了。如何加载测试使用ValidateAntiForgeryToken的网站?

有没有什么方法可以在我的HttpPost方法中使用ValidateAntiForgeryToken属性加载测试网站?

我使用StresStimulus也SmartBear的LoadComplete对我的测试尝试。

+0

注释validateantiforgery,所做的只是获取cookie值和检查,以确保它通过该窗体在同一个URL给出我不明白为什么你将不得不测试压力但应该你需要做一个饼干检索议案,可以说没有一个真正的cookie。加上其值得注意的是,你可能会问“我如何破解ValidateAntiForgeryToken”和你的标题应反映这一:-) – davethecoder 2012-02-21 14:29:47

回答

3

如果您使用的是提琴手和http://stresstimulus.stimulustechnology.com/(我没有用过),我必须想象您可以先登录,然后使用该会话作为您的负载。 AntiForgeryTokens并不是一次性的,只要cookie存在您的认证信息和在该登录会话期间生成的防伪造令牌,它应该没问题。

0

没有看到您正在使用的场景的细节,很难肯定地说。但是我们已经能够自动化许多这些类型的动态字段来进行负载测试(我们唯一无法绕过的是那些需要人工输入的,即验证码)。一般来说,您需要找到__RequestVerificationToken字段的值来自何处 - 无论是Cookie,JavaScript计算,隐藏表单字段等。找到该字段后,您可以提取或计算该值作为负载测试场景并与请求一起发送。如果我的记忆力得到满足,那么我们之前已经解决了这个问题,并且做了很多工作 - 如果你想给我们一个解决问题的办法,contact us。总的来说,我们可以比您提到的任何解决方案更优雅地处理这些类型的问题。

1

我与StressStimulus有同样的问题。一些提交给网站的表单失败,因为__RequestVerificationToken在记录的请求运行时没有更新。 {{自动关联}}在我的情况下不起作用。我用正则表达式提取器来解决它。这里的link对我的帖子在StressStimulus

+0

在StresStimulus V4.5自相关的最新版本升级到支持RequestVerificationToken无需手动创建正则表达式extrators。 – MaxK 2016-09-21 21:49:04