• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1"""
2 * Copyright (c) 2023 iSoftStone Information Technology (Group) Co.,Ltd.
3 * Licensed under the Apache License, Version 2.0 (the "License");
4 * you may not use this file except in compliance with the License.
5 * You may obtain a copy of the License at
6 *
7 *     http://www.apache.org/licenses/LICENSE-2.0
8 *
9 * Unless required by applicable law or agreed to in writing, software
10 * distributed under the License is distributed on an "AS IS" BASIS,
11 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12 * See the License for the specific language governing permissions and
13 * limitations under the License.
14"""
15import unittest
16from Tool import WebView
17
18class Test(unittest.TestCase):
19    @classmethod  # 初始化测试环境且只会执行一次
20    def setUp(self) -> None:
21        self.LE = WebView()
22        self.LE.init_webview(test_package='com.example.myapplication')  # 运行chromeDriver
23
24    def test_shadow_dom_001(self):
25        self.LE.init_runner('test_shadow_dom_001')  # 打开runner页面
26        self.LE.click_js()  # 取消勾选js
27        self.LE.click_manual()  # 取消勾选manual
28        self.LE.send_path('shadow-dom/directionality-001.tentative.html')  # 是否进入指定路径 默认是/ 即全部路径
29        self.LE.start_test()  # 点击start test 按钮
30        self.LE.click_show_test()  # 点击show test按钮
31        self.LE.test_implicit_expression_screenshot('//*[@id="host2"]/span', "test")  # test页面截图
32        self.LE.click_show_ref()  # 点击show reference按钮
33        self.LE.ref_implicit_expression_screenshot('/html/body/div[3]/span', "ref")  # reference页面截图
34        self.LE.test_assert("test", "ref")  # 断言
35        self.LE.runner_end('test_shadow_dom_001')
36
37    def test_shadow_dom_002(self):
38        self.LE.init_runner('test_shadow_dom_002')  # 打开runner页面
39        self.LE.click_js()  # 取消勾选js
40        self.LE.click_manual()  # 取消勾选manual
41        self.LE.send_path('shadow-dom/directionality-002.tentative.html')  # 是否进入指定路径 默认是/ 即全部路径
42        self.LE.start_test()  # 点击start test 按钮
43        self.LE.click_show_test()  # 点击show test按钮
44        self.LE.test_screenshot('/html/body/div', "test")  # test页面截图
45        self.LE.click_show_ref()  # 点击show reference按钮
46        self.LE.ref_screenshot('/html/body/div', "ref")  # reference页面截图
47        self.LE.test_assert("test", "ref")  # 断言
48        self.LE.runner_end('test_shadow_dom_002')
49
50    def test_shadow_dom_003(self):
51        self.LE.init_runner('test_shadow_dom_003')  # 打开runner页面
52        self.LE.click_js()  # 取消勾选js
53        self.LE.click_manual()  # 取消勾选manual
54        self.LE.send_path('shadow-dom/focus/focus-pseudo-on-shadow-host-1.html')  # 是否进入指定路径 默认是/ 即全部路径
55        self.LE.start_test()  # 点击start test 按钮
56        self.LE.click_show_test()  # 点击show test按钮
57        self.LE.test_screenshot('/html/body/div', "test")  # test页面截图
58        self.LE.click_show_ref()  # 点击show reference按钮
59        self.LE.ref_file_screenshot("ref")  # reference页面截图
60        self.LE.test_assert("test", "ref")  # 断言
61        self.LE.runner_end('test_shadow_dom_003')
62
63    def test_shadow_dom_004(self):
64        self.LE.init_runner('test_shadow_dom_004')  # 打开runner页面
65        self.LE.click_js()  # 取消勾选js
66        self.LE.click_manual()  # 取消勾选manual
67        self.LE.send_path('shadow-dom/focus/focus-pseudo-on-shadow-host-2.html')  # 是否进入指定路径 默认是/ 即全部路径
68        self.LE.start_test()  # 点击start test 按钮
69        self.LE.click_show_test()  # 点击show test按钮
70        self.LE.test_screenshot('//*[@id="host"]', "test")  # test页面截图
71        self.LE.test_screenshot('//*[@id="host"]/span', "test")  # test页面截图
72        self.LE.click_show_ref()  # 点击show reference按钮
73        self.LE.ref_file_screenshot("ref")  # reference页面截图
74        self.LE.test_assert("test", "ref")  # 断言
75        self.LE.runner_end('test_shadow_dom_004')
76
77    def test_shadow_dom_005(self):
78        self.LE.init_runner('test_shadow_dom_005')  # 打开runner页面
79        self.LE.click_js()  # 取消勾选js
80        self.LE.click_manual()  # 取消勾选manual
81        self.LE.send_path('shadow-dom/focus/focus-pseudo-on-shadow-host-3.html')  # 是否进入指定路径 默认是/ 即全部路径
82        self.LE.start_test()  # 点击start test 按钮
83        self.LE.click_show_test()  # 点击show test按钮
84        self.LE.test_screenshot('//*[@id="host"]', "test")  # test页面截图
85        self.LE.click_show_ref()  # 点击show reference按钮
86        self.LE.ref_file_screenshot("ref")  # reference页面截图
87        self.LE.test_assert("test", "ref")  # 断言
88        self.LE.runner_end('test_shadow_dom_005')
89
90    def test_shadow_dom_006(self):
91        self.LE.init_runner('test_shadow_dom_006')  # 打开runner页面
92        self.LE.click_js()  # 取消勾选js
93        self.LE.click_manual()  # 取消勾选manual
94        self.LE.send_path('shadow-dom/imperative-slot-layout-invalidation-001.html')  # 是否进入指定路径 默认是/ 即全部路径
95        self.LE.start_test()  # 点击start test 按钮
96        self.LE.click_show_test()  # 点击show test按钮
97        self.LE.test_screenshot('/html/body/div', "test")  # test页面截图
98        self.LE.click_show_ref()  # 点击show reference按钮
99        self.LE.ref_screenshot('/html/body/div/span', "ref")  # reference页面截图
100        self.LE.test_assert("test", "ref")  # 断言
101        self.LE.runner_end('test_shadow_dom_006')
102
103    def test_shadow_dom_007(self):
104        self.LE.init_runner('test_shadow_dom_007')  # 打开runner页面
105        self.LE.click_js()  # 取消勾选js
106        self.LE.click_manual()  # 取消勾选manual
107        self.LE.send_path('shadow-dom/invalidate-sibling-different-slots.html')  # 是否进入指定路径 默认是/ 即全部路径
108        self.LE.start_test()  # 点击start test 按钮
109        self.LE.click_show_test()  # 点击show test按钮
110        self.LE.test_screenshot('//*[@id="a"]', "test")  # test页面截图
111        self.LE.test_screenshot('/html/body/details/summary[2]', "test")  # test页面截图
112        self.LE.click_show_ref()  # 点击show reference按钮
113        self.LE.ref_screenshot('//*[@id="a"]', "ref")  # reference页面截图
114        self.LE.ref_screenshot('/html/body/details/summary[2]', "ref")  # reference页面截图
115        self.LE.test_assert("test", "ref")  # 断言
116        self.LE.runner_end('test_shadow_dom_007')
117
118    def test_shadow_dom_008(self):
119        self.LE.init_runner('test_shadow_dom_008')  # 打开runner页面
120        self.LE.click_js()  # 取消勾选js
121        self.LE.click_manual()  # 取消勾选manual
122        self.LE.send_path('shadow-dom/layout-slot-no-longer-assigned.html')  # 是否进入指定路径 默认是/ 即全部路径
123        self.LE.start_test()  # 点击start test 按钮
124        self.LE.click_show_test()  # 点击show test按钮
125        self.LE.test_screenshot('/html/body', "test")  # test页面截图
126        self.LE.click_show_ref()  # 点击show reference按钮
127        self.LE.ref_screenshot('/html/body', "ref")  # reference页面截图
128        self.LE.test_assert("test", "ref")  # 断言
129        self.LE.runner_end('test_shadow_dom_008')
130
131    def test_shadow_dom_009(self):
132        self.LE.init_runner('test_shadow_dom_009')  # 打开runner页面
133        self.LE.click_js()  # 取消勾选js
134        self.LE.click_manual()  # 取消勾选manual
135        self.LE.send_path('shadow-dom/layout-slot-no-longer-fallback.html')  # 是否进入指定路径 默认是/ 即全部路径
136        self.LE.start_test()  # 点击start test 按钮
137        self.LE.click_show_test()  # 点击show test按钮
138        self.LE.test_screenshot('/html/body', "test")  # test页面截图
139        self.LE.click_show_ref()  # 点击show reference按钮
140        self.LE.ref_screenshot('/html/body', "ref")  # reference页面截图
141        self.LE.test_assert("test", "ref")  # 断言
142        self.LE.runner_end('test_shadow_dom_009')
143
144    def test_shadow_dom_010(self):
145        self.LE.init_runner('test_shadow_dom_010')  # 打开runner页面
146        self.LE.click_js()  # 取消勾选js
147        self.LE.click_manual()  # 取消勾选manual
148        self.LE.send_path('shadow-dom/shadow-style-invalidation-vw-units.html')  # 是否进入指定路径 默认是/ 即全部路径
149        self.LE.start_test()  # 点击start test 按钮
150        self.LE.click_show_test()  # 点击show test按钮
151        self.LE.test_screenshot('/html/body/iframe', "test")  # test页面截图
152        self.LE.click_show_ref()  # 点击show reference按钮
153        self.LE.ref_screenshot('/html/body/div', "ref")  # reference页面截图
154        self.LE.test_assert("test", "ref")  # 断言
155        self.LE.runner_end('test_shadow_dom_010')
156
157    def test_shadow_dom_011(self):
158        self.LE.init_runner('test_shadow_dom_011')  # 打开runner页面
159        self.LE.click_js()  # 取消勾选js
160        self.LE.click_manual()  # 取消勾选manual
161        self.LE.send_path('shadow-dom/slot-fallback-content-001.html')  # 是否进入指定路径 默认是/ 即全部路径
162        self.LE.start_test()  # 点击start test 按钮
163        self.LE.click_show_test()  # 点击show test按钮
164        self.LE.test_screenshot('/html/body/div/div[1]', "test")  # test页面截图
165        self.LE.test_screenshot('/html/body/div/div[2]', "test")  # test页面截图
166        self.LE.click_show_ref()  # 点击show reference按钮
167        self.LE.ref_screenshot('/html/body/div/div[1]', "ref")  # reference页面截图
168        self.LE.ref_screenshot('/html/body/div/div[2]', "ref")  # reference页面截图
169        self.LE.test_assert("test", "ref")  # 断言
170        self.LE.runner_end('test_shadow_dom_011')
171
172    def test_shadow_dom_012(self):
173        self.LE.init_runner('test_shadow_dom_012')  # 打开runner页面
174        self.LE.click_js()  # 取消勾选js
175        self.LE.click_manual()  # 取消勾选manual
176        self.LE.send_path('shadow-dom/slot-fallback-content-002.html')  # 是否进入指定路径 默认是/ 即全部路径
177        self.LE.start_test()  # 点击start test 按钮
178        self.LE.click_show_test()  # 点击show test按钮
179        self.LE.test_screenshot('/html/body/div/div[1]', "test")  # test页面截图
180        self.LE.test_screenshot('/html/body/div/div[2]', "test")  # test页面截图
181        self.LE.click_show_ref()  # 点击show reference按钮
182        self.LE.ref_screenshot('/html/body/div/div[1]', "ref")  # reference页面截图
183        self.LE.ref_screenshot('/html/body/div/div[2]', "ref")  # reference页面截图
184        self.LE.test_assert("test", "ref")  # 断言
185        self.LE.runner_end('test_shadow_dom_012')
186
187    def test_shadow_dom_013(self):
188        self.LE.init_runner('test_shadow_dom_013')  # 打开runner页面
189        self.LE.click_js()  # 取消勾选js
190        self.LE.click_manual()  # 取消勾选manual
191        self.LE.send_path('shadow-dom/slot-fallback-content-003.html')  # 是否进入指定路径 默认是/ 即全部路径
192        self.LE.start_test()  # 点击start test 按钮
193        self.LE.click_show_test()  # 点击show test按钮
194        self.LE.test_screenshot('/html/body/div[1]', "test")  # test页面截图
195        self.LE.test_screenshot('/html/body/div[2]', "test")  # test页面截图
196        self.LE.click_show_ref()  # 点击show reference按钮
197        self.LE.ref_screenshot('/html/body/div[1]', "ref")  # reference页面截图
198        self.LE.ref_screenshot('/html/body/div[2]', "ref")  # reference页面截图
199        self.LE.test_assert("test", "ref")  # 断言
200        self.LE.runner_end('test_shadow_dom_013')
201
202    def test_shadow_dom_014(self):
203        self.LE.init_runner('test_shadow_dom_014')  # 打开runner页面
204        self.LE.click_js()  # 取消勾选js
205        self.LE.click_manual()  # 取消勾选manual
206        self.LE.send_path('shadow-dom/slot-fallback-content-004.html')  # 是否进入指定路径 默认是/ 即全部路径
207        self.LE.start_test()  # 点击start test 按钮
208        self.LE.click_show_test()  # 点击show test按钮
209        self.LE.test_screenshot('//*[@id="host1"]', "test")  # test页面截图
210        self.LE.test_screenshot('//*[@id="host3"]', "test")  # test页面截图
211        self.LE.test_screenshot('//*[@id="host4"]', "test")  # test页面截图
212        self.LE.click_show_ref()  # 点击show reference按钮
213        self.LE.ref_screenshot('/html/body/div[1]/div', "ref")  # reference页面截图
214        self.LE.ref_screenshot('/html/body/div[2]/div', "ref")  # reference页面截图
215        self.LE.ref_screenshot('/html/body/div[3]/div', "ref")  # reference页面截图
216        self.LE.test_assert("test", "ref")  # 断言
217        self.LE.runner_end('test_shadow_dom_014')
218
219    def test_shadow_dom_015(self):
220        self.LE.init_runner('test_shadow_dom_015')  # 打开runner页面
221        self.LE.click_js()  # 取消勾选js
222        self.LE.click_manual()  # 取消勾选manual
223        self.LE.send_path('shadow-dom/slot-fallback-content-005.html')  # 是否进入指定路径 默认是/ 即全部路径
224        self.LE.start_test()  # 点击start test 按钮
225        self.LE.click_show_test()  # 点击show test按钮
226        self.LE.test_screenshot('//*[@id="host"]', "test")  # test页面截图
227        self.LE.click_show_ref()  # 点击show reference按钮
228        self.LE.ref_screenshot('/html/body/p', "ref")  # reference页面截图
229        self.LE.test_assert("test", "ref")  # 断言
230        self.LE.runner_end('test_shadow_dom_015')
231
232    def test_shadow_dom_016(self):
233        self.LE.init_runner('test_shadow_dom_016')  # 打开runner页面
234        self.LE.click_js()  # 取消勾选js
235        self.LE.click_manual()  # 取消勾选manual
236        self.LE.send_path('shadow-dom/slot-fallback-content-006.html')  # 是否进入指定路径 默认是/ 即全部路径
237        self.LE.start_test()  # 点击start test 按钮
238        self.LE.click_show_test()  # 点击show test按钮
239        self.LE.test_implicit_expression_screenshot('/html/body/div[5]', "test")  # test页面截图
240        self.LE.click_show_ref()  # 点击show reference按钮
241        self.LE.ref_implicit_expression_screenshot('/html/body/div[5]', "ref")  # reference页面截图
242        self.LE.test_assert("test", "ref")  # 断言
243        self.LE.runner_end('test_shadow_dom_016')
244
245    def test_shadow_dom_017(self):
246        self.LE.init_runner('test_shadow_dom_017')  # 打开runner页面
247        self.LE.click_js()  # 取消勾选js
248        self.LE.click_manual()  # 取消勾选manual
249        self.LE.send_path('shadow-dom/slot-fallback-content-007.html')  # 是否进入指定路径 默认是/ 即全部路径
250        self.LE.start_test()  # 点击start test 按钮
251        self.LE.click_show_test()  # 点击show test按钮
252        self.LE.test_implicit_expression_screenshot('/html/body/div/div[3]', "test")  # test页面截图
253        self.LE.click_show_ref()  # 点击show reference按钮
254        self.LE.ref_screenshot('/html/body/div/div[1]', "ref")  # reference页面截图
255        self.LE.ref_screenshot('/html/body/div/div[2]', "ref")  # reference页面截图
256        self.LE.ref_screenshot('/html/body/div/div[3]', "ref")  # reference页面截图
257        self.LE.ref_screenshot('/html/body/div/div[4]', "ref")  # reference页面截图
258        self.LE.test_assert("test", "ref")  # 断言
259        self.LE.runner_end('test_shadow_dom_017')
260
261    def test_shadow_dom_018(self):
262        self.LE.init_runner('test_shadow_dom_018')  # 打开runner页面
263        self.LE.click_js()  # 取消勾选js
264        self.LE.click_manual()  # 取消勾选manual
265        self.LE.send_path('shadow-dom/slot-fallback-content-008.html')  # 是否进入指定路径 默认是/ 即全部路径
266        self.LE.start_test()  # 点击start test 按钮
267        self.LE.click_show_test()  # 点击show test按钮
268        self.LE.test_implicit_expression_screenshot('/html/body/div', "test")  # test页面截图
269        self.LE.click_show_ref()  # 点击show reference按钮
270        self.LE.ref_screenshot('/html/body/div/div[1]', "ref")  # reference页面截图
271        self.LE.test_assert("test", "ref")  # 断言
272        self.LE.runner_end('test_shadow_dom_018')
273
274    def test_shadow_dom_019(self):
275        self.LE.init_runner('test_shadow_dom_019')  # 打开runner页面
276        self.LE.click_js()  # 取消勾选js
277        self.LE.click_manual()  # 取消勾选manual
278        self.LE.send_path('shadow-dom/untriaged/shadow-trees/nested-shadow-trees/nested_tree_reftest.html')  # 是否进入指定路径 默认是/ 即全部路径
279        self.LE.start_test()  # 点击start test 按钮
280        self.LE.click_show_test()  # 点击show test按钮
281        self.LE.test_screenshot('/html/body/div', "test")  # test页面截图
282        self.LE.click_show_ref()  # 点击show reference按钮
283        self.LE.ref_screenshot('/html/body/div//div//div', "ref")  # reference页面截图
284        self.LE.test_assert("test", "ref")  # 断言
285        self.LE.runner_end('test_shadow_dom_019')
286
287    def test_shadow_dom_020(self):
288        self.LE.init_runner('test_shadow_dom_020')  # 打开runner页面
289        self.LE.click_js()  # 取消勾选js
290        self.LE.click_manual()  # 取消勾选manual
291        self.LE.send_path('shadow-dom/untriaged/shadow-trees/reprojection/reprojection-001.html')  # 是否进入指定路径 默认是/ 即全部路径
292        self.LE.start_test()  # 点击start test 按钮
293        self.LE.click_show_test()  # 点击show test按钮
294        self.LE.test_implicit_expression_screenshot('//*[@id="host"]/div[1]', "test")  # test页面截图
295        self.LE.click_show_ref()  # 点击show reference按钮
296        self.LE.ref_implicit_expression_screenshot('//*[@id="host2"]/div[2]/div[3]', "ref")  # reference页面截图
297        self.LE.test_assert("test", "ref")  # 断言
298        self.LE.runner_end('test_shadow_dom_020')
299
300    def test_shadow_dom_021(self):
301        self.LE.init_runner('test_shadow_dom_021')  # 打开runner页面
302        self.LE.click_js()  # 取消勾选js
303        self.LE.click_manual()  # 取消勾选manual
304        self.LE.send_path('shadow-dom/untriaged/shadow-trees/shadow-root-001.html')  # 是否进入指定路径 默认是/ 即全部路径
305        self.LE.start_test()  # 点击start test 按钮
306        self.LE.click_show_test()  # 点击show test按钮
307        self.LE.test_screenshot('/html/body/div', "test")  # test页面截图
308        self.LE.click_show_ref()  # 点击show reference按钮
309        self.LE.ref_screenshot('/html/body/div', "ref")  # reference页面截图
310        self.LE.test_assert("test", "ref")  # 断言
311        self.LE.runner_end('test_shadow_dom_021')
312
313    def test_shadow_dom_022(self):
314        self.LE.init_runner('test_shadow_dom_022')  # 打开runner页面
315        self.LE.click_js()  # 取消勾选js
316        self.LE.click_manual()  # 取消勾选manual
317        self.LE.send_path('shadow-dom/untriaged/shadow-trees/shadow-root-002.html')  # 是否进入指定路径 默认是/ 即全部路径
318        self.LE.start_test()  # 点击start test 按钮
319        self.LE.click_show_test()  # 点击show test按钮
320        self.LE.test_screenshot('/html/body/div//div[1]', "test")  # test页面截图
321        self.LE.test_screenshot('//*[@id="host"]//div[2]', "test")  # test页面截图
322        self.LE.test_screenshot('//*[@id="host"]/div[1]', "test")  # test页面截图
323        self.LE.test_screenshot('//*[@id="host"]/div[2]', "test")  # test页面截图
324        self.LE.click_show_ref()  # 点击show reference按钮
325        self.LE.ref_screenshot('/html/body/div[1]', "ref")  # reference页面截图
326        self.LE.ref_screenshot('/html/body/div[2]', "ref")  # reference页面截图
327        self.LE.ref_screenshot('/html/body/div[3]', "ref")  # reference页面截图
328        self.LE.ref_screenshot('/html/body/div[4]', "ref")  # reference页面截图
329        self.LE.test_assert("test", "ref")  # 断言
330        self.LE.runner_end('test_shadow_dom_022')
331
332    def test_shadow_dom_023(self):
333        self.LE.init_runner('test_shadow_dom_023')  # 打开runner页面
334        self.LE.click_js()  # 取消勾选js
335        self.LE.click_manual()  # 取消勾选manual
336        self.LE.send_path('shadow-dom/untriaged/styles/not-apply-in-shadow-root-001.html')  # 是否进入指定路径 默认是/ 即全部路径
337        self.LE.start_test()  # 点击start test 按钮
338        self.LE.click_show_test()  # 点击show test按钮
339        self.LE.test_screenshot('//*[@id="shadow-host"]', "test")  # test页面截图
340        self.LE.click_show_ref()  # 点击show reference按钮
341        self.LE.ref_screenshot('/html/body/div', "ref")  # reference页面截图
342        self.LE.test_assert("test", "ref")  # 断言
343        self.LE.runner_end('test_shadow_dom_023')
344
345if __name__ == '__main__':
346    suite = unittest.TestSuite()  # 实例化TestSuite
347    suite.addTest(Test("test_add_02"))  # 添加测试用例
348    suite.addTest(Test("test_add_01"))
349    runner = unittest.TextTestRunner()  # 实例化TextTestRunner
350    runner.run(suite)  # 传入suite并执行测试用例
351