Python 中的自定义错误消息

2024-02-21

所以我正在练习一些单元测试,我有一个关于错误消息的问题。我正在尝试创建一条自定义错误消息,该消息将在测试失败时显示。这是一个基本的 Hello World 程序。测试运行良好,一切正常,但这是我收到的错误消息。

F ====================================================================== FAIL: test_StringContains
 (__main__.TestSuite) ----------------------------------------------------------------------   
Traceback    (most recent call last): File "Testsuite.py", line 8, in test_StringContains 
self.assertEqual("Hello,    World", hello_world,"This is a custom error") AssertionError: 'Hello,   
World' != 'Hello World' - Hello,    World ? - + Hello World : This is a custom error ---------------  
------------------------------------------------------- 
Ran 1 test in 0.000s FAILED (failures=1)

所以这是预料之中的。这是我的测试套件

from  HelloWorld import*
import unittest

class TestSuite(unittest.TestCase):

    def test_StringContains(self):
            self.assertEqual("Hello World", hello_world,"This is a custom")


if __name__ == "__main__":
    unittest.main()

这是我的运行代码

hello_world = "Hello World"
print (hello_world)

超级基础,只想了解如何抛出自定义错误消息。我唯一想知道测试是否失败的是This is a custom error,我尝试按照此处有关错误和异常的 Python 文档进行操作https://docs.python.org/2/tutorial/errors.html https://docs.python.org/2/tutorial/errors.html,但不知道如何实现。

我不知道这是否可行。任何帮助是极大的赞赏。谢谢


您可以做的是将assertEqual 包装在try except 语句中来捕获AssertionError,然后打印错误:

        try:
            self.assertEqual("Hello World", hello_world,"This is a custom error")
        except AssertionError as e:
            print(e)

然而,捕获 AssertionError 时有一个缺点:unittest 模块无法再对错误进行计数。 (堆栈跟踪并不美观,但它们的目的是准确地将您指向堆栈中发生错误的点。)

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Python 中的自定义错误消息 的相关文章

