软件测试的对象包括:源程序、目标程序、数据及相关文档
使用结构图描述软件系统的层次和分块结构关系,它反映了整个系统的功能实现以及模块与模块之间的联系与通信,是未来程序中的控制层次体系。 深度:表示控制的层数。 宽度:表示整体控制跨度(最大模块数的层)。 扇入:调用一个给定模块的模块个数。 扇出:一个模块直接调用的其他模块数。 原子模块:树中位于叶子结点的模块。
数据流图直接支持系统的功能建模
软件设计中,常用的过程设计工具有::①图形工具:程序流程图、N-S图、PAD图、HIPO图;②表格工具:判定表;③语言工具:PDL(伪码)。
将属性、操作相似的对象归结为类,也就是说,类是具有共同属性、共同方法的对象的集合。所以,类是对象的抽象,它描述了属于该对象类型的所有对象的性质,而一个对象则是其对应类的一个实例。
确认测试的任务是验证软件的功能和性能及其他特性是否满足了需求规格中确定的各种需求,以及软件配置是否完全。
集成测试是测试和组装软件的过程。它是把模块在按照设计要求组装起来的同时进行测试,主要目的是发现与接口有关的错误。集成测试的依据值概要设计说明书
数据库系统内部采用三级模式和模式间的二级映射,是为了提高数据库的数据独立性:物理独立性与逻辑独立性
如果某一属性依赖于其他非主键属性,而其他非主键属性又依赖于主键,那么这个属性就是间接依赖于主键,这被称作传递依赖于主属性。
变量名首字符不能是数字,标识符中间不能出现空格,长度没有限制。
x = 'A\0B\0C'
print(len(x))
# "\"为转义字符,"\0"表示一个空格,长度记为1,所以字符串长度为5。
x = 2 + 9 * ((3*12) - 8) // 10
print(x)
# x//y计算x与y之整数商,即不大于x与y之商的最大整数
函数可以没有return,此时函数并不返回返回值。当函数使用return返回多个值时,可以使用一个变量或多个变量来保存结果。
for s in "PythonNCRE":
if s=="N":
continue
print(s,end="")
try:
n = input("请输入一个整数:")
def pow2(n):
return n**2
pow2(n)
except:
print("程序执行错误")
# 无论用户输入什么内容,input()函数都以字符串类型返回结果。所以变量n是字符串类型,计算n的平方时产生异常
列表没有长度限制,元素类型可以不停,不需要预定义长度。
由于字典元素"键值对"中键是值的索引,因此,可以直接利用键值对关系索引元素。
ls = ['book',23,[2010,'stud1'],20]
print(ls[2][1][-1])
# 该操作沿用序列类型的索引方式,即正向递增序号和反向递减序号,使用中括号作为索引操作符,
# 索引序号不能超过列表的元素范围,否则会出现IndexError错误。正向递增序号从0开始,反向递减序号从-1开始。
d = {'food':{'cake':1,'egg':5}}
print(d.get('cake','no this food'))
# d.get(key,default)根据键信息查找并返回值信息,如果key存在则返回相应值,否则返回默认值。
a = [[1,2,3], [4,5,6], [7,8,9]]
s = 0
for c in a:
for j in range(3):
s += c[j]
print(s)
当文件以文本方式打开时,读写按照字符串方式;当文件以二进制方式打开时,读写按照字节流方式。
split()通过指定分隔符对字符串进行切片。 join()方法用于将序列中的元素以指定的字符连接生成一个新的字符串。 replace()方法把字符串中的old(旧字符串)替换成new(新字符串)。 format()方法用于解决字符串和变量同时输出的格式安排问题
fo = open("book.txt","w")
ls = ['book','23','201009','20']
fo.write(str(ls))
fo.close()
# str(x):将x转换为等值的字符串类型。 fo.write(s):向文件写入一个字符串或字节流