AWS CodeBuild 测试报告为空
AWS CodeBuild Test Report Is Empty
所以我创建并部署了一个教程 AWS CodeStar 项目 [https://github.com/aamalik7196/Testv4]。这些文件由 AWS 自己创建,用于 运行 一个简单的 Hello World 示例项目。
我所做的唯一更改是在 buildspec.yml 文件中创建测试报告,如下所示:
version: 0.2
phases:
install:
runtime-versions:
python: 3.8
commands:
# Upgrade AWS CLI to the latest version
- pip install --upgrade awscli
pre_build:
commands:
# Discover and run unit tests in the 'tests' directory. For more information, see <https://docs.python.org/3/library/unittest.html#test-discovery>
- python -m unittest discover tests
build:
commands:
# Use AWS SAM to package the application by using AWS CloudFormation
- aws cloudformation package --template template.yml --s3-bucket $S3_BUCKET --output-template template-export.yml
# Do not remove this statement. This command is required for AWS CodeStar projects.
# Update the AWS Partition, AWS Region, account ID and project ID in the project ARN on template-configuration.json file so AWS CloudFormation can tag project resources.
- sed -i.bak 's/$PARTITION$/'${PARTITION}'/g;s/$AWS_REGION$/'${AWS_REGION}'/g;s/$ACCOUNT_ID$/'${ACCOUNT_ID}'/g;s/$PROJECT_ID$/'${PROJECT_ID}'/g' template-configuration.json
# post-build:
# commands:
# - echo In post build phase
# only part added
reports:
TestReport: # CodeBuild will create a report group called "TestReport".
files: #Store all of the files
- '**/*'
artifacts:
files:
- template-export.yml
- template-configuration.json
该存储库确实包含一个用于执行简单测试的文件夹。构建和部署成功 [使用 AWS CodeStar] 但是当我去查看报告选项卡时它是空的。我确实知道构建日志中的测试 运行 但报告是空的。
运行一个find ./
确认测试结果文件已生成。同样在 'reports' 部分,指定确切的文件名。
这是我用来检查和确认功能的构建规范示例:
version: 0.2
phases:
install:
runtime-versions:
python: 3.8
pre_build:
commands:
- aws --version
post_build:
commands:
- wget https://raw.githubusercontent.com/qmetry/cucumber-javascript-example/master/test-result.json
- find ./
reports:
rspec:
files:
- 'test-result.json'
file-format: CucumberJson
所以我创建并部署了一个教程 AWS CodeStar 项目 [https://github.com/aamalik7196/Testv4]。这些文件由 AWS 自己创建,用于 运行 一个简单的 Hello World 示例项目。
我所做的唯一更改是在 buildspec.yml 文件中创建测试报告,如下所示:
version: 0.2
phases:
install:
runtime-versions:
python: 3.8
commands:
# Upgrade AWS CLI to the latest version
- pip install --upgrade awscli
pre_build:
commands:
# Discover and run unit tests in the 'tests' directory. For more information, see <https://docs.python.org/3/library/unittest.html#test-discovery>
- python -m unittest discover tests
build:
commands:
# Use AWS SAM to package the application by using AWS CloudFormation
- aws cloudformation package --template template.yml --s3-bucket $S3_BUCKET --output-template template-export.yml
# Do not remove this statement. This command is required for AWS CodeStar projects.
# Update the AWS Partition, AWS Region, account ID and project ID in the project ARN on template-configuration.json file so AWS CloudFormation can tag project resources.
- sed -i.bak 's/$PARTITION$/'${PARTITION}'/g;s/$AWS_REGION$/'${AWS_REGION}'/g;s/$ACCOUNT_ID$/'${ACCOUNT_ID}'/g;s/$PROJECT_ID$/'${PROJECT_ID}'/g' template-configuration.json
# post-build:
# commands:
# - echo In post build phase
# only part added
reports:
TestReport: # CodeBuild will create a report group called "TestReport".
files: #Store all of the files
- '**/*'
artifacts:
files:
- template-export.yml
- template-configuration.json
该存储库确实包含一个用于执行简单测试的文件夹。构建和部署成功 [使用 AWS CodeStar] 但是当我去查看报告选项卡时它是空的。我确实知道构建日志中的测试 运行 但报告是空的。
运行一个find ./
确认测试结果文件已生成。同样在 'reports' 部分,指定确切的文件名。
这是我用来检查和确认功能的构建规范示例:
version: 0.2
phases:
install:
runtime-versions:
python: 3.8
pre_build:
commands:
- aws --version
post_build:
commands:
- wget https://raw.githubusercontent.com/qmetry/cucumber-javascript-example/master/test-result.json
- find ./
reports:
rspec:
files:
- 'test-result.json'
file-format: CucumberJson