小编gui*_*dot的帖子

Python 单元测试:具有自己的构造函数的测试用例类在标准库中失败

我有这个普通的单元测试,它可以按预期工作,只要我省略了构造函数。

import sys
import unittest

class Instance_test(unittest.TestCase):

  def __init__(self):
     super(Instance_test, self).__init__()
     self.attribute = "new"

  def test_something(self):
     pass

  def test_other(self):
     self.assertTrue(True)
     pass

  def setUp(self):
     pass

  def tearDown(self):
     pass

def suite():
  return unittest.makeSuite(Instance_test, "test")

def main():
  runner = unittest.TextTestRunner(sys.stdout)
  runner.run(suite())

if __name__ == "__main__":
   main()
Run Code Online (Sandbox Code Playgroud)

使用构造函数获取此回溯:

 回溯(最近一次调用最后一次):
   文件“f:\gt\check.py”,第 31 行,在 main() 中
   文件“f:\gt\check.py”,第 28 行,在主目录中
      runner.run(suite())
   文件“f:\gt\check.py”,第 24 行,套件
    返回 unittest.makeSuite(Instance_test, "test")
  文件“C:\Python34\lib\unittest\loader.py”,第 374 行,在 makeSuite 中
    测试用例类)
  文件“C:\Python34\lib\unittest\loader.py”,第 70 行,在 loadTestsFromTestCase
    Loaded_suite = self.suiteClass(map(testCaseClass, testCaseNames))
  文件“C:\Python34\lib\unittest\suite.py”,第 24 行,在 __init__ 中
    self.addTests(测试) …

python unit-testing

5
推荐指数
2
解决办法
3952
查看次数

智能卡的响应状态字0x61xx的含义是什么?

我编写了一个Java Card小程序,它将一些数据保存在偏移量的APDU缓冲区中ISO7816.OFFSET_CDATA,并将这些字节作为响应发送.

Util.arrayCopy(Input_Data, (short)0, buffer, (short) ISO7816.OFFSET_CDATA, (short)Datalength);
apdu.setOutgoing();
apdu.setOutgoingLength((short)(DataLength) );

apdu.sendBytesLong(buffer, ISO7816.OFFSET_CDATA, (short)(DataLength));
Run Code Online (Sandbox Code Playgroud)

我在模拟器中测试了这个没有任何问题.但是当我在一张真正的智能卡(由金雅拓制造的Java Card v2.2.1)上进行测试时,我将状态字0x6180作为响应.

我的命令APDU是00 40 00 00 80 Data,其中数据长度为128字节,因此缓冲区中有4 + 128字节,(260-(4 + 128))字节为空.

protocols error-code apdu smartcard javacard

3
推荐指数
1
解决办法
716
查看次数

伪序列对象:终止所需的异常?

我生活在假设中,定义_ _len_ __ _getitem_ _方法对于一个类来说已经足够了,所以它的实例可以通过a迭代for element in instance:,直到它被违反了一个例子.我的原始代码完全不同,但这显示了很好地进入无限循环的问题:

class Limited(object):
    def __init__(self, size=5):
        self.size = size

    def __len__(self):
        return self.size

    def __getitem__(self, item):
        return item*10

if __name__ == "__main__":
    test = Limited(4)
    assert len(test) == 4

    for q in test:
        print q
Run Code Online (Sandbox Code Playgroud)

我找不到对终止迭代循环的要求的具体引用,但似乎如果不想遵守完整的Iterator协议,则需要像IndexError或StopIteration这样的异常才能终止.

这是正确的,在哪里找到它记录?

python python-2.7

3
推荐指数
1
解决办法
24
查看次数

为什么我不能分开"|" 在clojure

我试图在clojure中分割一个字符串" Hello|World"但是当使用split方法时" (clojure.string/split x #"|")"我得到了一个奇怪的结果,我得到了这个"[h e l l o | w o r l d]".任何人都可以告诉我它为什么这样做,我怎么能把它分开来得到[hello world]

regex clojure

0
推荐指数
1
解决办法
215
查看次数