一、java.util.IllegalFormatConversionException: d != java.lang.String
定位到报错代码:
trade_order传入的不是int类型,而是string类型,将%d换成%s就可以解决。
二、 java.lang.IndexOutOfBoundsException: Index: 0, Size: 0
这是越界异常,但不是数组越界异常,数组越界异常报错:java.lang.ArrayIndexOutOfBoundsException
查阅相关资料是List集合没有做非空校验,重新看代码,是SQL查询的结果为空,因为当时传入的order_id不正确,后期传入正确的order_id使得查询出结果,就不报错了。
这是写自动化case,如果查询结果为空就代表异常了,case执行失败,但QA在代码CR时应该看RD的代码中是否有查询的非空判断,防止异常情况出现。
final String SELECT_PAY_TRANSACTION_PAYMENT_TRADE_ORDERS ="SELECT * from `pay_transaction_payment_trade_orders` where `order_id` = '%s'";