转:http://www.cnblogs.com/csjd/p/6366535.html

python unittest不执行"if __name__ == '__main__' "问题(Pycharm)

 

问题:

1、selenium导入unittest框架和HtmlReport框架后,HtmlReport不被执行。

2、IDE为Pycharm

假设代码为:

from selenium import webdriver

import unittest

class Test(unittest.TestCase):

  print "this is class Test"

  def setup(self):

    print "this is setup"

  def test_1(self):

    print "this is tesecase 1"

    #其他代码

  def tearDown(self):

    print "this is tearDown"

if __name__ == '__main__':

  print "this is __name__"

  #unittest.main()

网上搜索到的资料:

1、Pycharm运行导入unittest框架时,执行的的命令是“Run 'Unittests in XXX' ”,如下图所示:

2、此时执行顺序为:Class->def setup ->def test_1 ->def tearDown

3、如果执行的命令为“Run XXX”,那么会先执行class后,就执行“if __name__ == '__main__' ”

4、在代码“"if __name__ == '__main__' ”区域,右击“run xxx”即可,具体步骤参考第二个链接(有用的解决方案)

  4.1 首先删除Pycharm该文件的配置,pychrm-“run”-“Edit Configurations”-"Python tests"下删除该文件的配置信息,再点击“if __name__ == '__main__' ”旁边的三角按钮,鼠标移到Run...就可以看到两个运行方式了

先用Run XXX方式运行下,然后到pychrm-“run”-“Edit Configurations”-"Python tests"下点击保存按钮,保存该配置

参考资料:

http://www.ithao123.cn/content-6035445.html

有用的解决方案:http://stackoverflow.com/questions/20835466/pycharm-wont-allow-to-run-a-file-shows-run-unittest-option-only

Pycharm上python unittest不执行"if __name__ == '__main__' "问题or选择非unittest run的更多相关文章

  1. python unittest不执行"if __name__ == '__main__' "问题(Pycharm)

    问题: 1.selenium导入unittest框架和HtmlReport框架后,HtmlReport不被执行. 2.IDE为Pycharm 假设代码为: from selenium import w ...

  2. Python 同一文件中,有unittest不执行“if __name__ == '__main__”,不生成HTMLTestRunner测试报告的解决方案

    1.问题:Python中同一个.py文件中同时用unittest框架和HtmlReport框架后,HtmlReport不被执行. 2.为什么?其实不是HtmlReport不被执行,也不是HtmlRep ...

  3. python中关于不执行if __name__ == '__main__':测试模块的解决

    1.新建测试脚本文件: 2.编辑测试脚本 import unittest import requests import json import HTMLTestRunner ur1 = 'http:/ ...

  4. Pycharm上python运行和unittest运行两种执行方式解析

    前言 经常有人在群里反馈,明明代码一样的啊,为什么别人的能出报告,我的出不了报告,为什么别人运行结果跟我的不一样啊... 这种问题先检查代码,确定是一样的,那就是运行姿势不对了,一旦导入unittes ...

  5. Pycharm上python和unittest两种姿势傻傻分不清楚

    前言 经常有人在群里反馈,明明代码一样的啊,为什么别人的能出报告,我的出不了报告:为什么别人运行结果跟我的不一样啊... 这种问题先检查代码,确定是一样的,那就是运行姿势不对了,一旦导入unittes ...

  6. Pycharm上python和unittest两种姿势傻傻分不清楚【转载】

    前言 经常有人在群里反馈,明明代码一样的啊,为什么别人的能出报告,我的出不了报告:为什么别人运行结果跟我的不一样啊... 这种问题先检查代码,确定是一样的,那就是运行姿势不对了,一旦导入unittes ...

  7. (转)Python中如何理解if __name__ == '__main__'

    摘要 通俗的理解 __name__ == '__main__' :假如你叫李凯.py,在朋友眼中,你是李凯( __name__ == '李凯' ):在你自己眼中,你是你自己( __name__ == ...

  8. Python - 模块中的"if __name__ == '__main__':"

    1.1 如果导入的模块除了定义函数之外还中有可以执行代码,那么Python解释器在导入这个模块时就会执行这些代码. module1.py: def foo(): print('module 1') f ...

  9. python基础——认识(if __name__ == ‘__main__’:)

    我们在写代码时,经常会用到这一句:if __name__ == '__main__',那么加这一句有什么用呢?实际上,它起到到了一个代码保护功能,它能够让别人在导入你写的模块情况下,无法看到和运行if ...

随机推荐

  1. 5.4 集合的排序(Java学习笔记)(Collections.sort(),及Arrays.sort()底层分析)

    1.Comparable接口 这个接口顾名思义就是用于排序的,如果要对某些对象进行排序,那么该对象所在的类必须实现 Comparabld接口.Comparable接口只有一个方法CompareTo() ...

  2. 让你的saga更具有可伸缩性(Scaling NServiceBus Sagas)

    https://lostechies.com/jimmybogard/2013/03/26/scaling-nservicebus-sagas/ 当我们使用NServiceBus sagas (pro ...

  3. Oracle里面的用户user无法登录 LOCKED(TIMED)

    SQL>conn test/test 还是报同样的错误,这就奇怪了.看看dba_users中该用户的状态等信息 SQL>select account_status,lock_date,pr ...

  4. 删除cnpm

    cnpm是npm的中国镜像:这是一个完整 npmjs.org 镜像,你可以用此代替官方版本(只读),同步频率目前为 10分钟 一次以保证尽量与官方服务同步. 安装:npm install -g cnp ...

  5. IOS Vsync

    vsync count Don't Sync Application.targetFrameRate 设置FPS上限 Every Second VBlank 30 Every VBlank 60 An ...

  6. CSS3 transform变换

    CSS3 transform变换 1.translate(x,y) 设置盒子位移2.scale(x,y) 设置盒子缩放3.rotate(deg) 设置盒子旋转4.skew(x-angle,y-angl ...

  7. 项目打jar包,怎么把第三放jar包一起打入

    <plugin> <artifactId>maven-assembly-plugin</artifactId> <configuration> < ...

  8. 配置composer全量镜像与主要命令

    配置中国全量镜像 查看当前composer配置的镜像地址 composer config -g repo.packagist 显示如下,显示说明没有配置镜像地址 接下来我使用下面的命令进行查看配置的镜 ...

  9. java中short、int、long、float、double取值范围

    一.分析基本数据类型的特点,最大值和最小值.1.基本类型:int 二进制位数:32包装类:java.lang.Integer最小值:Integer.MIN_VALUE= -2147483648 (-2 ...

  10. 使用Nginx+uWSGI+Django方法部署Django程序(上)

    Django的部署可以有很多方式,采用nginx+uwsgi的方式是其中比较常见的一种方式. 在这种方式中,我们的通常做法是,将nginx作为服务器最前端,它将接收WEB的所有请求,统一管理请求.ng ...