LINUX.ORG.RU

как запускать тестовые скрипты

 , ,


0

2

ищу такую штуку, не знаю, как называется

дано: набор скриптов test_**.py, каждый при запуске выдаст errno 0 или !0

надо: запустить их по очереди, написать на экране:

test_00.py OK
test_01 FAIL
test_02 OK
1 of 3 failed

понятно, что такое пишется на коленке, но наверняка что-то такое уже есть

подскажите, пожалуйста, тулзу, или как такое называется

PS: пожалуйста, не надо делать из треда соревнование по хелловорлдам. просто ткните в готовое решение, или термин

★★★★★

Последнее исправление: MyTrooName (всего исправлений: 1)

CMake: add_test

$ cat CMakeLists.txt
cmake_minimum_required (VERSION 2.8)
project (TEST)
enable_testing ()
add_test (NAME MyTest1 COMMAND ${CMAKE_SOURCE_DIR}/run.sh 0)
add_test (NAME MyTest2 COMMAND ${CMAKE_SOURCE_DIR}/run.sh 1)
$ cat run.sh
#!/bin/bash

exit $1
$ mkdir 1 && pushd 1 && cmake .. && make test

anonymous
()
#!/usr/bin/python3

import os
from subprocess import call

def test_all():
  for dname, dnames, fnames in os.walk('.'):
    for fname in fnames:
      if fname.startswith('test'):
        fname = os.path.join(dname, fname)
        r = call(fname)
        print('%s: %i' % (fname, r))
        yield (r!=0, 1)

a, b = map(sum, zip(*list(test_all())))
if a != 0:
  print('%i of %i failed' % (a, b))
else:
  print('all %i passed')
anonymous
()
Ответ на: комментарий от MyTrooName

нет, это cmake - генератор сборочных скриптов.

anonymous
()

google://аналог+perl+prove+для+питона

anonymous
()

Как-то так

Запуск:

find . -type f -exec ~/bin/shell-test.sh {} \;

~/bin/shell-test.sh:

#!/bin/sh

/bin/sh $@ && echo $1: OK || echo $1: FAIL

gh0stwizard ★★★★★
()

понятно, что такое пишется на коленке, но наверняка что-то такое уже есть

Такое не лень и на коленке написать, раз уж на то пошло. А что-то готовое для твоего простого случая скорее всего будет монстром на джаве с тысячей зависимостей.

loz ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.