Ich habe einen Testfall, der eine Strömung in einem API-Tests (verwendet requests.Session()
und mehrere Anrufe zu unserem Backend macht.)Was kann dazu führen, dass dieses Unicode-Objekt in nosetests lib nicht aufrufbar ist?
Dieser Testfall geht auf meinem Mac und anderen Völkern macs. Aber wenn es in Jenkins ausgeführt wird, bekomme ich einen Fehler. Es gibt andere ähnliche Testfälle wie diese, die ohne Probleme in Jenkins bestehen. Leider kann ich den Testcode nicht selbst teilen.
Jenkins läuft auf Ubuntu 14.04
Aber hier sind erste Zeilen des Testcodes, wenn es hilft.
# filename: test_payment_visa.py
import unittest
from tests.utils import WWHTTPClient
import math
from nose.plugins.attrib import attr
class TestPaymentWorkflow(unittest.TestCase):
def setUp(self):
self.ww_api = WWHTTPClient()
def test_payment_visa(self):
"""Test for Payment Workflow via VISA"""
Hat jemand eine Idee, was damit verbunden werden kann?
Traceback (most recent call last):
File "/var/lib/jenkins/.virtualenvs/api-tests/bin/nosetests", line 11, in <module>
sys.exit(run_exit())
File "/var/lib/jenkins/.virtualenvs/api-tests/local/lib/python2.7/site-packages/nose/core.py", line 121, in __init__
**extra_args)
File "/usr/lib/python2.7/unittest/main.py", line 95, in __init__
self.runTests()
File "/var/lib/jenkins/.virtualenvs/api-tests/local/lib/python2.7/site-packages/nose/core.py", line 207, in runTests
result = self.testRunner.run(self.test)
File "/var/lib/jenkins/.virtualenvs/api-tests/local/lib/python2.7/site-packages/nose/core.py", line 62, in run
test(result)
File "/var/lib/jenkins/.virtualenvs/api-tests/local/lib/python2.7/site-packages/nose/suite.py", line 177, in __call__
return self.run(*arg, **kw)
File "/var/lib/jenkins/.virtualenvs/api-tests/local/lib/python2.7/site-packages/nose/suite.py", line 224, in run
test(orig)
File "/usr/lib/python2.7/unittest/suite.py", line 70, in __call__
return self.run(*args, **kwds)
File "/var/lib/jenkins/.virtualenvs/api-tests/local/lib/python2.7/site-packages/nose/suite.py", line 75, in run
test(result)
File "/var/lib/jenkins/.virtualenvs/api-tests/local/lib/python2.7/site-packages/nose/suite.py", line 177, in __call__
return self.run(*arg, **kw)
File "/var/lib/jenkins/.virtualenvs/api-tests/local/lib/python2.7/site-packages/nose/suite.py", line 224, in run
test(orig)
File "/var/lib/jenkins/.virtualenvs/api-tests/local/lib/python2.7/site-packages/nose/suite.py", line 177, in __call__
return self.run(*arg, **kw)
File "/var/lib/jenkins/.virtualenvs/api-tests/local/lib/python2.7/site-packages/nose/suite.py", line 224, in run
test(orig)
File "/var/lib/jenkins/.virtualenvs/api-tests/local/lib/python2.7/site-packages/nose/suite.py", line 177, in __call__
return self.run(*arg, **kw)
File "/var/lib/jenkins/.virtualenvs/api-tests/local/lib/python2.7/site-packages/nose/suite.py", line 224, in run
test(orig)
File "/var/lib/jenkins/.virtualenvs/api-tests/local/lib/python2.7/site-packages/nose/case.py", line 45, in __call__
return self.run(*arg, **kwarg)
File "/var/lib/jenkins/.virtualenvs/api-tests/local/lib/python2.7/site-packages/nose/case.py", line 138, in run
result.addError(self, err)
File "/var/lib/jenkins/.virtualenvs/api-tests/local/lib/python2.7/site-packages/nose/proxy.py", line 131, in addError
plugins.addError(self.test, err)
File "/var/lib/jenkins/.virtualenvs/api-tests/local/lib/python2.7/site-packages/nose/plugins/manager.py", line 99, in __call__
return self.call(*arg, **kw)
File "/var/lib/jenkins/.virtualenvs/api-tests/local/lib/python2.7/site-packages/nose/plugins/manager.py", line 167, in simple
result = meth(*arg, **kw)
File "/var/lib/jenkins/.virtualenvs/api-tests/local/lib/python2.7/site-packages/nose/plugins/xunit.py", line 288, in addError
id = test.id()
File "/var/lib/jenkins/.virtualenvs/api-tests/local/lib/python2.7/site-packages/nose/case.py", line 85, in id
return self.test.id()
TypeError: 'unicode' object is not callable
Sie bieten nicht genügend Kontext zum Beantworten. Die Fehlermeldung besagt jedoch grundsätzlich, dass Sie eine Zeichenfolge irgendwo behandeln, als ob sie eine Methode oder Funktion wäre. –
Ich habe erwartet, dass das Problem nicht in dem Code ist, den ich geschrieben habe. Der Fehler ist in /site-packages/nose/case.py Zeile 85 in der Methode, die versucht, eine Beschreibung des Testfalls zu erhalten. Und dieser Fehler erscheint nicht auf meinem lokalen Rechner. – raitisd