如何在Shirates中选择屏幕元素
#android #ios #appium #testautomation

本文是如何使用Shirates的介绍,一种移动测试自动化工具。

如何选择屏幕元素

您可以通过以下方法进行选择。

  • 文字
  • 可访问性(content-desc)
  • ID(资源-ID)
  • 班级
  • xpath

通过文字

您可以通过简单代码选择一个元素。

select("text")

您还可以选择带有以下滚动的元素。

selectWithScrollDown("text")

通过可访问性(content-desc)

您可以在content-desc value之前使用content-desc选择content-desc的元素。

select("@Navigate up")

通过ID(资源-ID)

您可以在ID值之前选择一个通过将前缀“#”放置的资源-ID元素。

select("#id1")

按课堂

您可以通过className选择一个元素,然后放置前缀“。”在班级价值之前。

select(".android.widget.TextView")

由xpath

您可以选择XPath的元素。

select("xpath=//*[@resource-id='android:id/icon']")

有关详细信息,请参见select


材料

您可以从[https://github.com/wave1008/shirates-samples-selectors]获得完整的示例项目。

selectortest

import org.junit.jupiter.api.Order
import org.junit.jupiter.api.Test
import shirates.core.driver.commandextension.*
import shirates.core.testcode.UITest

class SelectTest : UITest() {

    @Test
    @Order(10)
    fun selectByText() {

        scenario {
            case(1) {
                action {
                    it.select("Network & internet")
                }.expectation {
                    it.textIs("Network & internet")
                }
            }
            case(2) {
                action {
                    it.selectWithScrollDown("System")
                }.expectation {
                    it.textIs("System")
                }
            }
        }
    }

    @Test
    @Order(20)
    fun selectByAccessibility() {

        scenario {
            case(1) {
                condition {
                    it.tapWithScrollDown("System")
                }.action {
                    it.select("@Navigate up")
                }.expectation {
                    it.accessIs("Navigate up")
                }
            }
        }
    }

}

测试结果

Test Result


结论

在Shirates中,您可以在简单描述中选择一个屏幕元素。