我正在学习浓缩咖啡,但我感到困惑。 当我想要执行时,请单击buttonA,但单击buttonB。 但是当我按顺序切换两个按钮时,它起作用了!为什么?
这是我的活动提示!
class TwoActivity : AppCompatActivity() {
var text = ""
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_two)
buttonA.setOnClickListener {
text = "buttonA"
}
buttonB.setOnClickListener {
text = "buttonB"
}
}
}
这是我的布局xml文件
<?xml version="1.0" encoding="utf-8"?>
<android.support.constraint.ConstraintLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".TwoActivity">
<Button android:layout_width="wrap_content" android:layout_height="wrap_content"
android:text="buttonA" android:id="@+id/buttonA"/>
<Button android:layout_width="wrap_content" android:layout_height="wrap_content"
android:text="buttonB" android:id="@+id/buttonB"/>
</android.support.constraint.ConstraintLayout>
这是我的单元测试
@RunWith(RobolectricTestRunner::class)
class TwoActivityTest {
@Test
fun clickButton1() {
var activity = launch(TwoActivity::class.java)
onView(withId(R.id.buttonA)).perform(click())
activity.onActivity {
assertEquals("buttonA",it.text)
}
}
}
我在控制台中得到了这个测试结果
org.junit.ComparisonFailure:
Expected :buttonA
Actual :buttonB