What is the best way to test abstract class?
let’s say I have a class A
abstract class A(param1: Param1, param2: Param2) {
  fun foo() {
    val param1result = param1.get()
    val param2result = param2.get()
    val result = calculateResult(param1result, param2)
  }
  
  abstract fun calculateResult(param1: Param1, param2: Param2): Smth
}
Now, I want to test it. But I can not create an instance of A, since its a abstract class. The only way I managed to make it work is to create a real A class and use spyk function:
class AReal: A {
  override fun calculateResult(...) {
    ...
  }
}
class Test {
  val aReal = spyk(AReal(...., .....))
}
Is there any other better way?