Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ajax/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python django ajax上载程序-由于AssertionError,单元测试失败_Python_Ajax_Django_Image_Upload - Fatal编程技术网

Python django ajax上载程序-由于AssertionError,单元测试失败

Python django ajax上载程序-由于AssertionError,单元测试失败,python,ajax,django,image,upload,Python,Ajax,Django,Image,Upload,我正在使用以下应用程序: 现在,我编写了一些测试来检查文件上传是否成功。在达到以下代码示例之前,一切正常 通过运行,我收到以下错误: AssertionError: Cannot read more than the available bytes from the HTTP incoming data. 在调试过程中,我发现,通过在该点停止测试并调用 request.POST …测试工作正常,没有出现错误,文件已上载。什么。。。。? 可能只有在停止测试并等待加载时才会上载文件 我的回溯:

我正在使用以下应用程序:

现在,我编写了一些测试来检查文件上传是否成功。在达到以下代码示例之前,一切正常

通过运行,我收到以下错误:

AssertionError: Cannot read more than the available bytes from the HTTP incoming data.
在调试过程中,我发现,通过在该点停止测试并调用

request.POST
…测试工作正常,没有出现错误,文件已上载。什么。。。。? 可能只有在停止测试并等待加载时才会上载文件

我的回溯:

AssertionError: Cannot read more than the available bytes from the HTTP incoming data.
Datei "/home/tobi/Projects/academic/src/webapps/django/project/manage.py", Zeile 14, in <module>
  execute_manager(settings)
Datei "/home/tobi/Envs/academic/lib/python2.7/site-packages/django/core/management/__init__.py", Zeile 438, in execute_manager
  utility.execute()
Datei "/home/tobi/Envs/academic/lib/python2.7/site-packages/django/core/management/__init__.py", Zeile 379, in execute
  self.fetch_command(subcommand).run_from_argv(self.argv)
Datei "/home/tobi/Envs/academic/lib/python2.7/site-packages/django/core/management/base.py", Zeile 191, in run_from_argv
  self.execute(*args, **options.__dict__)
Datei "/home/tobi/Envs/academic/lib/python2.7/site-packages/django/core/management/base.py", Zeile 220, in execute
  output = self.handle(*args, **options)
Datei "/home/tobi/Envs/academic/lib/python2.7/site-packages/south/management/commands/test.py", Zeile 8, in handle
  super(Command, self).handle(*args, **kwargs)
Datei "/home/tobi/Envs/academic/lib/python2.7/site-packages/django/core/management/commands/test.py", Zeile 37, in handle
  failures = test_runner.run_tests(test_labels)
Datei "/home/tobi/Envs/academic/lib/python2.7/site-packages/django/test/simple.py", Zeile 360, in run_tests
  result = self.run_suite(suite)
Datei "/home/tobi/Envs/academic/lib/python2.7/site-packages/django/test/simple.py", Zeile 316, in run_suite
  return unittest.TextTestRunner(verbosity=self.verbosity, failfast=self.failfast).run(suite)
Datei "/usr/lib/python2.7/unittest/runner.py", Zeile 151, in run
  test(result)
Datei "/usr/lib/python2.7/unittest/suite.py", Zeile 70, in __call__
  return self.run(*args, **kwds)
Datei "/usr/lib/python2.7/unittest/suite.py", Zeile 108, in run
  test(result)
Datei "/home/tobi/Envs/academic/lib/python2.7/site-packages/django/test/testcases.py", Zeile 299, in __call__
  super(TransactionTestCase, self).__call__(result)
Datei "/usr/lib/python2.7/unittest/case.py", Zeile 391, in __call__
  return self.run(*args, **kwds)
Datei "/usr/lib/python2.7/unittest/case.py", Zeile 327, in run
  testMethod()
Datei "/home/tobi/Envs/academic/src/ajaxuploader/ajaxuploader/tests/default_storage_backend.py", Zeile 51, in test_upload_raw_post_local_backend
  HTTP_X_REQUESTED_WITH='XMLHttpRequest')
Datei "/home/tobi/Envs/academic/lib/python2.7/site-packages/django/test/client.py", Zeile 449, in post
  response = super(Client, self).post(path, data=data, content_type=content_type, **extra)
Datei "/home/tobi/Envs/academic/lib/python2.7/site-packages/django/test/client.py", Zeile 259, in post
  return self.request(**r)
Datei "/home/tobi/Envs/academic/lib/python2.7/site-packages/django/test/client.py", Zeile 381, in request
  response = self.handler(environ)
Datei "/home/tobi/Envs/academic/lib/python2.7/site-packages/django/test/client.py", Zeile 84, in __call__
  response = self.get_response(request)
Datei "/home/tobi/Envs/academic/lib/python2.7/site-packages/django/core/handlers/base.py", Zeile 111, in get_response
  response = callback(request, *callback_args, **callback_kwargs)
Datei "/home/tobi/Envs/academic/src/ajaxuploader/ajaxuploader/views.py", Zeile 15, in __call__
  return self._ajax_upload(request)
Datei "/home/tobi/Envs/academic/src/ajaxuploader/ajaxuploader/views.py", Zeile 53, in _ajax_upload
  success = backend.upload(upload, filename, is_raw)
