>我有函数 测试项目选定位置 对于微调器 我想做单元测试这是我想测试的功能示例
public boolean isGenderValid() {
return (genderSpinner.getSelectedItemPosition() != 0);
}
您可以通过创建微调器类的模拟并将其注入到要测试的类中来实现。
例如:
public class SpinnerStub extends Spinner {
public int getSelectedItemPosition() {
return 1;
}
}
然后,在测试中创建SpinnerStub
,并将其设置为要测试的类的genderSpinner
。我不熟悉 android 控件,但我认为也有一种方法可以设置所选项目。您还可以在存根中覆盖该值,并使用它来getSelectedItemPosition()
返回您之前设置的值。
实际的单元测试可能如下所示:
@Test
public void whenSelectionIsValid_isGenderValidShouldReturnTrue() {
YourClass sut = new YourClass();
SpinnerStub spinnerStub = new SpinnerStub();
sut.setSpinner(spinnerStub);
assertTrue(sut.isGenderValid());
}