2016-08-29 6 views
0

calabash-android을 사용하여 앱을 테스트하고 있습니다. adb 명령을 실행하는 사용자 지정 단계를 만들고 싶습니다.명령을 실행하기 위해 호화로운 단계를 만드는 방법은 무엇입니까?

내가 (내가 step_definitions/폴더 아래를 만든) 인수가없는 다음과 같은 사용자 정의 단계 만든 :

내가 뭘하려 my_first.feature에서

Run adb command for our app do |cukes| 
    system("adb devices") 
end 

을, 나는 단계 위의 호출 like :

Feature: My feature 

    Scenario: My scenario 
    Run adb command for our app 

calabash-android run myApp.apk 명령으로 테스트를 실행하면 전자 오류 메시지 :

syntax error, unexpected tIDENTIFIER, expecting keyword_do or '{' or '(' 
Run adb command for our app do |cukes| 

내가 잘못 들었습니까? 인수가없는 간단한 단계를 만드는 방법 &은 하나의 adb 명령 만 실행합니까?

답변

0

몇 가지 문제 :

  • Run는 작은 오이 식별자가 아닙니다. Given, When, Then, And 또는 But으로 단계를 시작하십시오.
  • 단계 정의에는 단계의 노출 표현이 없지만 일치하는 정규 표현식이 있습니다.
  • 블록 매개 변수의 수는 정규식의 캡처 그룹 수와 일치해야합니다. 이 경우 아무 것도 없으므로 블록 매개 변수가 없어야합니다.

이 작동합니다 :

기능/my_first.feature

Feature: My feature 

    Scenario: My scenario 
    When I run the adb command for our app 

step_definitions/my_first_steps.rb

When /^I run the adb command for our app$/ do 
    system("adb devices") 
end