diff options
author | Yongqin Liu <yongqin.liu@linaro.org> | 2015-04-13 22:27:35 +0800 |
---|---|---|
committer | Milosz Wasilewski <milosz.wasilewski@linaro.org> | 2015-04-16 12:13:54 +0000 |
commit | 8b8a3789cbc47bffa534527a155a136b060884d7 (patch) | |
tree | d27814717960be8346159b71a6feb87212c68879 /cf-bench | |
parent | eefb30d1bdeced54618188e154c369927d030506 (diff) |
cf-bench: some improvements
try catch the ValueError when run vc.dump, and change to use
the common output-test-result.sh script to deal with result
also replace the call for device.drag with device.press
Change-Id: I8d31e90b01a38e150441a660b5c180ce697b2f09
Signed-off-by: Yongqin Liu <yongqin.liu@linaro.org>
Diffstat (limited to 'cf-bench')
-rwxr-xr-x | cf-bench/vc.py | 47 |
1 files changed, 32 insertions, 15 deletions
diff --git a/cf-bench/vc.py b/cf-bench/vc.py index 1adc6a3..03b9841 100755 --- a/cf-bench/vc.py +++ b/cf-bench/vc.py @@ -6,19 +6,38 @@ from subprocess import call from com.dtmilano.android.viewclient import ViewClient, ViewNotFoundException + +parent_dir = os.path.realpath(os.path.dirname(__file__)) +f_output_result="%s/../common/output-test-result.sh" % parent_dir + default_unit = 'points' def get_score_with_content_desc(vc, content_desc, offset=1): try: - score_view = vc.findViewWithTextOrRaise(content_desc) + found_score_view = False + while not found_score_view: + score_view = vc.findViewWithText(content_desc) + if not score_view: + device.press('DPAD_DOWN') + time.sleep(2) + try: + vc.dump() + except RuntimeError as e: + pass + except ValueError as e: + pass + else: + found_score_view = True + score_uid = score_view.getUniqueId() uid = int(re.search("id/no_id/(?P<uid>\d+)", score_uid).group('uid')) score = vc.findViewByIdOrRaise("id/no_id/%s" % (uid + offset)) score_text = score.getText() if score_text.find("%") > 0: score_value, units = score_text.split(" ") - call(['lava-test-case', content_desc, '--result', 'pass', '--measurement', score_value, '--units', units]) + call([f_output_result, content_desc, 'pass', score_value, units]) + else: - call(['lava-test-case', content_desc, '--result', 'pass', '--measurement', score_text, '--units', default_unit]) + call([f_output_result, content_desc, 'pass', score_text, default_unit]) except ViewNotFoundException: print "%s not found" % (content_desc) pass @@ -38,19 +57,23 @@ start_button.touch() finished = False while(not finished): try: - time.sleep(1) - vc.dump('-1') + time.sleep(5) + vc.dump() progress_button = vc.findViewByIdOrRaise("eu.chainfire.cfbench:id/admob_preference_layout") finished = True except ViewNotFoundException: pass except RuntimeError as e: - print e + pass + except ValueError as e: + pass print("Benchmark Finished") -device.drag((300,1000), (300,300), 300) -time.sleep(5) -vc.dump(window='-1') +vc.dump() +result_label = vc.findViewWithTextOrRaise(u'Results') +result_label.touch() +device.press('DPAD_DOWN') +time.sleep(2) #Fetch Scores get_score_with_content_desc(vc, "Native MIPS") @@ -66,12 +89,6 @@ get_score_with_content_desc(vc, "Native Memory Write") get_score_with_content_desc(vc, "Java Memory Write") get_score_with_content_desc(vc, "Native Disk Read") get_score_with_content_desc(vc, "Native Disk Write") - -# drag screen once more to reveal remaining results -device.drag((300,1000), (300,300), 300) -time.sleep(5) -vc.dump(window='-1') - get_score_with_content_desc(vc, "Java Efficiency MIPS") get_score_with_content_desc(vc, "Java Efficiency MSFLOPS") get_score_with_content_desc(vc, "Java Efficiency MDFLOPS") |