我目前正在使用WebTest来测试系统。用户可以投票,然后无法重新登录以更改投票。
WebTest使用CSV文件中的用户名列表,并且所有帐户都有默认密码用于测试目的。
由于我不想看到网站如何同时响应大量并发用户登录,我想知道如何参数化负载测试。
想法?溶液
答案 0 :(得分:3)
我测试了一个解决方案,该解决方案将在四个小时内登录多达几十万用户。
我们将负载测试转换为编码的webtest,以便调用特定的数据库过程,该过程将使我们从列表中进行下一次登录。
我们在此过程中将索引存储到表中,并在每次发出新登录时将其向上移动一个。
这个存储过程非常简单,但使用数据库并发保护来确保用户的输出完全与临时表中存储的一致。
理想情况下,您不希望在负载测试代码中放置线程阻塞调用(数据库或文件IO),因为许多虚拟用户共享同一个线程。然而,在实践中,这适用于我们调用的简单存储过程。