1import logging
2import os.path
3import time
4
5import pytest
6from utils.images import compare_image_similarity, crop_picture
7
8
9class Test:
10    ability_name = 'MainAbility'
11    bundle_name = 'com.ohos.note'
12
13    @pytest.mark.parametrize('setup_teardown', [bundle_name], indirect=True)
14    def test(self, setup_teardown, device):
15        logging.info('start note app')
16        device.start_ability(self.bundle_name, self.ability_name)
17        device.save_snapshot_to_local('{}_note_mainpage.jpeg'.format(device.sn))
18        logging.info('click shuxue gongshi')
19        device.click(464, 313)
20        time.sleep(4)
21        logging.info('click note content area')
22        for i in range(5):
23            device.click(360, 325)
24            time.sleep(2)
25            device.click(360, 324)
26            time.sleep(3)
27            if device.is_soft_keyboard_on():
28                break
29        time.sleep(3)
30        standard_pic = os.path.join(device.resource_path, 'note.jpeg')
31        note_pic = device.save_snapshot_to_local('{}_note.jpeg'.format(device.sn))
32        crop_picture(note_pic)
33        logging.info('compare image similarity')
34        similarity = compare_image_similarity(note_pic, standard_pic)
35        assert similarity > 0.5, 'compare similarity failed'
36