随机推荐

  • Knockout.js 在字符串列表上的“foreach”中使用“value:”绑定 - 不会更新

    Here is jsFiddle http jsfiddle net bmh ca SksQ3 1 演示以下问题 给定一个 可观察的 字符串列表上的 foreach 绑定 可观察值似乎不会因 foreach 内绑定的输入标签的更改而更新 人
  • 如何检测 python 字符串中的最后一位数字

    我需要检测字符串中的最后一位数字 因为它们是我的字符串的索引 它们可能是 2 64 所以不方便只检查字符串中的最后一个元素 然后尝试第二个 等等 字符串可能就像asdgaf1 hsg534 即字符串中也可能有其他数字 但中间有一些数字 并且
  • Flash 设计师/编码员协作最佳实践

    我已经完成了几个 Flash 项目 作为 ActionScripter 由设计师负责所有漂亮的事情和动画 刚开始时 我发现了很多有关 ActionScript 编码和 Flash 设计的信息 大多数可用信息似乎都集中在其中之一 我没有找到任
  • cURL 慢启动传输时间

    再会 请求页面时 cURL 的运行速度非常慢 我知道这不是所请求的页面 因为该页面立即返回到浏览器中 我注意到的两件事 starttransfer time 通常接近 20 local port 似乎每次都会改变 这正常吗 有时 cURL
  • 如何在 Freemarker 模板中访问 Spring 应用程序属性?

    我有使用 Spring 3 1 的 Java web 应用程序 以及用于渲染视图的 Freemarker 模板 我想根据特定应用程序属性的真 假值有条件地在视图中显示链接 我在中定义了以下应用程序属性src main resources a
  • 如何获取列表视图位置?

    我在 Listview onListItemClick 方法中遇到问题 我没有得到列表的位置 这是我的代码请帮助我 求职信选择 xml
  • Angular:用逗号格式化数字

    标题非常概括了我的需求 123456789 gt 123 456 789 12345 gt 12 345 获得这种转化的最佳方法是什么 不要建议在 Angular 2 中使用货币管道 因为我不需要在输出前添加 或货币符号 像这样使用 Dec
  • 将某些日期替换为 NA

    我正在尝试用 NA 替换某些日期 我尝试了以下方法 但没有成功 df lt data frame dates seq Date as Date 1910 01 01 as Date 1999 01 01 days gt mutate if
  • Maven Release-plugin“标签已存在”对于不存在的标签

    我的设置 git 存储库在Atlassian Stash 服务器和Atlassian Bamboo 我在用着Maven 3 1 1与release plugin 2 3 2 该计划在Bamboo看起来像这样 退房自git 存储库 执行一个c
  • 在Android中设置Crouton消息的持续时间

    我已经开始使用 Crouton 消息而不是 toast 消息 因为我可以配置持续时间 有什么方法可以继续显示油煎面包块消息 直到发生特定事件 而不是以明确的单位指定时间 您可以将油煎面包块的持续时间设置为INFINITE从内部Configu
  • 如何从 C# Web 服务生成 WSDL 文件

    我创建了一个像这样的WebService WebService Namespace http ns WebServiceBinding ConformsTo WsiProfiles BasicProfile1 1 public class
  • 当应用程序处于后台时,活动在“最近”中不可见

    问题描述 在我的一个应用程序中 我看到了相当奇怪的行为 当我的应用程序在前台运行 最顶层的应用程序 时 我可以在系统的 最近 中看到其活动 但一旦我将其置于后台 相同的活动 即AccountsActivity 刚才列出的内容不再出现在 最近
  • 解组非根元素时的 JAXB 模式验证

    当您使用 JAXB 解组整个 XML 时 您可以设置 XML 模式以在解析期间启用验证 javax xml validation Schema schema jaxbUnmarshaller JAXBContext newInstance
  • 逐行读取并存储在结构体数组中

    我正在尝试从文本文件中逐行读取行并将其存储在数组中 txt 文件中有一些问题将询问玩家 下面是一些问题 1 N r kom potatisen till Europa A 1300 talet B 1500 talet C 900 tale
  • 禁用 Maven 内部版本号插件

    目前我们正在开发一个大型 Maven 项目 该项目有大约 100 个模块 其中一些还有子模块 一些模块使用 Maven Build Number 插件 该项目是在 Subversion 下托管的 最近我们的开发团队开始在本地使用 git 克
  • 使用 firebase 作业调度程序安排重复作业

    我试图每 10 分钟将 Android 设备的位置发布到服务器一次 我正在使用 firebase 作业调度程序来执行此操作 FirebaseJobDispatcher dispatcher new FirebaseJobDispatcher
  • 仅针对单个模式生成流畅的代码

    有没有办法让 Slick 的代码生成仅为单个模式生成代码 你说 公开 我有一些扩展可以创建大量的表 例如 postgis pg jobman 从而使 slick 生成的代码变得巨大 将此代码与适当的值和模式名称一起使用 object Cod
  • 如何在eclipse中缩进jsp页面

    刚开始使用 jsp 我的页面看起来很糟糕 请建议一种缩进的方法 thanks 首先确保您安装了 Web Tools 如果没有 请检查此链接 http download eclipse org webtools updates http do
  • 提升 Asio 单线程性能

    我正在实现需要维护大量 100K 或更多 长期连接的自定义服务器 服务器只是在套接字之间传递消息 并且不进行任何认真的数据处理 消息很小 但每秒都会接收 发送许多消息 减少延迟是目标之一 我意识到使用多核不会提高性能 因此我决定通过调用在单
  • Python 中的自定义错误消息

    所以我正在练习一些单元测试 我有一个关于错误消息的问题 我正在尝试创建一条自定义错误消息 该消息将在测试失败时显示 这是一个基本的 Hello World 程序 测试运行良好 一切正常 但这是我收到的错误消息 F FAIL test Str