Marathon 2.0b4를 사용하여 응용 프로그램 테스트를 자동화하고 있습니다.루프 내 자이 썬 예외 처리
wait_p
마라톤 의해 제공되는 스크립트 요소의 하나의 단점은, 기본 제한 시간 60 초로를 하드 코드이다. 내 응용 프로그램에서 긴 로딩 시간으로 인해 더 큰 시간 제한이 필요했습니다.
[그래서 더 나은 솔루션이 실제로 테스트 스크립트 수준에서 해결 될 것이라고 생각, 마라톤 패치 간주하지만, 등 병렬 버전을 유지하고 싶지 않았다.]
def wait_p_long(times, compID_name, ppty_name, ppty_value, compID_cell=None):
from marathon.playback import *
"""Wrapper around wait_p which takes exactly the same parameters as wait_p,
except that an extra first parameter is used to specify the number of times
wait_p is called"""
for i in range(1, times):
try:
wait_p(compID_name, ppty_name, ppty_value, compID_cell)
except:
if (i < times):
print "wait_p failed, trying again"
else:
raise
wait_p
가 "에 대한 짧은 wait 속성은 "이고 3 개의 강제 인수와 하나의 선택적 인수 (인수의 이름은 다소 설명이 필요함)를 사용하며 지정된 구성 요소의 특정 속성이 지정된 값과 같아지기를 기다립니다.
위의 메소드 (자이 썬)가 의도하는 것은 times
이라는 하나의 추가 매개 변수를 취하는 것으로, 마지막 시도까지 예외를 억제하고 wait_p
을 시도하는 횟수를 지정합니다.
그러나이 방법은 저에게 효과적이지 않으며 어딘가에서 구문 적 또는 논리적 오류가있을 수 있습니다. 파이썬/자이 썬 전문가의 의견이 있으십니까?
감사합니다.
지금은 그런 n00b처럼 느껴집니다! 1) 범위 (1, times)를 범위 (times)로 변경하고 2) if (i
bguiz