의 당신의 알파를 말하고 스크립트를 실행 브라보하자이
from os.path import join, dirname
from vunit import VUnit
prj = VUnit.from_argv()
root = dirname(__file__)
lib = prj.add_library("alfa_lib")
lib.add_source_files(join(root, "*.vhd"))
prj.main()
같은 지금이
from os.path import join, dirname
from vunit import VUnit
def create_test_suite(prj):
root = dirname(__file__)
lib = prj.add_library("alfa_lib")
lib.add_source_files(join(root, "*.vhd"))
if __name__ == '__main__':
prj = VUnit.from_argv()
create_test_suite(prj)
prj.main()
받는 스크립트를 준비 보인다 파일을 스크립트로 호출하면 (여전히 알파를 테스트하는 데 사용할 수는 있지만) 파일을 다른 스크립트로 모듈로 가져온 경우에는 사용할 수 없습니다.
지금 모든 스크립트를 실행 찾은 다음 그 스크립트를 반복합니다 최상위 디렉토리 (
vunit_multi
)
from os.path import join, dirname
from vunit import VUnit
from glob import glob
import imp
def create_test_suites(prj):
root = dirname(__file__)
run_scripts = glob(join(root, "*", "run.py"))
for run_script in run_scripts:
file_handle, path_name, description = imp.find_module("run", [dirname(run_script)])
run = imp.load_module("run", file_handle, path_name, description)
run.create_test_suite(prj)
file_handle.close()
prj = VUnit.from_argv()
create_test_suites(prj)
prj.main()
create_test_suites
이 같은 새로운 실행 스크립트를 넣어. 각 스크립트 파일은 create_test_suite
기능에 액세스하기위한 모듈로 가져옵니다. 이 최상위 레벨 스크립트에서 작성된 prj
함수를 호출하여 모듈에 지정된 라이브러리 및 파일을 추가합니다.
이제 최상위 스크립트를 실행하면 모든 모듈 테스트 벤치가 표시됩니다.
참고 : imp
보다 새로운 모듈을 사용할 수 있지만 imp
은 이전 버전의 Python에서도 작동합니다.
이것은 Github의 사이트에서 링크 된 VUnit의 Gitter 채널에서 더 잘 묻습니다. 아주 좋은 지원 채널입니다. –
@BrianDrummond : 고마워, 나는 그것을 살펴볼 것이다. – EquipDev
VUnit 팀이 귀하를 도울 수있는 경우 솔루션을 자체 답변으로보고하십시오. – Paebbels