问题:运行时候发现main方法并没有执行,之执行了test_baidu
import unittest
from selenium import webdriver
from .config import XTest
browser_list=["Chrome","Firefox"]
def main(path,browser):
print("222")
if browser not in browser_list:
raise NameError("不支持{browser}浏览器",1)
elif browser =="Chrome":
XTest.driver=webdriver.Chrome()
elif browser =="Firefox":
XTest.driver=webdriver.Firefox()
suit=unittest.defaultTestLoader.discover(start_dir=path)
runner=unittest.TextTestRunner()
runner.run(suit)
原因:
之前所执行代码对应的方式是Run 'Unittests in xxx.py',PyCharm默认执行Unittests类的单元测试,忽略了if __name__ == '__main__':的执行,也就没有执行整个xxx.py文件
方案:
在PyCharm顶部的工具栏上,点击 Run-->Run...在弹出的Run选择框中,点击与文件xx.py同名的选项 (Run xx.py相当于执行整个xx.py文件,也就包含if __name__ == '__main__':其下的代码了)
摘自:[PyCharm] if __name__ == '__main__': 其下的代码未执行_解决方案 - 简书
|