Shirates에서 상대 선택기를 사용하는 방법 - 1부 -
9314 단어 appiumiostestautomationandroid
선택기 표현식
화면에서 요소를 선택하기 위해 선택자 표현식을 사용할 수 있습니다. 이것은 간단하고 강력한 표현입니다(참조).
상대 선택기
화면에서 요소를 선택한 후 상대적으로 요소 주위에 다른 요소를 가져오고 싶을 수 있습니다. 이 경우 Shirates의 상대 선택기를 사용할 수 있습니다.
상대 선택기(방향 기반)
오른쪽, 아래, 왼쪽, 위 방향으로 상대적으로 위젯을 얻을 수 있습니다.
상대 선택자
상대 선택기
설명
:오른쪽
올바른 방향의 위젯
:rightInput
올바른 방향으로 입력
:rightLabel
라벨을 올바른 방향으로
:rightImage
올바른 방향으로 이미지
:오른쪽 버튼
올바른 방향으로 버튼
:rightSwitch
올바른 방향으로 전환
:아래에
아래 방향의 위젯
:아래입력
아래 방향으로 입력
:belowLabel
아래 방향으로 라벨
:아래 이미지
아래 방향의 이미지
:아래버튼
아래 방향의 버튼
:belowSwitch
아래 방향으로 전환
:왼쪽
왼쪽 방향의 위젯
:leftInput
왼쪽 방향으로 입력
:leftLabel
라벨을 왼쪽 방향으로
:leftImage
왼쪽 방향의 이미지
:왼쪽 버튼
왼쪽 방향 버튼
:leftSwitch
왼쪽 방향으로 전환
:위에
위 방향의 위젯
:위 입력
위 방향으로 입력
:위 레이블
위 방향으로 레이블
:위 이미지
위 방향의 이미지
:위버튼
위 방향으로 버튼
:위의 스위치
위 방향으로 전환
추가 위젯 유형(입력, 레이블, 이미지, 버튼, 스위치)을 지정할 수 있습니다.
위젯
내장 위젯 정보는 다음과 같습니다.
위젯
대응(안드로이드)
해당(iOS)
상표
android.widget.TextView
XCUIElementTypeStaticText
입력
android.widget.EditText
XCUIElementTypeTextFieldXCUIElementTypeSecureTextField
영상
android.widget.ImageView
XCUIElementTypeImage
단추
android.widget.Buttonandroid.widget.ImageButtonandroid.widget.CheckBox
XCUIE요소 유형 버튼
스위치
안드로이드.위젯.스위치
XCUIE요소 유형 스위치
위젯
(무엇보다도)
(무엇보다도)
선택기 명령 예
예시
설명
<text1>:right
텍스트가 "text1"인 첫 번째 요소를 선택한 다음 오른쪽 방향의 첫 번째 위젯을 선택합니다.<text1>:right(2)
텍스트가 "text1"인 첫 번째 요소를 선택한 다음 올바른 방향으로 두 번째 위젯을 선택합니다. 이는 <text1>:right(pos=2)
또는 <text1>:right([2])
와 동일합니다.<text1>:rightSwitch
텍스트가 "text1"인 첫 번째 요소를 선택한 다음 오른쪽 방향의 첫 번째 스위치를 선택합니다.<text1>:right(text2)
텍스트가 "text1"인 첫 번째 요소를 선택한 다음 오른쪽 방향에서 텍스트가 "text2"인 첫 번째 위젯을 선택합니다.<text1>:right:belowButton
텍스트가 "text1"인 첫 번째 요소를 선택한 다음 오른쪽 방향의 첫 번째 위젯을 선택한 다음 아래 방향의 첫 번째 버튼을 선택합니다.오른쪽 선택기 사용(Android)
TextView1에서
오른쪽 선택기 사용(iOS)
StaticText1에서
검색 범위
오른쪽 선택기는 기본 요소의 위쪽과 아래쪽 사이에서 오른쪽 방향으로 검색합니다.
재료
[ https://github.com/wave1008/shirates-samples-selectors ]에서 완전한 샘플 프로젝트를 얻을 수 있습니다.
SelectWithDirectionTest
import org.junit.jupiter.api.Order
import org.junit.jupiter.api.Test
import shirates.core.driver.commandextension.*
import shirates.core.testcode.UITest
class SelectWithDirectionTest : UITest() {
@Test
@Order(10)
fun selectWithDirection() {
scenario {
case(1) {
condition {
it.restartApp()
}.action {
it.select("<Battery>:below")
}.expectation {
it.textIs("100%")
}
}
case(2) {
action {
it.select("<Battery>:leftImage")
}.expectation {
it.classIs("android.widget.ImageView")
}
}
case(3) {
action {
it.select("<Battery>:above(2)")
}.expectation {
it.textIs("Notifications")
}
}
case(4) {
condition {
it.tap("Search settings")
}.action {
it.select("<@Back>:right")
}.expectation {
it.classIs("android.widget.EditText")
}
}
}
}
}
검사 결과
HTML 보고서
사양 보고서
자세한 내용은
참조Relative selector(Direction based)
결론
화면에서 요소를 선택하면 Shirates의 상대 선택기를 사용하여 상대적으로 요소 주위에 다른 요소를 가져올 수 있습니다.
오른쪽, 아래, 왼쪽, 위 방향으로 상대적으로 위젯(입력, 레이블, 이미지, 버튼, 스위치)을 얻을 수 있습니다.
Reference
이 문제에 관하여(Shirates에서 상대 선택기를 사용하는 방법 - 1부 -), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/wave1008/how-to-use-relative-selector-in-shirates-part-1--1ak9텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)