测试命令行输出

未匹配的标注

控制台测试

在 Masonite 单元测试中,你可以使用有用的控制台断言来测试标准控制台输出。

这里的输出是标准输出通常称为 stdout。 这里的错误是标准错误通常称为 stderr

外部包或你代码中的打印可以输出内容到控制台(作为输出或错误)。

注意:如果你想通过 Masonite 命令断言内容输出,你应该使用 Commands Tests 断言。

可用的断言

以下是可用的断言:

assertConsoleEmpty

断言没有任何内容被打印到控制台。

assertConsoleNotEmpty

断言有内容被打印到控制台(输出或错误)。

assertConsoleExactOutput

断言控制台标准输出等于给定的输出。

print("Success !")
self.assertConsoleExactOutput("Success !\n")

assertConsoleOutputContains

断言控制台标准输出包含给定的输出。

print("Success !")
self.assertConsoleOutputContains("Success")

assertConsoleOutputMissing

断言控制台标准输出不包含给定的输出。

print("Success !")
self.assertConsoleOutputMissing("hello")

assertConsoleHasErrors

断言有内容输出到控制台标准错误。

assertConsoleExactError

断言控制台标准错误等于给定的错误。

print("An error occured !", file=sys.stderr)
self.assertConsoleExactError("An error occured !\n")

assertConsoleErrorContains

断言控制台标准错误包含给定的错误。

print("An error occured !", file=sys.stderr)
self.assertConsoleErrorContains("error")

本文章首发在 LearnKu.com 网站上。

本译文仅用于学习和交流目的,转载请务必注明文章译者、出处、和本文链接
我们的翻译工作遵照 CC 协议,如果我们的工作有侵犯到您的权益,请及时联系我们。

原文地址:https://learnku.com/docs/masonite/4.0/te...

译文地址:https://learnku.com/docs/masonite/4.0/te...

上一篇 下一篇
贡献者:1
讨论数量: 0
发起讨论 只看当前版本


暂无话题~