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_content_dpr_001(self): 25 self.LE.init_runner('test_content_dpr_001') # 打开runner页面 26 self.LE.click_js() # 取消勾选js 27 self.LE.click_manual() # 取消勾选manual 28 self.LE.send_path('content-dpr/content-dpr-various-elements.html') # 是否进入指定路径 默认是/ 即全部路径 29 self.LE.start_test() # 点击start test 按钮 30 self.LE.click_show_test() # 点击show test按钮 31 self.LE.test_screenshot('/html/body/div/div[1]/img', "test") # test页面截图 32 self.LE.test_screenshot('/html/body/div/video', "test") # test页面截图 33 self.LE.test_screenshot('/html/body/div/div[2]/input', "test") # test页面截图 34 self.LE.test_screenshot('/html/body/div/div[2]', "test") # test页面截图 35 self.LE.test_screenshot('//*[@id="canvas"]', "test") # test页面截图 36 self.LE.click_show_ref() # 点击show reference按钮 37 self.LE.ref_screenshot('/html/body/div/div[1]/img', "ref") # reference页面截图 38 self.LE.ref_screenshot('/html/body/div/div[2]/video', "ref") # reference页面截图 39 self.LE.ref_screenshot('/html/body/div/div[3]/input', "ref") # reference页面截图 40 self.LE.ref_screenshot('/html/body/div/canvas', "ref") # reference页面截图 41 self.LE.test_assert("test", "ref") # 断言 42 self.LE.runner_end('test_content_dpr_001') 43 44 def test_content_dpr_002(self): 45 self.LE.init_runner('test_content_dpr_002') # 打开runner页面 46 self.LE.click_js() # 取消勾选js 47 self.LE.click_manual() # 取消勾选manual 48 self.LE.send_path('content-dpr/image-pseudo-element-content-dpr.html') # 是否进入指定路径 默认是/ 即全部路径 49 self.LE.start_test() # 点击start test 按钮 50 self.LE.click_show_test() # 点击show test按钮 51 self.LE.test_screenshot('/html/body/img', "test") # test页面截图 52 self.LE.click_show_ref() # 点击show reference按钮 53 self.LE.ref_screenshot('/html/body/img[1]', "ref") # reference页面截图 54 self.LE.ref_screenshot('/html/body/img[2]', "ref") # reference页面截图 55 self.LE.test_assert("test", "ref") # 断言 56 self.LE.runner_end('test_content_dpr_002') 57 58 def test_content_dpr_003(self): 59 self.LE.init_runner('test_content_dpr_003') # 打开runner页面 60 self.LE.click_js() # 取消勾选js 61 self.LE.click_manual() # 取消勾选manual 62 self.LE.send_path('content-dpr/image-with-content-dpr-and-explicit-dimensions.html') # 是否进入指定路径 默认是/ 即全部路径 63 self.LE.start_test() # 点击start test 按钮 64 self.LE.click_show_test() # 点击show test按钮 65 self.LE.test_screenshot('/html/body/img[1]', "test") # test页面截图 66 self.LE.test_screenshot('/html/body/img[2]', "test") # test页面截图 67 self.LE.click_show_ref() # 点击show reference按钮 68 self.LE.ref_screenshot('/html/body/img[1]', "ref") # reference页面截图 69 self.LE.ref_screenshot('/html/body/img[2]', "ref") # reference页面截图 70 self.LE.test_assert("test", "ref") # 断言 71 self.LE.runner_end('test_content_dpr_003') 72 73 def test_content_dpr_004(self): 74 self.LE.init_runner('test_content_dpr_004') # 打开runner页面 75 self.LE.click_js() # 取消勾选js 76 self.LE.click_manual() # 取消勾选manual 77 self.LE.send_path('content-dpr/tiled-background-image-with-content-dpr.html') # 是否进入指定路径 默认是/ 即全部路径 78 self.LE.start_test() # 点击start test 按钮 79 self.LE.click_show_test() # 点击show test按钮 80 self.LE.test_screenshot('//*[@id="bg"]', "test") # test页面截图 81 self.LE.test_screenshot('//*[@id="bg2"]', "test") # test页面截图 82 self.LE.click_show_ref() # 点击show reference按钮 83 self.LE.ref_screenshot('//*[@id="bg"]', "ref") # reference页面截图 84 self.LE.ref_screenshot('//*[@id="bg2"]', "ref") # reference页面截图 85 self.LE.test_assert("test", "ref") # 断言 86 self.LE.runner_end('test_content_dpr_004') 87 88 def test_content_dpr_005(self): 89 self.LE.init_runner('test_content_dpr_005') # 打开runner页面 90 self.LE.click_js() # 取消勾选js 91 self.LE.click_manual() # 取消勾选manual 92 self.LE.send_path('content-dpr/tiled-background-svg-image-with-content-dpr.html') # 是否进入指定路径 默认是/ 即全部路径 93 self.LE.start_test() # 点击start test 按钮 94 self.LE.click_show_test() # 点击show test按钮 95 self.LE.test_screenshot('//*[@id="bg"]', "test") # test页面截图 96 self.LE.test_screenshot('//*[@id="bg2"]', "test") # test页面截图 97 self.LE.click_show_ref() # 点击show reference按钮 98 self.LE.ref_screenshot('//*[@id="bg"]', "ref") # reference页面截图 99 self.LE.ref_screenshot('//*[@id="bg2"]', "ref") # reference页面截图 100 self.LE.test_assert("test", "ref") # 断言 101 self.LE.runner_end('test_content_dpr_005') 102 103if __name__ == '__main__': 104 suite = unittest.TestSuite() # 实例化TestSuite 105 suite.addTest(Test("test_add_02")) # 添加测试用例 106 suite.addTest(Test("test_add_01")) 107 runner = unittest.TextTestRunner() # 实例化TextTestRunner 108 runner.run(suite) # 传入suite并执行测试用例 109