在Android Room中进行JUnit测试时,如果你遇到了这个异常:AsyncTask#1 java.lang.IllegalStateException: 无法执行此操作,因为没有当前事务,可以尝试以下解决方法:
@RunWith(JUnit4::class)注解,以使用JUnit4运行器。@RunWith(JUnit4::class)
class MyDaoTest {
    // ...
}
@Test注解。@Test
fun testMyDao() {
    // ...
}
@RunWith(AndroidJUnit4::class)注解,以使用AndroidJUnit4运行器。@RunWith(AndroidJUnit4::class)
class MyDaoTest {
    // ...
}
runBlockingTest协程构建器来运行测试方法,以确保在当前事务中执行操作。@Test
fun testMyDao() = runBlockingTest {
    // ...
}
@Test
fun testMyDao() {
    myDatabase.beginTransaction()
    try {
        // 执行数据库操作
        myDatabase.setTransactionSuccessful()
    } finally {
        myDatabase.endTransaction()
    }
}
通过使用上述方法之一,你应该能够解决这个异常并成功运行Android Room的JUnit测试。