为什么我的'AssertEquals()'方法失败了?

时间:2017-02-09 15:00:44

标签: selenium-webdriver webdriver testng

  1. 为什么当两个字符串明显不匹配时,我的断言方法不会失败?

    for element in inList:
        print element, type(element) 
    

    }

  2. enter image description here

    新Examaple enter image description here

1 个答案:

答案 0 :(得分:1)

当一个断言失败时,它会抛出一个Throwable。由于你在一个try-catch块中有你的断言,当引发Throwable时,它会被catch块捕获,你的程序将记录"" BETA !!!!!!" + e.getMessage()"然后它就会完成。

你应该:

  • 删除你的try catch块
  • 捕获异常而不是Throwable

(第一个选项是测试AFAIK的正确选项)

如果删除Catch,您的错误将在控制台中按如下方式打印。

org.junit.ComparisonFailure: 
Expected :Actual String Expected
Actual   :Im Wrong!
 <Click to see difference>


at org.junit.Assert.assertEquals(Assert.java:115)
at org.junit.Assert.assertEquals(Assert.java:144)
at com.scouto.test.checkHomepageURL_Test1(test.java:15)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)