gpt4 book ai didi

java - 强制 JUnit 一次运行一个测试用例

转载 作者:塔克拉玛干 更新时间:2023-11-03 03:58:56 24 4
gpt4 key购买 nike

我遇到了一些非常高级的单元测试的问题(使用 PowerMock 进行模拟和 JUnit 4.5)。无需赘述,测试类的第一个测试用例总是会成功,但同一测试类中的任何后续测试用例都会失败。但是,例如,如果我选择只运行 10 个中的第 5 个测试用例,它将通过。因此,所有测试在单独运行时都会通过。有没有办法强制 JUnit 一次运行一个测试用例?我从 ant 脚本调用 JUnit。

我知道依赖测试用例的问题,但我无法确定这是为什么。测试用例中没有保存的变量,所以在 @Before 注释处无事可做。这就是为什么我正在寻找一种紧急解决方案,例如强制 JUnit 单独运行测试。

最佳答案

我知道所有建议,但最终在这里回答您的问题是实现您想要的目标的简单方法。只需将此代码放入您的测试用例中:

Lock sequential = new ReentrantLock();

@Override
protected void setUp() throws Exception {
super.setUp();
sequential.lock();
}

@Override
protected void tearDown() throws Exception {
sequential.unlock();
super.tearDown();
}

这样,在获取到锁之前不能开始测试,而且一次只能获取一个锁。

关于java - 强制 JUnit 一次运行一个测试用例,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/545194/

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