Allure Rest Assured 中的黑名单标题

问题描述 投票:0回答:1

我目前正在使用 Allure 报告来捕获我的放心测试的结果,但我遇到了挑战。

具体来说,我在过滤或将标头信息列入黑名单时遇到问题。当我使用 .filters(new AllureRestAssured()) 方法时,它会记录 Allure 报告中的所有标头详细信息。

有人可以对这个问题提供一些指导或见解吗?我将非常感谢您提供的任何帮助。

提前感谢您的帮助。

我创建了一个单独的类并重写了过滤器方法。

import io.restassured.filter.Filter;
import io.restassured.filter.FilterContext;
import io.restassured.response.Response;
import io.restassured.specification.FilterableRequestSpecification;
import io.restassured.specification.FilterableResponseSpecification;

public class BlacklistHeaderFilter implements Filter {

    private final String[] blacklistedHeaders;

    public BlacklistHeaderFilter(String... blacklistedHeaders) {
        this.blacklistedHeaders = blacklistedHeaders;
    }

    @Override
    public Response filter(FilterableRequestSpecification requestSpec, FilterableResponseSpecification responseSpec, FilterContext ctx) {
        for (String header : blacklistedHeaders) {
            requestSpec.removeHeader(header);
        }
        return ctx.next(requestSpec, responseSpec);
    }
}

但是,当我作为请求规范的一部分进行如下调用时 .filters(new AllureRestAssured()) .filters(new BlacklistHeaderFilter(“授权”))

请求失败,因为标头在调用之前被删除

automated-tests testng rest-assured allure
1个回答
0
投票

从 Allure v2.27 开始。您可以设置 Rest Assured 的日志配置来隐藏您不想公开的标头。

LogConfig logConfig = LogConfig.logConfig().blacklistHeaders(List.of("sensitive_header"));
RestAssured.config = RestAssured.config().logConfig(logConfig);

Allure

© www.soinside.com 2019 - 2024. All rights reserved.