freebencher性能测试工具

联合创作 · 2023-10-01 20:11

Freebencher 是一个极其灵活易用的性能测试工具。之所以灵活,是因为你可以用任意 Java 代码来写性能测试用例,你可以测试任何可以用 Java 代码来表示的行为,你可以用任何你自己喜欢的方式在测试时获取你的测试数据。

生成的结果类似于 apache ab 的结果, 使用你喜欢的 concurrency,qps 等概念。

你可以通过 Maven 把 freebencer 迅速导入到你的项目中,调用你自己的业务方法,而不是像 Jmeter 一样,把你的类文件别扭地复制到它的目录中。

例:

    @Test
    public void testLogin() {

        final List userList = new ArrayList();
        ...//preparing userList to be used as test data.

        FbJobResult result = Freebencher.benchmark(new FbTarget() { //the behavior
            @Override
            public boolean invoke() {
                User user = userList.get(RandomUtils
                        .nextInt(userList.size()));
                int statusCode = remoteServiceToTest.doLogin(user.getUsername(), user.getClearPassword());
                return statusCode == 200;
            }
        }, 5, // concurrency,
                50 // number of tests to run
                );

        System.out.println(result.report());
    }

得到结果:

Test started.
Awaiting termination...
Test completed.
Concurrency:             5
Time taken for tests:    119ms
Successful tests:        50
Failed tests:            0
Tests per second:        420.16806722689074
Mean time per test:      11.38ms
Percentage of the test finished within a certain time (ms)
50%:                     11
60%:                     12
70%:                     12
80%:                     13
90%:                     14
95%:                     14
98%:                     14
99%:                     16
100%:                    16
浏览 3
点赞
评论
收藏
分享

手机扫一扫分享

编辑 分享
举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

编辑 分享
举报