面试快手的客户端测试(直播)

【面试快手的客户端测试(直播)】别裁伪体亲风雅,转益多师是汝师。这篇文章主要讲述面试快手的客户端测试(直播)相关的知识,希望能为你提供帮助。
(1)有红,黄,兰三种颜色的花:
存在如下转换关系
1红+1黄+1兰=1瓶水
2红+1黄=1兰
2黄+1兰=1红
2兰+1红=1黄
假设红黄兰三种颜色的花的数量分别是x,y,z
求最多能换多少水
(2) 括号字符串的最长有效长度(类比有效的括号)
??? https://leetcode-cn.com/problems/longest-valid-parentheses/solution/zui-chang-you-xiao-gua-hao-by-leetcode-solution/??
(3)如何解决ipv4地址不够用的情况,
NAT地址转换协议
子网掩码
增加路由器
划分vlan
(4)http和https
(5)职业规划
(6) flask的蓝图
作用就是将功能与主服务分开,蓝图没有run方法
a. 你有一个客户管理系统,最开始的时候,只有一个查看客户列表的功能,后来你又加入了一个添加客户的功能(add_user)模块, 然后又加入了一个删除客户的功能(del_user)模块,然后又加入了一个修改客户的功能(up_user)模块,在这个系统中,就可以将把查看客户,修改客户,添加客户,删除客户的四个功能做成蓝图加入到客户管理系统中,这样就实现了单个应用模板与主服务器分开管理
b.蓝图对于视图方法模块化、大项目协同开发过程中的一个很好的工具
(7)迭代器,生成器和装饰器

迭代器是一个可以记住遍历的位置的对象。
迭代器对象从集合的第一个元素开始访问,直到所有的元素被访问完结束。迭代器只能往前不会后退。
迭代器有两个基本的方法:iter() 和 next()。

> > > list=[1,2,3,4]
> > > it = iter(list)# 创建迭代器对象
> > > print (next(it))# 输出迭代器的下一个元素
1
> > > print (next(it))
2
> > >

创建一个迭代器
把一个类作为一个迭代器使用需要在类中实现两个方法 __iter__() 与 __next__() 。

如果你已经了解的面向对象编程,就知道类都有一个构造函数,python 的构造函数为 __init__(), 它会在对象初始化的时候执行。

class MyNumbers:
def __iter__(self):
self.a = 1
return self

def __next__(self):
x = self.a
self.a += 1
return x

myclass = MyNumbers()
myiter = iter(myclass)

print(next(myiter))
print(next(myiter))
print(next(myiter))
print(next(myiter))
print(next(myiter))

生成器
生成器就是一个迭代器。
使用了 yield 的函数被称为生成器(generator)
在调用生成器运行的过程中,每次遇到 yield 时函数会暂停并保存当前所有的运行信息,返回 yield 的值, 并在下一次执行 next() 方法时从当前位置继续运行
#!/usr/bin/python3

import sys

def fibonacci(n): # 生成器函数 - 斐波那契
a, b, counter = 0, 1, 0
while True:
if (counter > n):
return
yield a
a, b = b, a + b
counter += 1
f = fibonacci(10) # f 是一个迭代器,由生成器返回生成

while True:
try:
print (next(f), end=" ")
except StopIteration:
sys.exit()

??https://www.runoob.com/python3/python3-iterator-generator.html??
(8)用迭代器写斐波那契数列
def fib(num):
n=0
a,b=0,1
while n< num:
print(b)
yield
a,b=b,a+b
n=n+1
a=fib(30)
next(a)
next(a)

(9)为啥计算机是32位
CPU所能处理的数据量范围,因为在计算机中处理的数据都是二进制来计算的,32位就是2的32次方,64也是一样的道理
(10)常用的测试用例设计方法
测试用例常见的设计方法有:等价类划分法、边界值分析法、错误推测法、判定表法、正交实验法,因果图



    推荐阅读