Datei "/home/tobi/Envs/academic/src/ajaxuploader/ajaxuploader/backends/base.py", Zeile 27, in upload
  chunk = uploaded.read(self.BUFFER_SIZE)
Datei "/home/tobi/Envs/academic/lib/python2.7/site-packages/django/http/__init__.py", Zeile 301, in read
  return self._stream.read(*args, **kwargs)
Datei "/home/tobi/Envs/academic/lib/python2.7/site-packages/django/test/client.py", Zeile 51, in read
  assert self.__len >= num_bytes, "Cannot read more than the available bytes from the HTTP incoming data."
AssertionError: Cannot read more than the available bytes from the HTTP incoming data.
Datei "/home/tobi/Projects/academic/src/webapps/django/project/manage.py", Zeile 14, in <module>
  execute_manager(settings)
Datei "/home/tobi/Envs/academic/lib/python2.7/site-packages/django/core/management/__init__.py", Zeile 438, in execute_manager
  utility.execute()
Datei "/home/tobi/Envs/academic/lib/python2.7/site-packages/django/core/management/__init__.py", Zeile 379, in execute
  self.fetch_command(subcommand).run_from_argv(self.argv)
Datei "/home/tobi/Envs/academic/lib/python2.7/site-packages/django/core/management/base.py", Zeile 191, in run_from_argv
  self.execute(*args, **options.__dict__)
Datei "/home/tobi/Envs/academic/lib/python2.7/site-packages/django/core/management/base.py", Zeile 220, in execute
  output = self.handle(*args, **options)
Datei "/home/tobi/Envs/academic/lib/python2.7/site-packages/south/management/commands/test.py", Zeile 8, in handle
  super(Command, self).handle(*args, **kwargs)
Datei "/home/tobi/Envs/academic/lib/python2.7/site-packages/django/core/management/commands/test.py", Zeile 37, in handle
  failures = test_runner.run_tests(test_labels)
Datei "/home/tobi/Envs/academic/lib/python2.7/site-packages/django/test/simple.py", Zeile 360, in run_tests
  result = self.run_suite(suite)
Datei "/home/tobi/Envs/academic/lib/python2.7/site-packages/django/test/simple.py", Zeile 316, in run_suite
  return unittest.TextTestRunner(verbosity=self.verbosity, failfast=self.failfast).run(suite)
Datei "/usr/lib/python2.7/unittest/runner.py", Zeile 151, in run
  test(result)
Datei "/usr/lib/python2.7/unittest/suite.py", Zeile 70, in __call__
  return self.run(*args, **kwds)
Datei "/usr/lib/python2.7/unittest/suite.py", Zeile 108, in run
  test(result)
Datei "/home/tobi/Envs/academic/lib/python2.7/site-packages/django/test/testcases.py", Zeile 299, in __call__
  super(TransactionTestCase, self).__call__(result)
Datei "/usr/lib/python2.7/unittest/case.py", Zeile 391, in __call__
  return self.run(*args, **kwds)
Datei "/usr/lib/python2.7/unittest/case.py", Zeile 327, in run
  testMethod()
Datei "/home/tobi/Envs/academic/src/ajaxuploader/ajaxuploader/tests/default_storage_backend.py", Zeile 51, in test_upload_raw_post_local_backend
  HTTP_X_REQUESTED_WITH='XMLHttpRequest')
Datei "/home/tobi/Envs/academic/lib/python2.7/site-packages/django/test/client.py", Zeile 449, in post
  response = super(Client, self).post(path, data=data, content_type=content_type, **extra)
Datei "/home/tobi/Envs/academic/lib/python2.7/site-packages/django/test/client.py", Zeile 259, in post
  return self.request(**r)
Datei "/home/tobi/Envs/academic/lib/python2.7/site-packages/django/test/client.py", Zeile 381, in request
  response = self.handler(environ)
Datei "/home/tobi/Envs/academic/lib/python2.7/site-packages/django/test/client.py", Zeile 84, in __call__
  response = self.get_response(request)
Datei "/home/tobi/Envs/academic/lib/python2.7/site-packages/django/core/handlers/base.py", Zeile 111, in get_response
  response = callback(request, *callback_args, **callback_kwargs)
Datei "/home/tobi/Envs/academic/src/ajaxuploader/ajaxuploader/views.py", Zeile 15, in __call__
  return self._ajax_upload(request)
Datei "/home/tobi/Envs/academic/src/ajaxuploader/ajaxuploader/views.py", Zeile 53, in _ajax_upload
  success = backend.upload(upload, filename, is_raw)
Datei "/home/tobi/Envs/academic/src/ajaxuploader/ajaxuploader/backends/base.py", Zeile 27, in upload
  chunk = uploaded.read(self.BUFFER_SIZE)
Datei "/home/tobi/Envs/academic/lib/python2.7/site-packages/django/http/__init__.py", Zeile 301, in read
  return self._stream.read(*args, **kwargs)
Datei "/home/tobi/Envs/academic/lib/python2.7/site-packages/django/test/client.py", Zeile 51, in read
  assert self.__len >= num_bytes, "Cannot read more than the available bytes from the HTTP incoming data."