1 /* 2 * Copyright (c) 2021 Huawei Device 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 */ 15 16 package ohos.devtools.fixture; 17 18 import ohos.devtools.datasources.databases.databaseapi.DataBaseApi; 19 import ohos.devtools.datasources.utils.device.service.MultiDeviceManager; 20 import ohos.devtools.datasources.utils.plugin.IPluginConfig; 21 import ohos.devtools.datasources.utils.plugin.service.PlugManager; 22 import ohos.devtools.datasources.utils.process.service.ProcessManager; 23 import ohos.devtools.datasources.utils.profilerlog.ProfilerLogManager; 24 import ohos.devtools.datasources.utils.session.service.SessionManager; 25 import ohos.devtools.pluginconfig.AgentConfig; 26 import ohos.devtools.pluginconfig.BytraceConfig; 27 import ohos.devtools.pluginconfig.CpuConfig; 28 import ohos.devtools.pluginconfig.DiskIoConfig; 29 import ohos.devtools.pluginconfig.FtraceConfig; 30 import ohos.devtools.pluginconfig.HilogConfig; 31 import ohos.devtools.pluginconfig.MemoryConfig; 32 import ohos.devtools.pluginconfig.ProcessConfig; 33 import ohos.devtools.pluginconfig.UserConfig; 34 import ohos.devtools.views.common.UtConstant; 35 import ohos.devtools.views.layout.HomePanel; 36 import ohos.devtools.views.user.UserManager; 37 import org.apache.logging.log4j.Level; 38 import org.assertj.swing.fixture.FrameFixture; 39 import org.junit.After; 40 import org.junit.Before; 41 import org.junit.Test; 42 43 import javax.swing.JFrame; 44 import java.awt.AWTException; 45 import java.util.ArrayList; 46 import java.util.List; 47 import java.util.Objects; 48 import java.util.concurrent.TimeUnit; 49 50 /** 51 * Metrics Button Fixture Test 52 * 53 * @since 2021/2/1 9:31 54 */ 55 public class MetricsButtonFixtureTest { 56 private FrameFixture frameFixture; 57 58 /** 59 * init 60 * 61 * @tc.name: init 62 * @tc.number: OHOS_JAVA_init_0001 63 * @tc.desc: init 64 * @tc.type: functional testing 65 * @tc.require: AR000FK5UI 66 * @throws AWTException AWTException 67 */ 68 @Before init()69 public void init() throws AWTException { 70 ProcessManager.getInstance().setIsRequest(false); 71 SessionManager.getInstance().settingPermissions(); 72 ProfilerLogManager.getSingleton().updateLogLevel(Level.ERROR); 73 PlugManager.getInstance().unzipStdDevelopTools(); 74 DataBaseApi.getInstance().initDataSourceManager(); 75 MultiDeviceManager.getInstance().start(); 76 List<Class<? extends IPluginConfig>> plugConfigList = new ArrayList(); 77 plugConfigList.add(ProcessConfig.class); 78 plugConfigList.add(AgentConfig.class); 79 plugConfigList.add(BytraceConfig.class); 80 plugConfigList.add(FtraceConfig.class); 81 plugConfigList.add(CpuConfig.class); 82 plugConfigList.add(HilogConfig.class); 83 if (Objects.nonNull(UserManager.getInstance().getSdkImpl())) { 84 plugConfigList.add(UserConfig.class); 85 } 86 plugConfigList.add(DiskIoConfig.class); 87 plugConfigList.add(MemoryConfig.class); 88 PlugManager.getInstance().loadingPlugs(plugConfigList); 89 while (true) { 90 if (MultiDeviceManager.getInstance().getOnlineDeviceInfoList().size() > 0) { 91 break; 92 } 93 } 94 JFrame frame = new JFrame(); 95 frame.add(new HomePanel()); 96 frameFixture = new FrameFixture(frame); 97 // Display the frame 98 frameFixture.show(); 99 } 100 101 /** 102 * system Start Task Test 103 * 104 * @tc.name: systemStartTaskTest 105 * @tc.number: OHOS_JAVA_systemStartTaskTest_0001 106 * @tc.desc: system Start Task Test 107 * @tc.type: functional testing 108 * @tc.require: AR000FK5UI 109 * @throws InterruptedException InterruptedException 110 */ 111 @Test systemStartTaskTest()112 public void systemStartTaskTest() throws InterruptedException { 113 frameFixture.label(UtConstant.UT_WELCOME_PANEL_NEW_TASK_BTN).click(); 114 frameFixture.label(UtConstant.UT_TASK_PANEL_SYSTEM).click(); 115 frameFixture.button(UtConstant.UT_TASK_PANEL_CHOOSE).click(); 116 frameFixture.label(UtConstant.UT_SYSTEM_TUNING_LABEL).click(); 117 frameFixture.checkBox(UtConstant.UT_SYSTEM_TUNING_CATEGORIES).click(); 118 frameFixture.button(UtConstant.UT_TASK_SCENE_PANE_START).click(); 119 TimeUnit.SECONDS.sleep(20); 120 frameFixture.button(UtConstant.UT_SYSTEM_TUNING_METRICS).click(); 121 TimeUnit.SECONDS.sleep(5); 122 frameFixture.panel(UtConstant.UT_TASK_PANEL_CLOSE).click(); 123 } 124 125 /** 126 * tear Down 127 * 128 * @tc.name: tearDown 129 * @tc.number: OHOS_JAVA_tearDown_0001 130 * @tc.desc: tear Down 131 * @tc.type: test Window 132 * @tc.require: AR000FK5UI 133 */ 134 @After tearDown()135 public void tearDown() { 136 frameFixture.cleanUp(); 137 } 138 } 139