猿问

如何使用 Java 代码在 Jmeter .jmx 文件中添加正则表达式提取器和 cookie

我正在使用 Java 代码为 Jmeter GUI 编写一个 .jmx 文件。我想从用于“登录”的 HTTP 代理采样器中提取 GET 响应,该响应用作识别用户的会话 ID。此外,我需要下一个采样器来使用正在提取的变量。此外,我还需要为每个线程组配备一个 cookie 管理器。


我应该调用哪个 API 来将提取器添加到 http 代理采样器并将 cookie 管理器添加到线程组?


我已经创建了 http 采样器,设置了路径并设置了参数。我现在需要的只是一个提取器来帮助我获取变量和一个 cookie 管理器


下面是我创建线程组并将 http 采样器添加到线程组的代码


HashTree testPlanTree = new ListedHashTree();

        TestPlan testPlan = new TestPlan("Create JMeter Script From Java Code");

        testPlanTree.add(testPlan);

        HTTPSamplerProxy newSampler = null;

        LoopController loopController;

        ThreadGroup threadGroup = null;

        HashTree threadGroupHashTree = null;

        int i = 1; // exclude the first empty call

        for (ArrayList<String> elementList : calls) {

            if (elementList.size() == 3) {

                System.out.println(elementList);

                loopController = new LoopController();

                loopController.setLoops(1);

                loopController.setFirst(true);

                loopController.setProperty(TestElement.TEST_CLASS, LoopController.class.getName());

                loopController.setProperty(TestElement.GUI_CLASS, LoopControlPanel.class.getName());

                loopController.initialize();

            }


波斯汪
浏览 101回答 1
1回答

浮云间

HTTP Cookie 管理器:CookieManager&nbsp;cookieManager&nbsp;=&nbsp;new&nbsp;CookieManager(); cookieManager.setName("HTTP&nbsp;Cookie&nbsp;Manager"); cookieManager.setProperty(TestElement.TEST_CLASS,&nbsp;CookieManager.class.getName()); cookieManager.setProperty(TestElement.GUI_CLASS,&nbsp;CookiePanel.class.getName());正则表达式提取器RegexExtractor&nbsp;regexExtractor&nbsp;=&nbsp;new&nbsp;RegexExtractor(); regexExtractor.setName("Regular&nbsp;Expression&nbsp;Extractor"); regexExtractor.setProperty("RegexExtractor.useHeaders",&nbsp;"false"); regexExtractor.setProperty("RegexExtractor.refname",&nbsp;"yourVariable"); regexExtractor.setProperty("RegexExtractor.regex",&nbsp;"yourRegex"); regexExtractor.setProperty("RegexExtractor.template",&nbsp;"yourTemplate"); regexExtractor.setProperty("RegexExtractor.match_number",&nbsp;"yourMatchNumber"); regexExtractor.setProperty("RegexExtractor.default",&nbsp;"yourDefaultValue"); regexExtractor.setProperty(TestElement.TEST_CLASS,&nbsp;RegexExtractor.class.getName()); regexExtractor.setProperty(TestElement.GUI_CLASS,&nbsp;RegexExtractorGui.class.getName());查看在不使用 JMeter GUI 的情况下启动 JMeter 测试的五种方法,以了解有关运行 JMeter 测试的不同选项的更多信息,包括以编程方式创建测试计划。
随时随地看视频慕课网APP

相关分类

Java
我要回答