1
Pyodbc를 사용하여 로컬 SQL Server 데이터베이스를 쿼리하는 Python의 단위 테스트를 작성하는 데 어려움을 겪고 있습니다.단위 테스트에서 pyodbc 사용
다음 코드를 실행 ... 그러나
import pyodbc
import random
import unittest
from EmailSender import EmailSender
class TestSequenceFunctions(unittest.TestCase):
def setUp(self):
self.email_sender = EmailSender()
self.other_email_sender = EmailSender()
def test_for_initialisation_variables(self):
"""
Tests to check that the object is created properly
"""
self.assertTrue(self.email_sender.server)
self.assertTrue(self.email_sender.errorLogFile)
self.assertTrue(self.email_sender.connection)
self.assertTrue(self.email_sender.cursor)
self.assertTrue(self.email_sender.siteAuth)
self.assertTrue(self.email_sender.apiCallsLimitPerRun)
def test_SQL_Server_Connection(self):
for value in self.email_sender.cursor.execute("select * from sys.tables"):.
print value
, 내가 코드에 두 번째, 거의 동일한 테스트를 추가 할 때 ... 세 번째 시험은 다음과 같은 오류와 함께 실패
import pyodbc
import random
import unittest
from EmailSender import EmailSender
class TestSequenceFunctions(unittest.TestCase):
def setUp(self):
self.email_sender = EmailSender()
self.other_email_sender = EmailSender()
def test_for_initialisation_variables(self):
"""
Tests to check that the object is created properly
"""
self.assertTrue(self.email_sender.server)
self.assertTrue(self.email_sender.errorLogFile)
self.assertTrue(self.email_sender.connection)
self.assertTrue(self.email_sender.cursor)
self.assertTrue(self.email_sender.siteAuth)
self.assertTrue(self.email_sender.apiCallsLimitPerRun)
def test_SQL_Server_Connection(self):
for value in self.email_sender.cursor.execute("select * from sys.tables"):.
print value
def test_getSites_method(self):
for value in self.other_email_sender.cursor.execute("select * from sys.tables"):.
print value
메시지 :
Error: ('IM001', '[IM001] [unixODBC][Driver Manager]Driver does not support this function (0) (SQLRowCount)')
ps
작성한 email_sender 개체 하나만 만들었지 만 처음부터 다시 실행할 수 없으므로 쿼리가 동일하게 변경되고 작동하지 않을 때 다른 연결과 커서가 추가되었습니다. 아무런 문제가 될 수 없다 : 커서가있는 위치.