Mam moduł, który importuje unittest i ma kilka testcases. Chciałbym zaakceptować niektóre opcje wiersza poleceń (na przykład poniżej, nazwa pliku danych), , ale kiedy spróbuję przekazać opcję, otrzymuję komunikat "opcja -i nie rozpoznana". Czy jest możliwe, aby unittest + zapewnić opcje do aplikacji (uwaga: używam opcji optparse do obsługi opcji)? Dzięki.python, unittest: czy istnieje sposób przekazywania opcji wiersza poleceń do aplikacji
$ python test_app_data.py -i data_1.txt
option -i not recognized
=====================
follow-up: to jest realizacja proponowanego rozwiązania:
import cfg_master #has the optparse option-handling code
...
if __name__ == '__main__':
#add you app's options here...
options_tpl = ('-i', '--in_dir', '-o', '--out_dir')
del_lst = []
for i,option in enumerate(sys.argv):
if option in options_tpl:
del_lst.append(i)
del_lst.append(i+1)
del_lst.reverse()
for i in del_lst:
del sys.argv[i]
unittest.main()
W ujęciu ogólnym, tak. W tym przypadku wydaje się, że odpowiedź w dużej mierze zależy od szczegółów, które nie zostały podane. –
@jd. Twój "follow-up" powinien zostać opublikowany jako odpowiedź - twoje pytanie powinno zawierać tylko ... cóż ... pytanie. – user1251007