要看稳定程度,自动化也可以很稳定,看你怎么写。。
拿文档,当前语言调 C++ 动态链库做接口,自己写好接口调用层和验证处理层,不过得对方编译好后给文档,因为内透不了。
比如不喜欢用 rb 和 wb 的 msgpack 库做 dict 文件序列化,可以用 ujson 比 json 转储快内存低。
比如可以更换更好的链接方式 基于 python locust
def get_errCode(self, err_id: int) -> str:
"""使用 connect_ex根据errno获取errno字符串信息
正确返回0,错误返回errno
"""
if err_id in errno.errorcode.keys():
return os.strerror(err_id)
def socket_connect(self, ip_port: tuple, r_type:str='game_connect', m_name:str='socket_connect'):
"""game socket链接"""
s_time = time.time()
res = 0
try:
res = self.connect_ex(ip_port)
except Exception:
err = self.get_errCode(res)#失败返回errno
ed_time = (time.time() - s_time) * 1000
events.request_failure.fire(request_type=r_type, name=m_name, response_time=ed_time,
exception=err)
else:
assert res ==0
ed_time = (time.time() - s_time) * 1000
events.request_success.fire(request_type=r_type, name=m_name, response_time=ed_time,
response_length=0)
很不错,加油吴总
根据 logging 自研一个日志类更好,本身导入新的也有开销。 Print 调式语言加开关就行了,print 效率不低,要低也是后面用了不当的 + 追加,要用 format 模式。
看图片是没有 init.py 让当前目录变成模块。上面说的很对啊,要学下 python 导入机制
可以的。学习不分职业边界。
不好意思啊是定期通过一次。现在加入群了吗。
点赞了,写得不错。不过他们的这个对于自己的 X5 兼容性没做好。
这个好像有些不是框架的问题,框架是裸的 API,你的需求稍微自己开发下就出来了。动态解析可以把数据解析成字典,然后每次遍历字典内指定的深度,比如元素在 D3 层就只遍历 D3
赞一个
说明你离全栈太远了。接口自动化怎么回声和重连。云测 stf 优先二次开发的点和 node 版本要求?
是需要的,同步和异步刷新会出不少问题(这里要看你业务的刷新逻辑是什么和触发点 ,自动化都可以做)。客户端和服务器交互主要就是同步,如果没同步,客户端没有同步,又操作了别的并且应答了,就是连锁问题了。
多写代码就行,参考我之前每天下班回家困得不行也写 2 小时
ps:应用层除了搞清楚堆栈和代码申请空间多大,如何折叠和展开,其他应用层开发主要是唯熟而已啊
pytest 对于执行 case 文件的上层文件夹名字需要包含test和 test.py 里面的类 Test 要大写 有一些讲究。
看起来不错,回头用用看。
我建议是如果已经在 work 的手机 在数据库或者文件里面加 1 个状态标记,执行完释放了 adb 才修改回状态。
链接得时候,先遍历手机池子里 符合状态的手机。
会影响其他部署的,只能用虚拟环境。
方法一,空值针和野指针 在编译时的可以通过静态扫描。(作用不大)
方法二,运行时或者程序执行过程中比如修改或者解引用了,部分语言编译时和运行时的内存是否可变性质都不一样(所以第一种也没用),类似这种非编译时的用日志打印本地吧 出现一类问题的地方,统一批量修改一个地方。
编程习惯导致的 bug。
我前面做了 9 年功能测试以及测试管理,最近几年开始写代码。40 岁时应该是 C++ 和 java 写得比我现在 python 元编程还要强 3 倍
例子是非 OOP 的,但读书会上面强调过的,代码写起来一定要有类,构造器,类变量,成员函数,局部变量。严格按照面向对象来。如果不写面向对象,时间久了,会坑死自己的。
巨人不错的,有兴趣的可以去看看
有源工程会好做点吧,appium 挺好的,是 1 个自动化支持的服务。
你可以理解是 第一个区域 in 第二个区域去比对(第二个区域可迭代对象,第一个区域小于等于第二个区域,就可以走进去)。
if 或者 for 是让程序去选择执行路径走得进去和走不进去。测试这块大家都不容易,不要纠结。
if "aaa" in {"name":123}: #比较简单并且又不合法的。
pass