当程序出现异常或者测试中有异常测试案例可以使他抛出异常

例如:0不可以当做除数,如果将除数设置为0会抛出异常

在testNG上加上 expectedExceptions = ArithmeticException.class

运行测试案例测试通过

package com.lc.testngYiChang;

import org.testng.annotations.Test;

public class testNG04 {
@Test(expectedExceptions = ArithmeticException.class)
public void testNG04_01() {
int a = 0 ;
int b = 1 ;
System.out.println("我是testNG04类的testNG04——01方法,我在异常之前打印。"); System.out.println("我是b/a "+b/a); System.out.println("我是testNG04类的testNG04——01方法,我在异常之后打印。");
}
}

如果程序正常,在测方法上加上 expectedExceptions = ArithmeticException.class ,会报出程序异常

package com.lc.testngYiChang;

import org.testng.annotations.Test;

public class testNG04 {
@Test(expectedExceptions = ArithmeticException.class)
public void testNG04_01() {
int a = 0 ;
int b = 1 ;
System.out.println("我是testNG04类的testNG04——01方法,我在异常之前打印。"); System.out.println("我是b/a "+b/b); System.out.println("我是testNG04类的testNG04——01方法,我在异常之后打印。");
} }
[TestNG] Running:
C:\Users\lc\AppData\Local\Temp\testng-eclipse-466935271\testng-customsuite.xml 我是testNG04类的testNG04——01方法,我在异常之前打印。
我是b/a 1
我是testNG04类的testNG04——01方法,我在异常之后打印。
FAILED: testNG04_01
org.testng.TestException:
Method testNG04.testNG04_01()[pri:0, instance:com.lc.testngYiChang.testNG04@256216b3] should have thrown an exception of type class java.lang.ArithmeticException
at org.testng.internal.ExpectedExceptionsHolder.noException(ExpectedExceptionsHolder.java:89)
at org.testng.internal.Invoker.handleInvocationResults(Invoker.java:1376)
at org.testng.internal.Invoker.invokeMethod(Invoker.java:677)
at org.testng.internal.Invoker.invokeTestMethod(Invoker.java:816)
at org.testng.internal.Invoker.invokeTestMethods(Invoker.java:1124)
at org.testng.internal.TestMethodWorker.invokeTestMethods(TestMethodWorker.java:125)
at org.testng.internal.TestMethodWorker.run(TestMethodWorker.java:108)
at org.testng.TestRunner.privateRun(TestRunner.java:774)
at org.testng.TestRunner.run(TestRunner.java:624)
at org.testng.SuiteRunner.runTest(SuiteRunner.java:359)
at org.testng.SuiteRunner.runSequentially(SuiteRunner.java:354)
at org.testng.SuiteRunner.privateRun(SuiteRunner.java:312)
at org.testng.SuiteRunner.run(SuiteRunner.java:261)
at org.testng.SuiteRunnerWorker.runSuite(SuiteRunnerWorker.java:52)
at org.testng.SuiteRunnerWorker.run(SuiteRunnerWorker.java:86)
at org.testng.TestNG.runSuitesSequentially(TestNG.java:1191)
at org.testng.TestNG.runSuitesLocally(TestNG.java:1116)
at org.testng.TestNG.run(TestNG.java:1024)
at org.testng.remote.RemoteTestNG.run(RemoteTestNG.java:112)
at org.testng.remote.RemoteTestNG.initAndRun(RemoteTestNG.java:205)
at org.testng.remote.RemoteTestNG.main(RemoteTestNG.java:176) ===============================================
Default test
Tests run: 1, Failures: 1, Skips: 0
=============================================== ===============================================
Default suite
Total tests run: 1, Failures: 1, Skips: 0
=============================================== [TestNG] Time taken by org.testng.reporters.EmailableReporter2@61064425: 11 ms
[TestNG] Time taken by org.testng.reporters.jq.Main@16f65612: 59 ms
[TestNG] Time taken by org.testng.reporters.JUnitReportReporter@6bc168e5: 5 ms
[TestNG] Time taken by [FailedReporter passed=0 failed=0 skipped=0]: 5 ms
[TestNG] Time taken by org.testng.reporters.SuiteHTMLReporter@77556fd: 27 ms
[TestNG] Time taken by org.testng.reporters.XMLReporter@7a7b0070: 3 ms

另外如果程序出现异常 会在项目下test-output/testng-failed.xml 汇整错误信息,方便观察错误类、方法,方便回购测试

最新文章

  1. asp.net mvc 简易通用自定义Pager实现分页
  2. java打包成jar,但不打包配置文件
  3. python函数动态参数详解
  4. windows下面安装Python和pip
  5. 由chrome剪贴板问题研究到了js模拟鼠标键盘事件
  6. [转]Hibernate3如何解决n+1 selects
  7. VS启用IIS调试的方法及可能碰到的问题。
  8. [记录]calculate age based on date of birth
  9. Mysql学习(慕课学习笔记3)数据类型
  10. JS动态生成<style>
  11. 1602A液晶
  12. TP 3.2 笔记 (1)
  13. ESLint可共享配置发布,团队自定义ESLint规则新鲜出炉
  14. 使用Http-Repl工具测试ASP.NET Core 2.2中的Web Api项目
  15. 三、自动化测试平台搭建-django-如何用mysql数据库做web项目
  16. Python【初识篇】简介
  17. Promise源码深入理解
  18. css页面滚动触发动画
  19. cdn贝四层协议配置端口映射TCP端口转发
  20. 绘图 Painter转接口封装的方式

热门文章

  1. Win7 安装 Docker 踩的那些坑
  2. 04、MyBatis DynamicSQL(Mybatis动态SQL)
  3. 如何在Camtasia中对录制视频添加注释
  4. FL Studio采样器设置的功能是什么
  5. Vegas的软对比具体如何设置
  6. H5系列之video自己编写控制栏
  7. 永别了,Dota2!
  8. php form表单提交时,action url中参数无效的解决方法
  9. SpringBoot2整合Redis
  10. 蓝桥杯——压缩变换(2016JavaB组第9题)