feat: go back home on ios device

This commit is contained in:
debugtalk
2022-07-27 22:10:49 +08:00
parent 36553c0b00
commit 8ca764b872
3 changed files with 13 additions and 2 deletions

View File

@@ -23,6 +23,7 @@ const (
cameraStop MobileMethod = "camera_stop"
recordStart MobileMethod = "record_start"
recordStop MobileMethod = "record_stop"
uiHome MobileMethod = "home"
uiClick MobileMethod = "click"
uiDoubleClick MobileMethod = "double_click"
uiLongClick MobileMethod = "long_click"

View File

@@ -33,6 +33,14 @@ func (s *StepIOS) InstallApp(path string) *StepIOS {
return s
}
func (s *StepIOS) Home() *StepIOS {
s.step.IOS.Actions = append(s.step.IOS.Actions, MobileAction{
Method: uiHome,
Params: nil,
})
return &StepIOS{step: s.step}
}
func (s *StepIOS) Click(params interface{}) *StepIOS {
s.step.IOS.Actions = append(s.step.IOS.Actions, MobileAction{
Method: uiClick,
@@ -345,6 +353,8 @@ func (w *wdaClient) doAction(action MobileAction) error {
case appStart:
// TODO
return errActionNotImplemented
case uiHome:
return w.Driver.Homescreen()
case uiClick:
// click on coordinate
if location, ok := action.Params.([]int); ok {

View File

@@ -32,7 +32,7 @@ func TestIOSSettingsAction(t *testing.T) {
Config: NewConfig("ios ui action on Settings"),
TestSteps: []IStep{
NewStep("launch Settings").
IOS().Click("//*[@label='设置']").
IOS().Home().Click("//*[@label='设置']").
Validate().
AssertNameExists("飞行模式", "「飞行模式」不存在").
AssertNameNotExists("飞行模式2", "「飞行模式2」不存在"),
@@ -52,7 +52,7 @@ func TestIOSDouyinAction(t *testing.T) {
Config: NewConfig("ios ui action on 抖音"),
TestSteps: []IStep{
NewStep("launch douyin").
IOS().Click("//*[@label='抖音']").
IOS().Home().Click("//*[@label='抖音']").
Validate().
AssertNameExists("首页", "首页 tab 不存在").
AssertNameExists("消息", "消息 tab 不存在"),