Как запустить тесты Нос2 в сборке Дженкинс Python - PullRequest
0 голосов
/ 22 декабря 2019

Я запускаю конвейер Jenkins, где у меня есть приложение для работы с колбами, а затем тестирую (используя нос)

текущий используемый Jenkinsfile:

pipeline {
    agent { docker { image 'python:3.8.0' } }
    stages {
        stage('build') {
            steps {
                withEnv(["HOME=${env.WORKSPACE}"]) {
                                    sh 'python --version'
                                    sh 'python -m pip install --upgrade pip'
                                    sh 'pip install --user -r requirements.txt'

        sh script:'''
          #!/bin/bash
          echo "This is start $(pwd)"
          cd ./flask/section5
          echo "This is $(pwd)"
          python create_table.py
          python myapp.py &
          nose2
        '''
            }
        }
    }
}
}

Jenkins создает докеризображение и скачать требования питона. Я получаю сообщение об ошибке при запуске nose2 из сценария оболочки

с этой ошибкой

+ pwd
+ echo This is start .jenkins/workspace/myflaskapptest_master
This is start .jenkins/workspace/myflaskapptest_master
+ cd ./flask/section5
+ pwd
+ echo This is .jenkins/workspace/myflaskapptest_master/flask/section5
This is .jenkins/workspace/myflaskapptest_master/flask/section5
+ python create_table.py
DONE
+ nose2+ 
python myapp.py
.jenkins/workspace/myflaskapptest_master@tmp/durable-1518e85e/script.sh: 8: .jenkins/workspace/myflaskapptest_master@tmp/durable-1518e85e/script.sh: nose2: not found

что мне не хватает?

1 Ответ

0 голосов
/ 22 декабря 2019

Я исправил это (т. Е. Сборки jenkins), изменив Jenkinfile следующим образом:

    sh script:'''
      #!/bin/bash
      echo "This is start $(pwd)"
      cd ./flask/section5
      echo "This is $(pwd)"
      python create_table.py
      python myapp.py &
      cd ./tests
      python test.py
    '''

Я бы предпочел запускать nose2, как на своей машине. если кто-нибудь знает, чтобы исправить это было бы здорово

...