gpt4 book ai didi

vba - 使用 Rubberduck 单元测试,我如何找出多个断言中的哪一个失败?

转载 作者:行者123 更新时间:2023-12-04 15:07:57 35 4
gpt4 key购买 nike

我正在使用 Rubberduck对我的 VBA 实现进行单元测试。在一个 TestMethod 中使用多个相同类型的断言(例如 Assert.IsTrue )时,据我所知,测试结果并没有告诉我其中哪个失败了。

有没有办法找出哪个 Assert 失败了,或者这是否在 Rubberduck future 的路线图中?当然我可以添加我自己的信息,例如通过使用 Debug.Print在每个 Assert 之前,但这会导致很多额外的代码。

我知道在一个测试中对多个 Assert 有不同的看法,但我选择在我的情况下使用它们,这个讨论已经涵盖 elsewhere .

最佳答案

Disclaimer: I'm heavily involved in Rubberduck's development.


IAssert Rubberduck.AssertClass 的接口(interface)和 Rubberduck.PermissiveAssertClass实现,包括可选的 message每个成员的参数:

Object Browser showing members of 'AssertClass'

只需为每个断言包含不同的描述性消息:
Assert.AreEqual expected, actual, "oops, didn't expect this"
Assert.IsTrue result, "truth is an illusion"

只有在断言失败时,Test Explorer 工具窗 Eloquent 会在 Message 列下显示自定义消息:

RD Test Explorer

关于vba - 使用 Rubberduck 单元测试,我如何找出多个断言中的哪一个失败?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43264081/

35 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com