pytest学习笔记

pytest 优于其他测试框架的地方:

1、简单的测试可以简单的写

2、复杂的测试也可以简单的写

3、测试的可读性强

4、易于上手

5、断言失败仅使用原生assert关键字,而不是self.assertEqual()或者self.assertLessThan()

6、pytest可以运行有unitest和nose编写的测试用例

pytest不依赖python的版本,python2和3都能安装最新版的pytest

Tasks项目:

tasks程序通过CLI交互,底层编码通过调用API实现

 

很久没有更新博客园,比较好听点的原因是由于项目比较忙,没有时间整理写脚本过程中的问题。实际上是由本人的“懒”,不想写。不写不记录慢慢的就导致了懒癌的形成,久而久之某些知识回了之后就忘记了,好了 废话不多说 记录下最近写代码过程中的一些问题

 

1、写接口脚本时候,为了实现活动榜单数据制造,需要写一个登录方法  从json返回值中取出token、uid(uid 用来造主播榜单 给不同的主播送礼,token 不同用户给同一个主播送礼,造用户排行榜的榜单)。礼用config文件存储,将多个token从接口中读出存放在list,然后写入config.txt文件中,用来后面送礼 接口读取数据。但是发下config只能存入字符串str,于是后面想一个个的读取就失败了。

如果使用如下方法直接转换成list 不能实现 我想要的list 例如[

"ODAxMzNfRjU5QkQ2NUY3RURBRkIwODdBODFENERDQTA2QzQ5MTBfMV84NjMzODkwMzY5MjU3OTNfMTU3MTcyMjQ5NV9iYW5iYW4xMjM0NTY=", "ODAxMzRfRjU5QkQ2NUY3RURBRkIwODdBODFENERDQTA2QzQ5MTBfMV84NjMzODkwMzY5MjU3OTNfMTU3MTcyMjQ5NV9iYW5iYW4xMjM0NTY="

]:

token_list = list(Tool().token_list)  这个函数直接读取到的是 ['O','D','A','x'....]

 

所以查询资料之后发现 str 和list、tuple、dict之间的转化 需要用到方法eval:

uid_list = list(eval(Tool().uid_list))

或者使用split 将字符串切片之后分割成列表,观察如上列表中的字段 想要转换成想要的列表,需要通过逗号切片 如:

uid_list = Tool().uid_list.split(',')
以上为两种实现方式

 

 

 2、在通过抓包后台接口 实现脚本调用过程中报如下错误,原因是由于传参中没有json dumps:


{"timestamp":"2019-10-24T07:08:04.043+0000","status":400,"error":"Bad Request","message":"JSON parse error: Unrecognized token 'headImgUrl': was expecting ('true', 'false' or 'null'); nested exception is com.fasterxml.jackson.core.JsonParseException: Unrecognized token 'headImgUrl': was expecting ('true', 'false' or 'null')\n at [Source: (PushbackInputStream); line: 1, column: 12]","path":"/family-web/robotBack/robotRegister"}

 

 

 

 

posted @ 2019-03-19 19:45  小青~  阅读(527)  评论(0编辑  收藏  举报