我正在使用 AjaxtermJ ( Ajaxterm 的java端口)。 Ajaxterm客户端有一个javascript例程,每秒向服务器发送心跳(无论用户输入了什么内容)。
我想强调测试它以微调服务器,但我还没有找到一种简单的方法来模拟这种行为。
HtmlUnit 有一些无头的javascript支持,但还不够(据我所知)模仿这种事情。我想知道是否有现代化和强大的工具来使这更容易,因为现在有很多富有javascript的客户端。
当然,我可以为 JMeter 编写自己的java代码并启动一个每秒发送一次心跳的线程,但在尝试这样的方法之前,我想知道是否有更方便。
PS。 我不是在这里要求软件推荐(我知道规则),虽然某些框架可能是答案。但我的问题是具体如何在压力测试中模拟这种行为。
答案 0 :(得分:2)
在您的应用程序中,每个客户端都会对Web服务器产生双重影响:用户键入操作(A)和心跳(B)。 要对其进行压力测试,您需要模拟两个异步执行的相应测试用例。任何支持多个测试用例,调步和简单的测试用例记录/编辑的合理完整的负载测试工具都应该处理这种情况。以下是我在名为StresStimulus的工具中实现此测试的方法:
之后,您可以根据压力测试要求定制负载。只需确保使用相同数量的虚拟用户执行测试用例A和B.例如,要模拟1到100个虚拟用户的步进负载,请创建2到200个VU的步进负载,并为每个测试用例分配50%的VU。测试用例B将为任意数量的VU正确模拟心跳,在测试用例A中执行用户输入。