0

我有一个使用 AndroidCheckBox控件的应用程序。

如何创建一个检测是否CheckBox被选中的 UITest?

4

1 回答 1

1

示例代码

bool IsCheckBoxChecked(string textBoxContentDescription)
{
    return (bool)app.Query(x => x.Marked(textBoxContentDescription).Invoke("isChecked"))?.FirstOrDefault();
}

示例应用

这是我整理的示例应用程序,用于演示如何执行此操作: https ://github.com/brminnick/AndroidCheckBoxSampleApp

解释

要从 UITest 与 Android CheckBox 交互,您必须使用Invoke方法来访问本机 Java Android API中的方法。在我们的Invoke语句中,我们可以利用performClick()来切换 CheckBox,setChecked(boolean checked)设置 CheckBox 的值,并在 CheckBox 被选中和未选中时isChecked()返回一个布尔值。truefalse

在 UITest 项目中,我创建了一个ToggleCheckBox方法来切换单个 CheckBox,一个IsCheckBoxChecked方法来返回 CheckBox 当前状态,以及一个SetCheckBox方法来设置 CheckBox 状态。

所有测试均通过Xamarin Test Cloud进行验证。测试报告可在此处查看。

在此处输入图像描述

于 2016-12-05T00:44:13.793 回答