【问题标题】:Obfuscate or Secure Jmeter Script混淆或保护 Jmeter 脚本
【发布时间】:2017-04-25 02:55:13
【问题描述】:

我从现在开始就在研究 Jmeter 脚本,需要保护 Jmeter 脚本,主要是使其对外部利益相关者不可读。我的期望是将脚本混淆或交付为某种 JAR 或可执行文件。我需要一些想法或解决方法。

谢谢

Senz79

【问题讨论】:

    标签: performance testing jmeter jmeter-plugins


    【解决方案1】:

    可以从 Java 代码运行现有的 JMeter 脚本,或者使用 JMeter API 纯粹在 Java 中创建 JMeter 测试,因此创建一个可执行的二进制文件来运行您的测试并对其进行混淆不是问题。

    运行 JMeter 测试的示例 Java 代码:

    import org.apache.jmeter.engine.StandardJMeterEngine;
    import org.apache.jmeter.reporters.ResultCollector;
    import org.apache.jmeter.reporters.Summariser;
    import org.apache.jmeter.save.SaveService;
    import org.apache.jmeter.util.JMeterUtils;
    import org.apache.jorphan.collections.HashTree;
    
    import java.io.File;
    
    public class JMeterFromCode {
    
        public static void main(String[] argv) throws Exception {
    
            // JMeter Engine
            StandardJMeterEngine jmeter = new StandardJMeterEngine();
    
            // Initialize Properties, logging, locale, etc.
            JMeterUtils.loadJMeterProperties("/tmp/jmeter/bin/jmeter.properties");
            JMeterUtils.setJMeterHome("/tmp/jmeter");
            JMeterUtils.initLogging();// you can comment this line out to see extra log messages of i.e. DEBUG level
            JMeterUtils.initLocale();
    
    
            // Initialize JMeter SaveService
            SaveService.loadProperties();
    
            // Load existing .jmx Test Plan       
            HashTree testPlanTree = SaveService.loadTree(new File("/tmp/jmeter/test.jmx"));
    
            Summariser summer = null;
            String summariserName = JMeterUtils.getPropDefault("summariser.name", "summary");
            if (summariserName.length() > 0) {
                summer = new Summariser(summariserName);
            }
    
            ResultCollector logger = new ResultCollector(summer);
            logger.setFilename("/tmp/jmeter/test.jtl");
            testPlanTree.add(testPlanTree.getArray()[0], logger);
    
    
            // Run JMeter Test
            jmeter.configure(testPlanTree);
            jmeter.run();
        }
    }
    

    请参阅以下参考资料以开始使用:

    【讨论】:

    • 谢谢,能够从 java 代码执行 JMX。接下来我想将此代码转换为可执行文件进行分发
    猜你喜欢
    • 2016-05-16
    • 2018-11-03
    • 2016-07-28
    • 2021-11-28
    • 1970-01-01
    • 2020-09-11
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多