java + selenium测试框架 (之校验优化,运行报错但不终止执行)
2016-12-09 15:54
471 查看
引入SoftAssert报错但不终止执行
在自动化执行过程中,可能涉及到多个步骤的多个校验点。如果使用Assert 来做判断,报错后不会继续执行。但有时我们需要能够继续运行。常见思路:自己封装Assert,将异常捕获,然后在最后输出报错信息。
网上发现了一个testng已经做好的封装,亲测好用,更新一下:
如下,执行到msg1的时候就会报错,无法继续执行。
public class AssertTest { @Test public void test() { Assert.assertTrue(false,"msg1"); Assert.assertTrue(false,"msg2"); } }
引用testng的SoftAssert,解决多个校验点的问题
import org.testng.annotations.Test; import org.testng.asserts.SoftAssert; public class SoftAsertTest { @Test public void test() { SoftAssert asert=new SoftAssert(); asert.assertEquals(false, true,"failed"); asert.assertEquals(0, 1,"brokedown"); asert.assertAll(); } }
更新TestBase
public class TestBase { ... protected SoftAssert softAssert = new SoftAssert(); } public class SourcePCTest extends TestBase { ... SearchResultPage page = null; @BeforeMethod public void initPage() { page = new SearchResultPage(driver); } //应用 @Test public void testSearch(){ logger.info("测试搜索的来源参数"); ... softAssert.assertTrue(false,"xxxx"); ... softAssert.assertTrue(false,"xxxxx"); ... softAssert.assertAll(); }
相关文章推荐
- Java+Selenium3框架设计准备篇6-TestNG执行测试方法依赖关系
- 测试框架Automation Center(java、QTP、selenium-java 版、...
- java + selenium测试框架 版本演化一
- 基于RFS(robot framework selenium)框架模拟POST/GET请求执行自动化接口测试
- Java+Selenium3框架设计篇5-如何实现邮件发送测试报告
- Java+Selenium3框架设计准备篇2-TestNG通过变量实现启动不同浏览器测试
- 设计自己的基于Selenium 的自动化测试框架-Java版(1) - 为什么selenium还需要测试框架?
- selenium+java+testNG+pageObject深入理解自动化测试框架
- selenium---unittest框架测试用例函数执行顺序 优先级
- selenium+java+testNG+pageObject深入理解自动化测试框架
- selenium测试(Java)--执行JS(十八)
- Java 进阶7 并行优化 JDK多任务执行框架技术
- java + selenium测试框架 (之进程强制关闭)
- java + selenium测试框架(之截屏) 版本演化四
- selenium---unittest框架测试用例函数执行顺序 优先级
- 用java构建企业级自动化框架(第四篇-构建框架分布式并发执行测试用例功能2)
- Selenium关键字驱动测试框架Demo(Java版)
- 设计自己的基于Selenium 的自动化测试框架-Java版(1) - 为什么selenium还需要测试框架?
- java + selenium测试框架 (之高亮显示页面元素)
- selenium---unittest框架测试用例函数执行顺序 优先级