在使用python写接口测试脚本时,想要引入logging模块来在控制台输出当前执行进度日志,但是遇到了奇葩问题,困扰了一整个下午:

代码如下:

__author__ = 'test'
#!/usr/bin/python
# -*- coding:utf-8 -*- import requests
import unittest
from urllib import parse
import HTMLTestRunner
from datetime import datetime
import random
from logger import Log class LoginRegisterTest(unittest.TestCase):
# 测试登陆注册接口 """
此处省略接口测试用例代码
""" def suite():
"""
测试套件
:return: loginTestCases
"""
login_test_cases = unittest.makeSuite(LoginRegisterTest, 'test')
return login_test_cases if __name__ == "__main__":
logging = Log().get_instance('tw')
logging.debug('13356')
with open("F:/ScriptReport/report_" + datetime.now().strftime('%Y%m%d-%H-%M') + ".html", 'wb') as report:
runner = HTMLTestRunner.HTMLTestRunner(stream=report, title='测试报告', description='详情')
runner.run(suite()) debug以上代码,代码不会走红色代码部分,但是把红色代码部分单独拿出来,或者直接运行(if __name__ == "__main__":)的部分都可以执行成功
单独拿出来的代码如下234.py:
from logger import Log

if __name__ == "__main__":
logging = Log().get_instance('tw')
logging.debug('13356') 234.py运行的结果如下

那么为什么相同的代码执行结果确不同呢?后来清理了pycharm缓存,问题得以解决。清理缓存步骤如下

1、file下选择Invalidate Caches Restart...

2、选择清理并重新启动,等待一会重新运行问题得以解决

												

python初学之缓存清理:完全相同的代码与环境但是其中一个文件可以执行成功,一个执行不成功的更多相关文章

  1. python 控制语句基础---->代码块:以为冒号作为开始,用缩进来划分作用域,代表一个整体,是一个代码块,一个文件(模块)也称为一个代码块 | 作用域:作用的范围

    # ### 代码块:以为冒号作为开始,用缩进来划分作用域,代表一个整体,是一个代码块,一个文件(模块)也称为一个代码块 # ### 作用域:作用的范围 print(11) print(12) prin ...

  2. Python基础学习Day6 is id == 区别,代码块,小数据池 ---->>编码

    一.代码块 Python程序是由代码块构造的.块是一个python程序的文本,他是作为一个单元执行的. 代码块:一个模块,一个函数,一个类,一个文件等都是一个代码块. 而作为交互方式输入的每个命令都是 ...

  3. 使用python删除一个文件或文件夹

    使用python删除一个文件或文件夹,需要使用os模块. import osos.remove(path) # path是文件的路径,如果这个路径是一个文件夹,则会抛出OSError的错误,这时需用用 ...

  4. Android Glide数据更新及内存缓存、硬盘缓存清理

    [转] 原文                                         Android Glide数据更新及内存缓存.硬盘缓存清理 Android的Glide在加载图片时候内部默 ...

  5. Hibernate中的脏检查和缓存清理机制

    脏检查 Session到底是如何进行脏检查的呢?当一个Customer对象被加入到Session缓存中时,Session会为Customer对象的值类型的属性复制一份快照.当Session清理缓存时, ...

  6. ecshop缓存清理-限制或禁用ECShop缓存

    ecshop缓存清理-限制或禁用ECShop缓存   ECSHOP的缓存存放在templates/caches/文章夹下,时间长了这个文件夹就会非常庞大,拖慢网站速度.还有很多情况我们不需要他的缓存. ...

  7. 分布式Nginx缓存清理(PHP的socket编程)

    最近,公司要使用康乐的几台自建CDN换成Nginx,在缓存配置上不会有很多的问题,纠结的问题是:Nginx的如何批量进行缓存清理 我们都知道Nginx提供了一个第三方的模块"nginx ng ...

  8. Python初学

    经同学推荐,学习了下Python语言,看Python的介绍,它本身是一个面向对象的解释型脚本语言,我初看到这句话的时候就在想,一个脚本语言还搞成面向对象?有这个必要么?原谅我肤浅了一把. 它还被俗称为 ...

  9. Hibernate——脏检查和缓存清理机制

    Session到底是如何进行脏检查的呢? 当一个Customer对象被加入到Session缓存中时,Session会为Customer对象的值类型的属性复制一份快照.当Session清理缓存时,会先进 ...

随机推荐

  1. GIS开发 图形常见算法

    摘录:OSGeo中国中心 http://www.osgeo.cn/post/ae457 计算机的出现使得很多原本十分繁琐的工作得以大幅度简化,但是也有一些在人们直观看来很容易的问题却需要拿出一套并不简 ...

  2. CF #552(div3)G 最小lcm

    题目链接:http://codeforces.com/contest/1154/problem/G 题意:lcm是最小公倍数,本题就是给你一个数组(可能会重复),要求你判断出那两个数的最小公倍数最小, ...

  3. 未在本地计算机上注册microsoft.ace.12.0的解决办法

    (1)去http://download.microsoft.com/download/7/0/3/703ffbcb-dc0c-4e19-b0da-1463960fdcdb/AccessDatabase ...

  4. @validated各种坑

    1.@validate不起作用 经过各种测试,在@validate后加了个modelattribute("form")就不验证了,坑.. 2.错误信息的properties配置文件 ...

  5. project euler做题记录

    ProjectEuler_做题记录 简单记录一下. problem 441 The inverse summation of coprime couples 神仙题.考虑答案为: \[\begin{a ...

  6. 学号20175212 《Java程序设计》第7周学习总结

    学号20175212 <Java程序设计>第7周学习总结 教材学习内容总结 8.1.String类 可以使用String类声明对象并创建对象,例如: String s = new Stri ...

  7. 阅读github上的项目源码

    1.基础资料 函数手册,类库函数手册2.和程序相关的专业资料 高数,linux文件系统3.相关项目的文档资料4.留备份,构造可运行的环境,找开始的地方 main(),5.分层次阅读,写注解,编程思想, ...

  8. 福利来了,现“免费”赠送Spring微服务实战书籍

    本书适合拥有构建分布式应用程序的经验.拥有Spring的知识背景以及对学习构建基于微服务的应用程序感兴趣的Java开发人员阅读. 本书籍赠送活动详情,请识别上图二维码☝☝☝☝☝ 书籍推荐 本书教读者如 ...

  9. 关于人人网的form查找和打印

    from lianxi import sessionimport json# urlurl = 'http://www.renren.com/ajaxLogin/login?1=1&uniqu ...

  10. HFun.快速开发平台(二)=》自定义列表实例

    应用系统中数据列表的展现是开发内容之一,实现的方式基本是通过编号具体的访问列表页实现,通过检索条件进行数据源的获取,列字段的描述,还可能会有检索条件的实现,列表数据的导出等功能. 为了将重复工作进行简 ...