当前位置: 首页 > 面试题库 >

运行Django测试时如何看到stdout?

谈旺
2023-03-14
问题内容

当我使用进行测试时./manage.py test,我发送到标准输出的任何内容print都不会显示。当测试失败时,我会在每个失败的测试中看到一个“
stdout”块,所以我猜想Django会捕获它(但在测试通过时不会显示它)。


问题答案:

检查TEST_RUNNERsettings.py,它使用一个特定项目的亚军调用出来的鼻子。
鼻子-s可以阻止它捕获stdout,但是如果我运行:

./manage.py test -s

manage.py首先捕获它,并引发“无此选项”错误。的帮助manage.py没有提到这一点,但是我发现如果我运行该命令:

./manage.py test -- -s

它忽略了-s,让我在自定义跑步者那边将其捕获,将其毫无问题地传递给了鼻子。



 类似资料:
  • 使用文档中的以下示例: 如何创建并运行针对此迁移的测试,以确认数据已正确迁移?

  • 问题内容: 在使用selenium(没有远程,没有xvfb)运行django测试时,我总是得到以下异常: 使用django 1.4和带有Firefox WebDriver的seleniumpython-bindings 2.28.0在LiveServerTestCase上运行测试。有人对如何解决有想法吗? 问题答案: 确保请求页面的浏览器正在等待响应。 如果我没记错的话,有和命令,请确保您正在使用

  • Spock规范如下所示: 是一个测试记录列表,对于该列表的每个成员,方法将按顺序运行。我想要的是,列表的前k个成员运行一个线程,下面的k个成员在第二个线程中运行,等等...理论上,使用Executors框架和类(因为Spock依赖于JUnit),这可以相对容易地完成。 然而,问题是如何将更小的注入到具有方法的类中,因为Spock不允许构造函数,而JUnitCore需要类名(具有测试/规范的类),而

  • 我试图通过testng运行简单的Cucumber/Java测试。xml。 所以,我有testng。xml: 我用的是runner。类,在其中我将路径/选项/etc设置为功能文件、步骤和报告: 但是当我运行testng时。xml作为TestNG套件,它: 1) 通过我自己的设想, 但是 我做错了什么?

  • 问题内容: 我正在使用一个简单的基于单元测试的测试运行程序来测试我的Django应用程序。 我的应用程序本身配置为在settings.py中使用基本记录器,方法是: 在我的应用程序代码中使用: 但是,在运行单元测试时,我想禁用日志记录,以免混乱我的测试结果输出。有没有一种简单的方法可以以全局方式关闭日志记录,以便在运行测试时,特定于应用程序的记录器不会将内容写到控制台上? 问题答案: 将禁用所有级

  • 问题内容: 将模块插入项目后,如何在该模块中运行测试用例? 即我做了: 然后尝试测试其中的内容: 我们是否应该单独检查模块并进行测试?我不知道该怎么办。看来,当我知道如何找到已获取的模块时,但是当我使用它时,它在路径中“找不到”。 问题答案: 需要包,而不是相对于的文件夹。 因此,省略开头和结尾的文件名,它将起作用: 如果当前目录是您要测试的软件包文件夹,您甚至可以忽略它,例如 作为参考,请参阅C