我有一个github的actions文件。我正在构建go应用程序,它是一个REST API服务器,并在test文件夹中运行几个测试。但在github actions runner中,它会无限期地停留在“启动服务器”这一步,而不会进入测试这一步。如果我理解正确的话,API服务器正在无限期地运行,监听请求,而不是不进行下一步。请协助我如何运行下面的测试步骤。
name: Continuous Integration
on:
push:
branches:
- "main"
jobs:
test:
runs-on: ubuntu-latest
steps:
- name: checkout repository
uses: actions/checkout@v2
- name: Setup Go
uses: actions/setup-go@v4
with:
go-version: 1.20.7
- name: build
run: go build -o main
- name: change permissions
run: chmod +x main
- name: start server
run: ./main
- name: test
run: go test -v ./tests
下面是actions runner的输出。
enter image description here
1条答案
按热度按时间hvvq6cgz1#
似乎
start server
步骤将锁定执行(主动等待)。所以test
步骤永远不会到达(并且触发超时)。在这种情况下,您可以在后台执行服务器命令,如./main &