JUnit 测试无法创建帐户
JUnit test can't create an Account
我正在尝试 运行 在我的应用程序中进行一些测试,但是当我尝试创建一个 Account(name, type)
时,结果在 JUnit 中总是 null
但当我 运行 应用程序
示例:
class ExampleTest {
@Rule
@JvmField
val instantExecutorRule = InstantTaskExecutorRule()
@Rule
@JvmField
val trampolineSchedulerRule = TrampolineSchedulerRule()
val ACCOUNT_NAME = "ACCOUNT_NAME"
val ACCOUNT_TYPE = "ACCOUNT_TYPE"
@Test
fun createAccountTest() {
val account = Account(ACCOUNT_NAME, ACCOUNT_TYPE)
assertThat(account.name, `is`(ACCOUNT_NAME))
}
}
我运行测试的时候有什么特别的方法可以创建账户吗?
我认为你的问题是你正试图在 test
目录中执行这种类型的测试,这是用于单元测试的目录。
在这种情况下,您正在访问一个框架 class,因此您需要将测试放在您的 androidTest
目录中,其中存放了检测测试。
在我的环境中,这个测试是绿色的:
import org.junit.Assert.assertEquals
import org.junit.Assert.assertNotEquals
@RunWith(AndroidJUnit4::class)
class AccountTest {
@Test
fun accountCreationTest() {
val account = Account("NAME", "TYPE")
assertEquals(account.name, "NAME")
assertNotEquals(account.name, "WRONGNAME")
}
}
我正在尝试 运行 在我的应用程序中进行一些测试,但是当我尝试创建一个 Account(name, type)
时,结果在 JUnit 中总是 null
但当我 运行 应用程序
示例:
class ExampleTest {
@Rule
@JvmField
val instantExecutorRule = InstantTaskExecutorRule()
@Rule
@JvmField
val trampolineSchedulerRule = TrampolineSchedulerRule()
val ACCOUNT_NAME = "ACCOUNT_NAME"
val ACCOUNT_TYPE = "ACCOUNT_TYPE"
@Test
fun createAccountTest() {
val account = Account(ACCOUNT_NAME, ACCOUNT_TYPE)
assertThat(account.name, `is`(ACCOUNT_NAME))
}
}
我运行测试的时候有什么特别的方法可以创建账户吗?
我认为你的问题是你正试图在 test
目录中执行这种类型的测试,这是用于单元测试的目录。
在这种情况下,您正在访问一个框架 class,因此您需要将测试放在您的 androidTest
目录中,其中存放了检测测试。
在我的环境中,这个测试是绿色的:
import org.junit.Assert.assertEquals
import org.junit.Assert.assertNotEquals
@RunWith(AndroidJUnit4::class)
class AccountTest {
@Test
fun accountCreationTest() {
val account = Account("NAME", "TYPE")
assertEquals(account.name, "NAME")
assertNotEquals(account.name, "WRONGNAME")
}
}