Как иметь GNU, делают явно тест для отказа?

После того, как годы не использования делают, мне нужно оно снова, версия гну теперь. Я вполне уверен, я должен смочь сделать то, что я хочу, но не выяснил, как, или нашли ответ с Google, и т.д.

Я пытаюсь создать тестовую цель, которая выполнит мою программу неоднократно, сохраняя результаты в файле журнала. Некоторые тесты должны заставить мою программу прерываться. К сожалению, мой make-файл прерывается на первом тесте, который приводит к ошибке. У меня есть что-то как:

# Makefile
# 
test:
        myProg -h > test.log              # Display help
        myProg good_input >> test.log     # should run fine
        myProg bad_input1 >> test.log      # Error 1
        myProg bad_input2 >> test.log      # Error 2

С вышеупомянутым сделайте выходы после bad_input1 выполненными, никогда не добираясь до выполненного bad_input2.

62
задан 13 January 2015 в 20:12

1 ответ

Надлежащее решение, если Вы хотите потребовать, чтобы цель перестала работать, состоит в том, чтобы инвертировать свой код выхода.

# Makefile
# 
test:
    myProg -h > test.log              # Display help
    myProg good_input >> test.log     # should run fine
    ! myProg bad_input1 >> test.log      # Error 1
    ! myProg bad_input2 >> test.log      # Error 2

Теперь, это - ошибка преуспеть в тех двух случаях.

16
ответ дан 31 October 2019 в 13:26

Другие вопросы по тегам:

Похожие вопросы: