【问题标题】:separating environments for concurrent users using JMeter & selenium webdriver使用 JMeter 和 selenium webdriver 为并发用户分离环境
【发布时间】:2017-08-17 13:55:50
【问题描述】:

如何使用 webdriver 为每个 JMeter 线程分离环境来测试 ASP.net 网站?我正在尝试登录(使用具有表文件的不同用户)并且测试失败,因为从一个线程(即浏览器窗口)保存的 cookie 中断了其他线程。

【问题讨论】:

  • 欢迎来到 StackOverflow!如果您希望从这里的优秀社区获得答案,请确保您首先阅读How do I ask a good question。尝试尽可能具体,例如通过显示不符合预期的短代码 sn-p 以及可以帮助用户回答您的问题的错误日志。

标签: selenium-webdriver jmeter jmeter-plugins


【解决方案1】:

通常 JMeter 线程(虚拟用户)不共享任何数据,有关详细信息,请参阅 ThreadLocal 概念。

对于WebDriver Sampler,每个 JMeter 线程都应该启动一个单独的浏览器实例,因此不应该有任何冲突,因为每个浏览器都应该绑定到具有自己的凭据、cookie、缓存等的不同用户。


根据 WebDriver Sampler documentation,我建议重新考虑您的测试设计:

注意:本项目无意替换 JMeter 中包含的 HTTP 采样器。相反,它旨在通过测量最终用户加载时间来赞美它们。

浏览器是非常资源密集型的,因此您不太可能使用中档笔记本电脑启动超过 10 个浏览器,而使用 HTTP Request 采样器您将能够模仿数百个或甚至成千上万的虚拟用户。因此,我建议使用 HTTP 请求采样器创建主要负载,并使用 1-2 个 WebDriver 采样器实例来测量系统处于负载下的页面呈现速度。

有关使用 JMeter 测试 ASP.NET Web 应用程序的更多信息,请参阅ASP.NET Login Testing with JMeter 文章。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-04-11
    • 1970-01-01
    • 1970-01-01
    • 2014-12-04
    相关资源
    最近更新 更多