使用 AWS lambda,模拟/忽略 lambda。开始覆盖

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

我正在使用以下设置进行测试

func HandleRequest(ctx context.Context, request LambdaRequest) (LambdaResponse, error) {

    return LambdaResponse{
        StatusCode: 200,
        Headers:    map[string]string{"Content-Type": "application/json"},
        Body:       "Hello World!",
    }, nil

}

func main() {
    lambda.Start(HandleRequest)
}

我希望代码覆盖率达到 100%

我能够测试实际的处理程序,没有问题。但我无法测试 main 因为你无法在本地环境中运行它。代码覆盖率下降,但我想确保所有内容都被覆盖。

我怎样才能模拟这个 lambda start?

go testing aws-lambda mocking code-coverage
1个回答
0
投票

当您想要 100% 的测试覆盖率时,最好的选择是从计算中排除包含

main
的文件。

Google 测试博客表示“在 Google,60% 是可以接受的,75% 是值得赞扬的,90% 是模范的”CodeCov 写道“我们看到我们的开源存储库的很大一部分覆盖率约为 80%”JUnit 的理由 “实现 100% 的语句覆盖率是不现实的”。您的分支机构覆盖范围MC/DC怎么样?

测试应该有目的。如果它们只是表演性的,那么您就会损害您的程序质量。别这样做。

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