接口测试 问题已解决 5

艾里艾兰 · 2018年03月15日 · 最后由 thanksdanny 回复于 2018年06月19日 · 2537 次阅读

网上找了一大圈,没有找到解决的办法,来社区请大神们帮忙看看

下图是开发写的表字段代码:

下图是我传的测试数据:

当运行 run_tests.py 时,报如下图错误:

如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
共收到 9 条回复 时间 点赞

字段没有设置默认值 看下表里这个字段是不是为空的,然后有没传值。
或者把 sql 打印出来,手动执行看会不会报错

Jerry li 回复

开发创建的 create_time 字段是自动获取当前时间,我的接口测试数据里该怎么对这个字段传值呢?我感觉是这里出了问题~

艾里艾兰 回复

你也自动传时间进去就可以了啊
例如: event['create_time']=time.now() 类似这样加进去

Jerry li 回复

试了一下,报新的错误

date = models.DateTimeField(auto_now_add=True, blank=True)
# or
date = models.DateTimeField(default=datetime.now, blank=True)
大东 回复

感谢

艾里艾兰 回复

果然,你和我同样问题

mysql 的配置里这个值注掉或改为 false 试一下
explicit_defaults_for_timestamp

艾里艾兰 回复

请教一下,其实这块最后是改哪里,我根据提示哪里改了貌似还是报错。我跟你的第二个截图的报错一样,报的是 pymysql.err.InternalError: (1364, "Field 'create_time' doesn't have a default value")

艾里艾兰 关闭了讨论 06月26日 00:11
需要 登录 后方可回复, 如果你还没有账号请点击这里 注册