体悟与总结之虫师作品《Web接口开发与自动化测试...Python..》问题处理(持续更新。。。)
在亚马逊购买了此书,在实际看完并身体力行地操作每一行代码后,也在该站留下了符合当时见解的评论。文中确实有不少令人疑惑的地方,因为很多细节没有谈到,可能虫师本人经验丰富没遇到,我作为小白遇到不少,但没有被吓退,一个一个解决好并总结在这里。
-----------------------------
这本书可以说虫师确确实实花了不少心思去做的。虫师姓胡,正好我也姓胡,但是我没有虫师那么优越的先天条件,也没有虫师那么博大的技术体系,而且我还要来吐槽一下下。
这本书可以说是虫师得意之作,测试能涉足接口、性能、安全领域,并能由自动化处理完成,已经难能可贵。但是通篇大约翻了下,测试工具繁多,技术讲到而不详谈,此书实在是为有一定脚本语言基础的人设计的,那些入门的人没办法深入看,有技术的人看这个又显得多余。而本书很多工具提到了也简单写了一两页操作介绍,但总是讲的不详尽,点到了就跳下去讲下一 个。综合看来,此书只不过是虫师的名片,上面印着,我会XX工具,在coding能力上有不俗的造诣甚至能出书。所以此书购买者需慎重。你能阅读完廖雪峰先生的“Python3”的免费教程,再来考虑买此书吧。
接下来是学习过程中出现的问题,『 书中没提到的点,这里也可作为补充|| 以下仅适用于2017年的第二次印刷版』
1、pip安装下载报错的问题(强制重装)
安装python后,内置pip库的问题,因为我的安装包‘python-3.6.3-amd64.exe’里面pip是最新的,但死活也用不了,更
新也更新不了,因为是最新的,最后找到办法,强制重新安装到最新:python -m pip install --upgrade --force-
reinstall pip
2、使用python3,但是本地同时有python2
熟练使用python2后,安装python3是否共存的问题,我用到现在觉得两者差别不大,所以还是弃用python2,毕竟真正的差
别没到一定的深度是无需了解的,还是用本书的标配(python3),免得使用过程各种问题。
2-1、克隆GitHub源码后使用问题
最最最关键一点,注意缩进,无论是从网页上copy还是本地代码文件里复制,都要注意缩进。给大家个小技巧,全选报
错行及附近行代码,查看前面字节显示(这里sublime可以看到前面几个点,或者是几条横杠)
3、执行代码命令问题(若命令为 python3 '项目' runserver,需更换exe名字)
python3安装完成后更换本地exe名字的问题,为了和本书相同,还是到安装目录,把python.exe换成python3.exe
4、代码里添加中文报错(只可在顶部添加)
想在代码里加注释的问题,只要你想加注释,务必在顶部加上一行“# -*- coding: utf8 -*-”,这样代码文件被执行后
不会报错
4-1、下载bootstrap包后需要再度安装到 ..Python3\Lib\site-packages
下载后的bootstrap并不能直接使用,需要执行setup.py,这里笔者是通过cmd进入下载目录(直接e:进入E目录,DIR查
看目录),python3 setup.py才把这个库安装到python3里,书中并未提及。
4-2、双下划线的说明,以及双等于号 等等
第79页没有对单下划线和双下划线作说明:name__contains这里是双下划线
4-3、克隆源码需注意
第80页,guest_manage.html,我是从GitHub上copy的源代码,但是里面代码并不纯净,有“<!-- {% endblock %} -->
”,放在html模板里容易报错,这里我全删了,其它朋友也可以删了试试看。
5、要熟悉url路径
第88页。仅修改html是显示出“签到”字段,但是,没有告诉我们不是在admin对象位置下,而是在index路径下--纠结了
三天才发现
6、记得在要调用修饰的html文件里加引用
第89页,html没有html和head、body等标签,最最关键的是没有提醒我们一定要加载bootstrap3库
7、引入库要准确
第91页,views.py 头部导入库未提醒一定要from sign.models import * (之前只有导入Event)
8、多开cmd操作
分别执行python3 manage.py runserver和python3 manage.py shell等等,没有告知我们可以另开一个cmd
9、创建和使用名称应保持一致
第107页,方法名称错误,应该是‘test_event_manage_success’、‘test_event_manage_search_success’,108页同样
的错误
10、非重定向执行后报错处理
第106页,并没有重定向,response.status_code=302应该是‘=200’
11、克隆代码缩进问题(参考2-1)
从GitHub上下载的源码部分有缩进问题,一堆缩进都没解决,需要一个一个敲好。
12、注意此处sql应保持开头shell的空格
第174页,sql里的空格没有单独来提示,坑了很久
13、新建库与代码脚本的互通处理,需要改表结构
175页,sign_event表里没 有更改表结构,因为数据源里缺少字段"updata_time",但是表结构里这个是“非空”的
(sign_guest同理)
14、新接口调试过程需要不断清洗数据(书中都未提及)
别想一次性把第十章运行正确,如果有报错就会存在脏数据。。。要配合清理数据库,书中只字未提。
15、数据不断报错提示“已存在”--新数据库启用问题,需要更改底层配置
仍然是第十章,再次提及清理数据的问题,克隆的新数据库地址并没有与本地的项目关联进去,应该要更改之前django项
目的设置,即去'../guest/settings'里查找到'DATABASES'更改配置为'NAME':‘新数据库’。改完加个标记,或者记得改回
来。
16、书中时间数据过时处理,需要调整书中所填写数据
第十章框架里的test_data,里面的event数据,start_time一定要该超前的超前。
------------------------分割线,更新于20180619,------------------------
上一篇: MyBatis动态sql