unittest的命令执行

 

命令窗口执行:

  1.可以在命令窗口下执行单个module、class、method

  python -m unittest test_module1 test_module2  

  python -m unittest test_module.TestClass 

  python -m unittest test_module.TestClass.test_method

 

  2.执行某个文件下的测试用例

  python -m unittest tests/test_something.py

  3.传递-v使测试执行更加清晰

  python -m unittest -v test_module

   

  4.不传递任何测试脚本,则执行当前目录下所有能发现的脚本

  python -m unittest
  5.命令窗口语法查看
python -m unittest -h
 optional arguments:

  -h, --help            查看命令语法

  -v, --verbose         详细输出

  -q, --quiet           退出输出

  -f, --failfast        遇到第一次失败就停止运行

  -c, --catch           Control-C在测试运行期间,等待当前测试结束,然后报告到目前为止的所有结果。一秒钟Control-C引发正常 KeyboardInterrupt异常。

  

   discover运行:

  Unittest支持简单的测试发现。为了与测试发现兼容,所有测试文件都必须是可从项目的顶级目录导入的模块或 (包括名称空间包)(这意味着它们的文件名必须是有效的标识符)。

测试发现在中实现TestLoader.discover(),但也可以从命令行使用。基本的命令行用法是:

cd project_directory
python -m unittest discover
注意:作为快捷方式,等效于 如果要传递参数以测试发现,则必须显式使用子命令。python -m unittestpython -m unittest discoverdiscover
 

discover子命令具有以下选项:

-v--verbose

详细输出

-s--start-directory directory

开始发现的目录(.默认)

-p--pattern pattern

模式以匹配测试文件(test*.py默认)

-t--top-level-directory directory

项目的顶层目录(默认为起始目录)

-s-p-t选项可以通过在如按顺序位置参数。以下两个命令行是等效的:

python -m unittest discover -s project_directory -p "*_test.py"
python -m unittest discover project_directory "*_test.py"

除了作为路径外,还可以传递软件包名称,例如 myproject.subpackage.test,作为起始目录。然后,将提供您提供的软件包名称,并将其在文件系统上的位置用作起始目录。

 
原文地址:https://www.cnblogs.com/qixc/p/11761297.html