0

我已经完成了代理服务器的创建。在 Firefox 中运行脚本时遇到了一些套接字损坏的问题

当我执行某些操作时,一切正常,然后发生了一些错误

还解释一下什么是jmeter树模型和jmeternode是什么?

        Scanner sc = new Scanner(System.in);
//  recordingController recordingcontroller=new recordingController("testrecorder",RecordController.class);
//  RecordingController rc= (RecordingController) recordingcontroller.buildTestElement();


        RecordingController rc = new RecordingController();
        GenericController gc = new GenericController();
        rc.initialize();

        gc.addTestElement(rc);

        LoopController 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();

        rc.addTestElement(loopController);
        ThreadGroup threadGroup = new ThreadGroup();
        threadGroup.setName("Thread-Group");
        threadGroup.setSamplerController(loopController);


        ProxyControl proxyController = new ProxyControl();
//  proxyController.setProperty(TestElement.TEST_CLASS, ProxyControl.class.getName());
//  proxyController.setProperty(TestElement.GUI_CLASS, ProxyControlGui.class.getName());
        proxyController.setName("Proxy Recorder");
        proxyController.setPort(4444);
//  threadGroup.setSamplerController(rc);
//           proxyController.setSamplerTypeName("SAMPLER_TYPE_JAVA_SAMPLER");


        TestPlan testPlan = new TestPlan("My_Test_Plan");
        testPlan.addTestElement(threadGroup);
        testPlan.addTestElement(proxyController);


        JMeterTreeModel jtm = new JMeterTreeModel();
        proxyController.setNonGuiTreeModel(jtm);
        JMeterTreeNode node = new JMeterTreeNode(proxyController,jtm);

//           JMeterTreeNode node=new JMeterTreeNode();
        proxyController.setTarget(node);
//        proxyController.setCaptureHttpHeaders(true);
//        proxyController.setUseKeepAlive(true);
//        proxyController.setGroupingMode(4);

        proxyController.setCaptureHttpHeaders(true);
        proxyController.setProxyPauseHTTPSample("10000");
        proxyController.setSamplerFollowRedirects(true);
        proxyController.setSslDomains("www.geeksforgeeks.org");
        proxyController.startProxy();
4

1 回答 1

0

我不认为非 GUI 代理录制是您可以使用 vanilla JMeter 实现的,如果您必须自动化录制过程,您将不得不使用AppiumLDTP等桌面应用程序自动化解决方案

如果您需要在没有 GUI 的系统上使用 Firefox 录制 JMeter 脚本,我可以考虑以下方法:

  1. 使用Taurus工具的Proxy2JMX Converter模块
  2. 使用BlazeMeter 代理记录器(顺便说一下,它具有以“SmartJMX”模式导出记录场景的不错功能,具有自动检测和动态参数相关性
于 2021-10-05T09:11:02.263 回答