【问题标题】:How to set up github actions to run unit tests for an asp.net application using nunit?如何设置 github 操作以使用 nunit 为 asp.net 应用程序运行单元测试?
【发布时间】:2020-04-30 18:59:46
【问题描述】:
我目前有一个我的公司刚刚迁移到 Github 的 Asp.Net(4.6 版)项目。我们目前将 Jenkins 用于我们的 CI/CD 管道,但希望迁移到 github 操作。我想创建一个构建项目并运行单元测试的 github 操作。测试项目是它自己的 DLL,并使用 NUnit 作为测试运行器。
我目前的计划是尝试将项目容器化,并使用 github action 的容器操作来尝试构建它。我知道 github 操作只构建基于 linux 的容器,所以我不确定这种方法是否可行。我已经能够找到用于容器化 Asp.Net 应用程序的资源,但在如何将容器化应用程序与 github 操作集成方面没有太多运气。任何帮助将不胜感激!
【问题讨论】:
标签:
asp.net
unit-testing
nunit
github-actions
continuous-delivery
【解决方案1】:
如果您的单元测试在 dockerfile 中运行,那么您只需从 github 操作触发 docker build,它将运行 dockerfile 中的所有内容,包括运行测试。
ASP.NET Core 在 linux 容器上运行良好,可能是最流行的容器化运行方式。
steps:
- uses: actions/checkout@v1
‐ name: build-push
uses: docker/build-push-action@v1
with:
username: ${{ DOCKER_USERNAME }}
password: ${{ DOCKER_PASSWORD }}
registry: myregistry
repository: myorg/myrepo
tags: v1
查看有关如何在 dockerfiles 中运行 nunit 测试的其他资源,我相信这是一个单独的问题,例如Run dotnet test inside docker container