在Mockito类的模拟过程中投射参数

当我用下面的方法(在Kotlin中) val card: Card = mock<Card>()模拟类时val card: Card = mock<Card>()它会自动将所有参数(cardNumber,expMonth,expYear,CVC)初始化为String,因为它们保存为String。 然而,在我要测试的代码(Java)中,我通过以下方式初始化类卡

 Card card = new Card(mView.getCreditCardNumber(), Integer.valueOf(mView.getMonth()), Integer.valueOf(mView.getYear()), mView.getCVV()); 

我已经用以下方式嘲笑了这些价值

 whenever(mView.creditCardNumber).then { "1234567890123456" } whenever(mView.month).then { "12" } whenever(mView.year).then { "2022" } whenever(mView.cvv).then { "123" } 

所以区别在于中间的2个参数应该是整数,而我不能这样做。 我尝试了以下解决方案

 whenever(mView.month).then { 12 } whenever(mView.year).then { 2022 } 

但是我从Int到String得到CastException。 由于mView.month /年应该是字符串。

那么,有没有办法使这个强制转换,否则我不能够正确地测试代码的其余部分。 请帮忙,否则我疯了。 谢谢 :) !

Kotlin language will be the best programming language for Android.