AWS CodeBuild测试报告为空

时间:2020-04-08 23:31:50

标签: amazon-web-services unit-testing testing aws-codebuild aws-codestar

因此,我创建并部署了一个教程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]成功进行了构建和部署,但是当我去查看“报告”选项卡时,它为空。我实际上知道测试按生成日志中的顺序运行,但是报告为空。

1 个答案:

答案 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