<tfoot id='LhIUf'></tfoot>

  • <small id='LhIUf'></small><noframes id='LhIUf'>

        <bdo id='LhIUf'></bdo><ul id='LhIUf'></ul>
    1. <legend id='LhIUf'><style id='LhIUf'><dir id='LhIUf'><q id='LhIUf'></q></dir></style></legend>
    2. <i id='LhIUf'><tr id='LhIUf'><dt id='LhIUf'><q id='LhIUf'><span id='LhIUf'><b id='LhIUf'><form id='LhIUf'><ins id='LhIUf'></ins><ul id='LhIUf'></ul><sub id='LhIUf'></sub></form><legend id='LhIUf'></legend><bdo id='LhIUf'><pre id='LhIUf'><center id='LhIUf'></center></pre></bdo></b><th id='LhIUf'></th></span></q></dt></tr></i><div id='LhIUf'><tfoot id='LhIUf'></tfoot><dl id='LhIUf'><fieldset id='LhIUf'></fieldset></dl></div>

        如何在Python中测试命令行应用程序?

        时间:2024-08-21
          <tbody id='i3ech'></tbody>
          <i id='i3ech'><tr id='i3ech'><dt id='i3ech'><q id='i3ech'><span id='i3ech'><b id='i3ech'><form id='i3ech'><ins id='i3ech'></ins><ul id='i3ech'></ul><sub id='i3ech'></sub></form><legend id='i3ech'></legend><bdo id='i3ech'><pre id='i3ech'><center id='i3ech'></center></pre></bdo></b><th id='i3ech'></th></span></q></dt></tr></i><div id='i3ech'><tfoot id='i3ech'></tfoot><dl id='i3ech'><fieldset id='i3ech'></fieldset></dl></div>

          <tfoot id='i3ech'></tfoot>
            <bdo id='i3ech'></bdo><ul id='i3ech'></ul>
          • <small id='i3ech'></small><noframes id='i3ech'>

                  <legend id='i3ech'><style id='i3ech'><dir id='i3ech'><q id='i3ech'></q></dir></style></legend>

                1. 本文介绍了如何在Python中测试命令行应用程序?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着跟版网的小编来一起学习吧!

                  问题描述

                  我知道Pythonunittest。我有一些使用它测试Python子程序的经验。

                  现在我需要添加测试用Python编写的命令行应用程序(而不是只是一个Python函数)。我希望在stdin中使用某些参数和某些输入来调用它,在stdout中使用测试输出来调用它。

                  如何将命令行工具测试与其他unittest测试用例集成?

                  或使用什么代替unittest

                  推荐答案

                  您仍然可以使用标准的unittest格式,并将整个应用程序作为标准函数进行测试。创建一个包装器,使脚本入口点成为一个简单的包装器,如下所示:

                  if __name__ == "__main__":
                      sys.exit(main(sys.argv))
                  

                  只要您不滥用全局变量来保持状态,您只需要测试main()函数。

                  如果您想测试您无法控制的脚本,您仍然可以通过编写如下测试来使用unittestsubprocess

                  def test_process(self):
                      result = subprocess.run(['your_script', 'your_args', ...], capture_output=True)
                      self.assertIn('expected out', result.stdout)
                  
                  def test_process_failure(self):
                      result = subprocess.run(['your_script', 'your_args', ...], capture_output=True)
                      self.assertEqual(result.returncode, 1)
                  

                  这篇关于如何在Python中测试命令行应用程序?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持跟版网!

                  上一篇:某些字符坚持我在Python cmd中的彩色提示 下一篇:获取所有可用pip包及其版本的列表

                  相关文章

                2. <legend id='oPvlh'><style id='oPvlh'><dir id='oPvlh'><q id='oPvlh'></q></dir></style></legend>
                  • <bdo id='oPvlh'></bdo><ul id='oPvlh'></ul>
                  <tfoot id='oPvlh'></tfoot>

                    1. <i id='oPvlh'><tr id='oPvlh'><dt id='oPvlh'><q id='oPvlh'><span id='oPvlh'><b id='oPvlh'><form id='oPvlh'><ins id='oPvlh'></ins><ul id='oPvlh'></ul><sub id='oPvlh'></sub></form><legend id='oPvlh'></legend><bdo id='oPvlh'><pre id='oPvlh'><center id='oPvlh'></center></pre></bdo></b><th id='oPvlh'></th></span></q></dt></tr></i><div id='oPvlh'><tfoot id='oPvlh'></tfoot><dl id='oPvlh'><fieldset id='oPvlh'></fieldset></dl></div>

                      <small id='oPvlh'></small><noframes id='oPvlh'>