好的哈,我去了解学习一下
多谢多谢!因为自身从未真正接触过接口,所以能指点一下接口协议除了 TCP/HTTP 之外,目前主流的还有哪些呢?框架主流的都是哪些呢?
试试 self.login()
我也是小白,所以具体原因我也没法帮你。前些日子我测试时也遇到类似的问题,服务器压力很小,但是线程数增加,响应时间就等比增加。只是没有出错。
查看结果树里面的时间,lantency 占了 loadtime 的绝大部分。猜测是排队时间过长,但最终开发也没有定位到原因何在。
恩,可以看到图片了
并发请求时间=200(线程数)÷【(Samples) 聚合报告÷300(循环持续时间)】
这个不用这样算的。直接从聚合报告里面读出来的就已经是请求响应时间了。
图片全都看不到哦。
默认 jmeter 堆大小只有 512M,你 5000 线程肯定不够用的。既然机器内存那么大,分配个 4G,8G 给 jmeter 吧
这只是一个打印语句,对结果当然没影响。。。
把name打印出来看看是什么,就知道了。不过这里的确没有必要存在这条判断语句。
那可能是环境配置的问题?这个我也不知道了。。
是不是接口本身的问题呢?只用一个线程执行也会这样么?
那就没有问题了。。。是我没有重新下载 py 代码导致。。
除了报告乱码,暂时没有其他问题。
剩下的就是好好来消化你这些代码了。才开始学习接口自动化,nosetest 这个框架也不熟悉,json 也不熟悉,所以要学习的很多呢!!多谢你给指了一个方向!
装了新插件啦。并且也执行了 pip uninstall nose-html-reporting。。
我也是 chrome,firefox 也打开看了,都是乱码。。。
右键看编码已经是 utf-8 了
另外,刚刚运行第一遍的时候基本都是正确的,后面改了 io,好多失败的。。只看 test_q 这一个,发现检查 (大话西游)的时候失败了。但是我看返回的响应里面都是 大话西游之 xxx 之类的。不知道是不是那个检查的语句问题,还是我这边的其他问题。
速度
有一点小问题,nose_html_reporting 的 init 中,引入了 StringIO,在 py3 中,没有这个模块了。应该引入 io,使用 io.StringIO 就可以了。
另外,我看邮件中中文是正常显示的。但是如果直接打开 html 文件的话,中文却是乱码的哦,这个怎么破呢?
另外,关于授权码,163 邮箱可以打开或关闭授权码,开了就得使用授权码,没开就使用密码。QQ 的话,好像就必须使用授权码了。
我把所有的 encode('utf-8') 都注释掉了,然后就可以运行了。只是有报错。可能还是哪里编码不对吧。
对了,代码开头的 reload 和设置 utf-8 的两句,我也注释掉了。。
这是安装后的包
肯定是都有安装的啦
刚刚试过把--with-html 和--html-report 改成了--with-xunit --xunit-file,可以运行了,但是一堆报错啊。。。难道说,nosetests 不支持 py3 吗??
基本都是这样的错
nosetests -h 的部分选项
看了下 nosetests -help,真的没有--with-html 和--html-report 这两个选项。。。。。
执行的时候提示没有--with-html 这个选项?为嘛呢?
直接运行脚本的话,也没有任何报告输出,似乎都没有执行测试。。。
这边环境是 python3 的
上班时间一般不上 wechat 哈,你可以加我 Q,三 27 三三 0 三 0 三。另外,我也是新手来的。。。。
1、caseFlag = Params.caseFlag 这个 Flag 怎么来的? 我想在 excel 里增加 skip 标记
RE:这个 flag 是我从 excel 中读取出来的,这里是一个 case 对应一行。数据对应 excel 如下:
2、caseName = method.get_curfunc_name() 你这个是想修改报告里的 case 名称吗? 我试过不生效,有什么版本在 excel 里定义用例名称吗
RE:这个的确是想在报告里记录 case 的名称,get_curfunc_name() 这个函数封装的是获取当前调用它的对象的名称,这里也就是 case 的名称了。
def get_curfunc_name():
return (sys._getframe().f_back.f_code.co_name)
def get_backfunc_name():
return (sys._getframe().f_back.f_back.f_code.co_name)
.......
#casename和其他要记录进入报告的数据,封装在一个list里面,最后再统一写入excel
data = [caseName, "新增用户"]
data.append(info)
#再调用写入报告函数
报告大致如下:
尽量在 pycharm 里面新建工程,新建 package,再新建 py 文件吧。