测试中设置断点_测试设置还有其他地方

测试中设置断点

对测试用例的期望

  • 它准备一些方案
  • 它执行被测系统
  • 它对构建测试时所预测的答案做出了一些具体的断言

如果看到...

这是一个测试。 它使用Java,但可以使用任何语言。

 @Test  void theOperationIsSuccessful() { 
     assertTrue(service.isLastOperationSuccessful());  } 

上面有什么问题?

它只是在做准备,行动和断言这三件事之一。 这只是断言。 为了使此测试有意义,还有其他事情要做。 它不仅仅是一个完整的测试用例,而是更多的测试用例的片段。

这是错的吗?

我确定我已经编写了上述测试之类的东西并对它们感到满意……但是在我们认为它可能没问题之前,让我们看一下它可能意味着什么。 如果可以避免这些情况,那么测试将变得更好,更清晰,然后再回到准备,执行和断言或给出的1-2-3之中。

为什么我的设置不存在?

  • 也许我们必须为所有测试一致地设置系统,并且我们想断言任何测试的初始状态–可以,但是可能需要注释。
  • 也许我们过度地设置了设置,以使其从测试用例中窃取了一些代码,仅保留断言来编写–就像前面的示例一样,除了没有其他测试需要此通用设置之外
  • 也许我们的测试建立了一个全局状态,然后对该状态进行了一系列单独的声明-这是一个令人困惑的模式,因为它是一个测试用例,分为几个部分-也许可以使用Cucumber之类的东西更好地表达,而不是像一个单元测试框架那样JUnit,TestNG,摩卡,茉莉花等
  • 也许我们的每个测试都处于因果关系中–如果运行测试的成本很高,这可能很有用,因此我们需要小心浪费资源重新执行的事情,但这会使事情变得更难以理解。

结论

自包含的测试很容易理解。 如果需要共享设置,那也是很常规的。 如果它是在多个位置执行测试的结构的一部分,则尽管仅断言测试看起来更简单,但整个测试要复杂得多,如果可能,应该简化。

翻译自: https://www.javacodegeeks.com/2019/11/test-setup-is-somewhere-else.html

测试中设置断点

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值