testng运行失败,继续执行

1.重写断言类

复制代码
public class Verify {
    public static StringBuffer verificationErrors= new StringBuffer();;

    public static void verifyTrue(boolean o) {
        try {
            Assert.assertTrue(o);
        } catch (Error e) {
            verificationErrors.append(e.toString());
        }
    }

    public static void verifyFalse(boolean o) {
        try {
            Assert.assertFalse(o);
        } catch (Error e) {
            verificationErrors.append(e.toString());
        }
    }

    public static void verifyEquals(Object expected, Object actuals) {
        try {
            Assert.assertEquals(expected, actuals);
        } catch (Error e) {
            verificationErrors.append(e.toString());
        }
    }

    public static void verifyEquals(Object expected, Object actuals,
            String message) {
        try {
            Assert.assertEquals(expected, actuals, message);
        } catch (Error e) {
            verificationErrors.append(e.toString());
        }
    }

    public static  void assertEquals(String actual, String expected,
            String message) {
        try {
            Assert.assertEquals( actual, expected, message);
        } catch (Error e) {
            verificationErrors.append(e.toString());
        }        
    }

    public static  void assertEquals(String actual, String expected) {
        try {
            Assert.assertEquals( actual, expected);
        } catch (Error e) {
            verificationErrors.append(e.toString());
        }        
    }

    public static void tearDown() {
        String verificationErrorString = verificationErrors.toString();
        if (!"".equals(verificationErrorString)) {
            Assert.fail(verificationErrorString);
        }
    }

}
复制代码

2.编写监听断言类

复制代码
public class ListenerVerify implements IInvokedMethodListener {
    @Override
    public void afterInvocation(IInvokedMethod method, ITestResult testResult) {
        // TODO Auto-generated method stub
        if (method.isTestMethod()) {
            Verify.tearDown();
        }
    }

    @Override
    public void beforeInvocation(IInvokedMethod method, ITestResult testResult) {
        // TODO Auto-generated method stub
        
    }
}
复制代码

3.测试类

复制代码
@Listeners( {ListenerVerify.class})
public class TestVerify  {
    @Test
    public void test(){
        Verify.assertEquals("1", "1");    
        Verify.assertEquals("1", "2");    
        Verify.assertEquals("1", "3");    
    }
}
复制代码

结果如下

 

posted @   久曲健  阅读(2051)  评论(0编辑  收藏  举报
编辑推荐:
· [.NET]调用本地 Deepseek 模型
· 一个费力不讨好的项目,让我损失了近一半的绩效!
· .NET Core 托管堆内存泄露/CPU异常的常见思路
· PostgreSQL 和 SQL Server 在统计信息维护中的关键差异
· C++代码改造为UTF-8编码问题的总结
阅读排行:
· 一个费力不讨好的项目,让我损失了近一半的绩效!
· 清华大学推出第四讲使用 DeepSeek + DeepResearch 让科研像聊天一样简单!
· 实操Deepseek接入个人知识库
· CSnakes vs Python.NET:高效嵌入与灵活互通的跨语言方案对比
· Plotly.NET 一个为 .NET 打造的强大开源交互式图表库
点击右上角即可分享
微信分享提示