python 测试用例
2024-08-29 10:31:34
mydict.py
代码如下:
class Dict(dict): def __init__(self, **kw):
super().__init__(**kw) def __getattr__(self, key):
try:
return self[key]
except KeyError:
raise AttributeError(
r"'Dict' object has no attribute '%s'" % key) def __setattr__(self, key, value):
self[key] = value
编写mydict_test.py
如下:
import unittest from Dict import Dict class TestDict(unittest.TestCase): def setUp(self):
print('setUp...') def tearDown(self):
print('tearDown...') def test_init(self):
d = Dict(a=1, b='test')
self.assertEqual(d.a, 1)
self.assertEqual(d.b, 'test')
self.assertTrue(isinstance(d, dict)) def test_key(self):
d = Dict()
d['key'] = 'value'
self.assertEqual(d.key, 'value') def test_attr(self):
d = Dict()
d.key = 'value'
self.assertTrue('key' in d)
self.assertEqual(d['key'], 'value') def test_keyerror(self):
d = Dict()
with self.assertRaises(KeyError):
value = d['empty']
print(value) def test_attrerror(self):
d = Dict()
with self.assertRaises(AttributeError):
value = d.empty
print(value) if __name__ == '__main__':
unittest.main()
最新文章
- sh
- ruby on rails 实战(二)
- C语言中结构体 自引用 和 相互引用
- HoloGraphLibrary
- 在CentOS6.4中安装配置LAMP环境的详细步骤
- Hive[5] HiveQL 数据操作
- 【Stage3D学习笔记续】山寨Starling(十二):总结和一些没提到的东西
- Mysql 源码编译教程贴
- Jackson将json字符串转换成List<;JavaBean>;
- php 之 类,对象
- 快速构建Windows 8风格应用28-临时应用数据
- 注册WinEdt 7
- 在Editplus中配置java的(带包)编译(javac)和运行(java)的方法
- shell 简单脚本编程
- 推荐安全且匿名的邮箱 ProtonMail -- PGP算法
- Java之for循环嵌套练习
- PostgreSQL函数(存储过程)----笔记
- Java programming problems
- selenium元素定位(Java)
- JAVA(四)类集/枚举
热门文章
- Erlang进程堆垃圾回收机制
- js前端3des加密 后台java解密
- Xamarin.Android 实现虾米音乐搜索下载
- Service-level agreement
- dataTables-details 1.9
- Deep Learning 33:读论文“Densely Connected Convolutional Networks”-------DenseNet 简单理解
- (linux)container_of()宏
- react native 之页面布局
- 解决virtualbox安装增强工具失败的问题
- Why is an &#39;Any CPU&#39; application running as x86 on a x64 machine?