가상에서 코를 사용하는 문제
-
21-08-2019 - |
문제
VirtualEnV 프로젝트에서 코 (nosetests)를 사용할 수 없습니다. VirtualEnV 환경에 설치된 패키지를 찾을 수없는 것 같습니다.
이상한 점은 내가 설정할 수 있다는 것입니다
test_suite = 'nose.collector'
setup.py에서 테스트를 잘 실행합니다
python setup.py test
그러나 noSetest를 똑바로 실행하면 모든 종류의 가져 오기 오류가 있습니다.
시스템 전체의 코와 Virtualenv Nose 패키지와 운이없는 상태로 시도했습니다.
이견있는 사람?
감사!!
해결책
당신은 달릴 수 있습니까? myenv/bin/python /usr/bin/nosetests
? 가상 환경의 라이브러리 세트를 사용하여 코를 실행해야합니다.
다른 팁
가상 환경에 코 사본이 설치되어 있어야합니다. 코를 가상으로 설치하기 위해서는 이미 글로벌 사이트 패키지에 설치되어 있어도 pip install
이랑 -I
깃발:
(env1)$ pip install nose -I
그때부터 당신은 그냥 달릴 수 있습니다 nosetests
평소와 같이.
같은 상황에서 나는 다시로드해야했습니다 virtualenv
경로가 올바르게 업데이트되도록 :
deactivate
env/bin/activate
비슷한 문제가 있습니다. 다음 해결 방법이 도움이되었습니다.
python `which nosetests`
(그냥 대신 nosestests
)
다음은 저에게 효과가 있습니다.
$ virtualenv --no-site-packages env1
$ cd env1
$ source bin/activate # makes "env1" environment active,
# you will notice that the command prompt
# now has the environment name in it.
(env1)$ easy_install nose # install nose package into "env1"
정말 기본적인 패키지를 만들었습니다 slither
그것은 그 안에 있었다 setup.py
, 같은 test_suite
위에서 언급 한 바와 같이 속성. 그런 다음 패키지 소스를 아래에 배치했습니다 env1/src
.
당신이 내부를 보았다면 env1/src
, 당신은 볼 수 있습니다 :
slither/setup.py
slither/slither/__init__.py
slither/slither/impl.py # has some very silly code to be tested
slither/slither/tests.py # has test-cases
테스트를 사용하여 실행할 수 있습니다 test
하위 명령 :
(env1)$ pushd src/slither
(env1)$ python setup.py test
# ... output elided ...
test_ctor (slither.tests.SnakeTests) ... ok
test_division_by_zero (slither.tests.SnakeTests) ... ok
Ran 2 tests in 0.009s
OK
(env1)$ popd
또는 동일한 테스트를 실행할 수 있습니다 nosetests
:
(env1)$ pushd src
(env1)$ nosetests slither/
..
Ran 2 tests in 0.007s
OK
(env1)$ popd
또한 주목하십시오 nosetests
실행 파일에 대해 까다로울 수 있습니다. 당신은 통과 할 수 있습니다 --exe
실행 가능한 파이썬 모듈에서 테스트를 발견하려면.
다른 모든 것이 실패하면 Venv에 코를 설치하거나/또는 실행하십시오. nosetests-2.7
. 나는 당신의 venv python이 2.7 인 경우 @Andrea-Zonca의 대답이 같은 효과를 가지고 있다고 생각합니다.
아마도 이것은 최근의 변화 일지 모르지만, PIP를 통해 NOSETESTS를 설치했을 때 NOSETESTS 실행 파일이 설치되었습니다. .virtualenvs/<env>/bin
, (놀랍게도) virtualenv에서 올바르게 작동합니다.
당신은 가질 수 있습니다 nosetests
그것은 당신의 다른 곳에 설치됩니다 PATH
VirtualEnV에 설치된 것보다 우선 순위가 높습니다. 빠른 방법 nose
모듈 및 관련 nosetests
현재 virtualenv에 설치된 스크립트는 최우선 과제입니다. PATH
:
export PATH=/path/to/current/virtualenv/bin:$PATH