python: невозможно открыть файл 'MainRunner.py': [Errno 2] Нет такого файла или каталога в jenkins - PullRequest
0 голосов
/ 26 июня 2019

Я пытаюсь запустить автоматические тесты в пакетном файле Windows в сборке jenkins. Он настроен на периодическое извлечение исходного кода из gitlab, и теперь я пытаюсь настроить его для запуска моей автоматизированной среды тестирования.

У меня возникла следующая ошибка: python: невозможно открыть файл 'MainRunner.py': [Errno 2] Нет такого файла или каталога

Я понимаю, что эта проблема обычно возникает из-за того, что она находится не в той папке, где файл не может быть найден, или из-за ошибок разрешения файла.

Вот пакетный скрипт windows:

echo "begining build"
icacls * /reset /t /c /q 
pip freeze > requirements.txt
echo "executing unit tests"
cd Test\unit\
dir
python MainRunner.py
python TestDrive.py
echo "build complete"

и вывод:

02:00:29 [Financial-Application] $ cmd /c call "C:\Program Files\Apache Software Foundation\Tomcat 9.0\temp\jenkins9213047334246424605.bat"
02:00:29 
02:00:29 C:\Windows\system32\config\systemprofile\.jenkins\workspace\Financial-Application>echo "begining build" 
02:00:29 "begining build"
02:00:29 
02:00:29 C:\Windows\system32\config\systemprofile\.jenkins\workspace\Financial-Application>icacls * /reset /t /c /q  
02:00:29 Successfully processed 589 files; Failed processing 0 files
02:00:29 
02:00:29 C:\Windows\system32\config\systemprofile\.jenkins\workspace\Financial-Application>pip freeze  1>requirements.txt 
02:00:30 
02:00:30 C:\Windows\system32\config\systemprofile\.jenkins\workspace\Financial-Application>echo "executing unit tests" 
02:00:30 "executing unit tests"
02:00:30 
02:00:30 C:\Windows\system32\config\systemprofile\.jenkins\workspace\Financial-Application>cd Test\unit\ 
02:00:30 
02:00:30 C:\Windows\System32\config\systemprofile\.jenkins\workspace\Financial-Application\Test\unit>dir
02:00:30  Volume in drive C has no label.
02:00:30  Volume Serial Number is 0219-9097
02:00:30 
02:00:30  Directory of C:\Windows\System32\config\systemprofile\.jenkins\workspace\Financial-Application\Test\unit
02:00:30 
02:00:30 06/25/2019  02:00 AM    <DIR>          .
02:00:30 06/25/2019  02:00 AM    <DIR>          ..
02:00:30 06/25/2019  02:00 AM             2,164 .coverage
02:00:30 06/14/2019  05:58 AM    <DIR>          data
02:00:30 06/14/2019  05:58 AM               693 MainRunner.py
02:00:30 06/22/2019  02:00 AM             2,624 TestDrive.py
02:00:30 06/22/2019  02:00 AM             7,316 TestSpreadsheet.py
02:00:30 06/25/2019  02:00 AM             9,652 TestWorksheet.py
02:00:30                5 File(s)         22,449 bytes
02:00:30                3 Dir(s)  1,069,314,711,552 bytes free
02:00:30 
02:00:30 C:\Windows\System32\config\systemprofile\.jenkins\workspace\Financial-Application\Test\unit>python MainRunner.py 
02:00:30 python: can't open file 'MainRunner.py': [Errno 2] No such file or directory
02:00:30 
02:00:30 C:\Windows\System32\config\systemprofile\.jenkins\workspace\Financial-Application\Test\unit>python TestDrive.py 
02:00:30 python: can't open file 'TestDrive.py': [Errno 2] No such file or directory
02:00:30 
02:00:30 C:\Windows\System32\config\systemprofile\.jenkins\workspace\Financial-Application\Test\unit>echo "build complete" 
02:00:30 "build complete"
02:00:30 
02:00:30 C:\Windows\System32\config\systemprofile\.jenkins\workspace\Financial-Application\Test\unit>exit 2 
02:00:30 Build step 'Execute Windows batch command' marked build as failure
02:00:31 Build did not succeed and the project is configured to only push after a successful build, so no pushing will occur.
02:00:31 Finished: FAILURE

как вы видите, я захожу в соответствующую папку и запускаю команду DIR, и файл найден. Так что оставляет права доступа к файлу. Я не знаю, существует ли специальный способ изменения разрешений в jenkins, но я действительно удостоверился, что фактические папки в jenkins в моей файловой системе для рабочей области имеют разрешения на чтение / запись / выполнение.

Я также запускаю команду ICACLS, чтобы попытаться исправить права доступа к файлу, однако это не помогает.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...