我目前有一个构建为无限运行的应用程序。它旨在作为服务在Raspberry Pi上运行,因此它将持续运行。
每当我尝试在Travis-CI上对其进行测试时,由于文件无限运行,因此即使文件正确构建,无限循环部分也会产生错误。有什么办法可以阻止此错误,还是我必须从.travis.yml中删除运行构建的功能?
language: cpp
compiler:
- clang
- g++
script:
- make
- cd main
- ./jsonWeatherPrediction
我希望它会出错,但是我不确定在不删除- ./jsonWeatherPrediction
的情况下是否可以停止它
我不知道这是否有帮助,但是版本位于https://travis-ci.org/DMoore12/json-weather-prediction
预先感谢:)
答案 0 :(得分:0)
在大多数合理的CI工作流程中,作业应有明确定义的开始和结束。您正在测试的软件 可能永远运行,但是您的测试却不能。因此,首先,我建议重新考虑如何运行构建。
看一下https://travis-ci.org/DMoore12/json-weather-prediction/jobs/474719832之类的构建,我发现您只是在运行命令(这引发了一个不同的问题:该命令始终在紧密循环中永久打印相同的输出。这是所需的行为吗?)
对于测试,您需要另一种可以测试的行为(例如,从STDIN或命令行标志获取输入,打印并终止)。