【问题标题】:How to test your website against multiple users(extended)如何针对多个用户测试您的网站(扩展)
【发布时间】:2011-07-10 23:57:07
【问题描述】:

我参与了关于这个主题的类似问题,但它并没有真正回答我目前需要的内容。

How to rigorously test a site?

我在我的服务器日志中注意到java.util.ConcurrentModificationException,所以我修复了那个,但我仍然不知道如果不测试它是否会发生这种或其他一些并发。

我尝试在 jmeter 中创建测试,它只执行简单的 GET 并模拟 100 个用户。

问题:

当页面加载完成时,我从服务器检索一些信息,所以我对那部分感兴趣(因为那部分之前导致了这个异常)。

但是 jmeter 仅在加载页面时获取页面,并且所有 ajax 挂起的请求(如果有)都不会显示在日志中。实际上我在日志中看不到任何内容,因为当文档准备好时,jmeter 永远不会到达这些 ajax 调用,它就在此之前退出。

当我从浏览器刷新页面时,我自然可以看到日志,服务器端到底发生了什么。是否有某种工具可以等待所有待处理的请求或可以在网站上停留 n 时间,或者是否有更聪明的方法来测试它以避免进一步的并发异常。

【问题讨论】:

    标签: java spring-mvc jmeter


    【解决方案1】:

    AJAX 请求也是简单的 GET 请求,因此您只需配置 JMeter 以直接调用为其提供服务的 servlet。

    【讨论】:

    • 老实说,我没有想到这一点,不知道是怎么回事,但我没有。 tnx
    【解决方案2】:

    如果您使用 Selenium 而不是 JMeter 进行测试,您将生成真正的浏览器,它们将像真正的应用程序一样执行 AJAX 请求。仅仅因为它是正在运行的真实应用程序。

    问题是...... Selenium 用于回归测试和与浏览器的兼容性,而不是用于原始性能。每台计算机不能运行多个浏览器。一些公司提供 browserd 集群(browsermob 最多 5000 和最多 500 000 个虚拟用户),您可以租用这些集群用于您的性能活动。

    您也可以在办公室使用台式电脑,比如晚上进行测试。

    我知道这可能有点复杂,并不是最好的解决方案。

    【讨论】:

    • selenium 有免费版吗?
    • @c0mrade : Selenium 是免费和开源的。您可以免费使用它做任何您想做的事情。
    猜你喜欢
    • 2018-08-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-07-31
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多