2011-07-15 4 views
0

私持っている私は、例えば新しいタグ、または新しいタイプを追加することができますどのようにXML文書使用sax.utils

self.errorlist.append(
      '<testcase classname=%(cls)s name=%(name)s time="%(taken)d">' 
      '<%(type)s type=%(errtype)s message=%(message)s><![CDATA[%(tb)s]]>' 
      '</%(type)s></testcase>' % 
      {'cls': self._quoteattr('.'.join(id.split('.')[:-1])),       
      'name': self._quoteattr(id.split('.')[-1]),         
      'taken': taken,                
      'type': type,                 
      'errtype': self._quoteattr(nice_classname(err[0])),       
      'message': self._quoteattr(exc_message(err)),         
      'tb': escape_cdata(tb),              
      })  

を作成し、次のコード"DB" 私は

self.errorlist.append(
     '<testcase classname=%(cls)s name=%(name)s db=%(db)s time="%(taken)d">' 
     '<%(type)s type=%(errtype)s message=%(message)s><![CDATA[%(tb)s]]>' 
     '</%(type)s></testcase>' % 
     {'cls': self._quoteattr('.'.join(id.split('.')[:-1])), 
     'name': self._quoteattr(id.split('.')[-1]), 
     'taken': taken, 
     'type': type, 
     'errtype': self._quoteattr(nice_classname(err[0])), 
     'message': self._quoteattr(exc_message(err)), 
     'tb': escape_cdata(tb), 
     }) 

を試みたが、得た:KeyError例外を 'db' と

は私も(デシベル)の単なる%を試みたが、エラーが発生しました: NameError:グローバル名 'DB' が定義されていません

後はxml.saxインポートsaxutilsからのインポート

ある

答えて

0

解決:以下のコードを使用して、私は、DB = "MYSを取得するには阿部でしたXML文書内の「ql」

self.errorlist.append(
      '<testcase classname=%(cls)s name=%(name)s db="%(db)s" time="%(taken)d">' 
      '<%(type)s type=%(errtype)s message=%(message)s><![CDATA[%(tb)s]]>' 
      '</%(type)s></testcase>' % 
      {'cls': self._quoteattr('.'.join(id.split('.')[:-1])), 
      'name': self._quoteattr(id.split('.')[-1]), 
      'db': self.db, 
      'taken': taken, 
      'type': type, 
      'errtype': self._quoteattr(nice_classname(err[0])), 
      'message': self._quoteattr(exc_message(err)), 
      'tb': escape_cdata(tb), 
      })