4
4
5
5
class iElementAsync (BaseAsyncKeywords , ABC ):
6
6
7
+ ##############################
8
+ # Query Element
9
+ ##############################
10
+ @abstractmethod
11
+ async def find_elements (self , locator : str ):
12
+ pass
13
+
7
14
##############################
8
15
# Action
9
16
##############################
10
17
@abstractmethod
11
18
async def click_element (self , locator : str ):
12
19
pass
20
+
21
+ @abstractmethod
22
+ async def click_element_at_coordinate (self , locator : str , xoffset : str , yoffset : str ):
23
+ pass
13
24
14
25
@abstractmethod
15
26
async def upload_file (self , locator : str , file_path : str ):
16
27
pass
17
28
29
+ @abstractmethod
30
+ async def press_keys (self , locator : str , * keys : str ):
31
+ pass
32
+
18
33
##############################
19
34
# Status
20
35
##############################
@@ -48,6 +63,10 @@ async def element_should_not_contain(self, locator: str, expected: str, ignore_c
48
63
@abstractmethod
49
64
async def get_text (self , locator : str ):
50
65
pass
66
+
67
+ @abstractmethod
68
+ async def get_attribute (self , locator : str , attribute : str ) -> str :
69
+ pass
51
70
52
71
@abstractmethod
53
72
async def element_text_should_be (self , locator : str , expected : str , ignore_case = False ):
@@ -56,3 +75,10 @@ async def element_text_should_be(self, locator: str, expected: str, ignore_case=
56
75
@abstractmethod
57
76
async def element_text_should_not_be (self , locator : str , expected : str , ignore_case = False ):
58
77
pass
78
+
79
+ ##############################
80
+ # Scrolling
81
+ ##############################
82
+ @abstractmethod
83
+ async def scroll_element_into_view (self , locator : str ):
84
+ pass
0 commit comments