因此,我创建并部署了一个教程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]成功进行了构建和部署,但是当我去查看“报告”选项卡时,它为空。我实际上知道测试按生成日志中的顺序运行,但是报告为空。
答案 0 :(得分:1)
运行find ./
以确认生成了测试结果文件。另外,在“报告”部分中,指定确切的文件名。
这是我用来检查和确认功能的样本buildspec:
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