win 10安装fastrunner踩坑

偶然接触到fastrunner的自动化测试框架,觉得有点意思,想从头学习一下,部署环境,从头到尾,踩了些坑,记录一下:

一、安装

参考了这个博客:https://blog.csdn.net/weijiaxin2010/article/details/90080075。

有一些踩坑如下:

1.如果只是在本地部署,没有办法公开本机的真实ip,涉及到前端的ip更改,全部用localhost代替即可。

2.后台的requirements.txt文件中,具体内容订正如下:

Django == 2.1.3
django-cors-headers == 2.4.0
djangorestframework == 3.8.2
HttpRunner == 1.5.15
mysqlclient == 1.4.2.post1
beautifulsoup4 == 4.6.3
tornado == 5.1.1
django-celery == 3.2.2
我使用的是anaconda来作为包管理工具,新建虚拟环境,然后激活环境后,使用pip install -r requirements.txt安装依赖库,非常方便
3.安装过程中,在安装 anyjson>=0.3.3的时候报错了,报错如下:

 

 网上百度了一下,原因是在setuptools 58之后的版本已经废弃了use_2to3,解决办法是:只需安装setuptools 低于58版本就可以了

pip install setuptools==50.3.2

降低setuptools 版本后,pip 安装anyjson==0.3.3就不会报错了

4.安装mysqlclient的时候报错

提示找不到文件

 

 百度了,提示说要手动去下载mysqlclient的轮子,我查看了我本机的python是64位的,于是从官网下载了安装包

https://www.lfd.uci.edu/~gohlke/pythonlibs/#mysqlclient

 

 然后手动pip install 安装包来安装。

至此,发现requirements.txt里面还有错误,mysqlclient的版本更改成1.4.6即可(我本机python用的3.9版本)

5.在生成数据库迁移脚本时报错,提示from jinja2 import escape时报错,如下:

 

 网上百度,说在jinja2在3.1.0版本开始,就已经删除了escape模块,所以导入不了,我查看了本机的jinja2版本,确实是高于3.1.0的。(pip show jinja2)

解决方法是在requrements.txt中限制jinja2的版本<3.1.0

jinja2<3.1.0

重新安装一遍jinja2,数据库迁移通过。

6.执行数据库迁移脚本出错,原因是mysql.server没有正确配置以及启动。启动时遇到的密码的问题,百度解决的

参考了以下文档:https://blog.csdn.net/baidu_39629638/article/details/114335371

配置完数据库后,导入数据时,还有一个问题,导致导入失败,出现错误:

 

 百度原因,是说目前最新的mysql8.0对用户密码的加密方式为caching_sha2_password, Django暂时还不支持这种新增的加密方式。所以只需要将用户加密方式改为老的加密方式即可。

解决方案:

1.登录mysql,

mysql -u root -p

2.执行命令查看加密方式

use mysql;
select user,plugin from user where user=‘root’;

3.执行命令修改加密方式

alter user ‘root’@‘localhost’ identified with mysql_native_password by ‘你的密码’;

注意此处的新密码,需要和django中的setting.py中数据库配置的密码保持一致。

参考文档:https://blog.csdn.net/qq_45720042/article/details/116459962

至此

终于安装部署完成。

 

posted @ 2022-10-17 15:55  景木  阅读(198)  评论(0编辑  收藏  举报