Python flask -restplus пост-модульный тест с CSV-файлом из локального хранилища данных - PullRequest
0 голосов
/ 22 апреля 2020

Я создал небольшие микросервисы, к которым я обращаюсь через REST API (flask -restplus).

Для тестирования во время разработки я использовал следующую команду curl для проверки загрузки файла:

curl -i 'http://127.0.0.1:5000/nlp/project_a/load?text=text&sentiment=airline_sentiment' -F file=@./Tweets.csv -X POST -H 'enctype:multipart/form-data ; Content-Type:multipart/form-data'

Теперь я хочу превратить все это в модульный тест. Мой тест выглядит так:

import unittest
import os
from api import app

class NlpPipeline(unittest.TestCase):

  def setUp(self):
    self.app = app.test_client()

  def test_complete_pipeline(self):

...

    # Load Data
    assert os.path.exists('../working/project_a') == 1
    response = self.app.post('/nlp/project_a/load?text=text&sentiment=airline_sentiment', headers={'enctype': 'multipart/form-data', 'Content-Type': 'multipart/form-data'}, data='../data/Tweets.csv')
    self.assertEqual(200, response.status_code)
    assert os.path.isfile('../working/project_a/project_a_raw.feather') == 1

...

, но, к сожалению, ничего не происходит, поэтому файл не создается. С помощью команды curl все работает нормально. У вас есть представление о том, что я делаю неправильно?

Вот ссылка на полный проект, если уместно:

https://github.com/Modius22/nlp-pipeline/tree/add_testing

ветка add_testing.

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