WebUI釋出自動化測試框架PhoenixAutotest
介紹
WebUI自動化測試框架phoenix.webui.framework釋出20170610版本。
本次釋出修正了一些bug,更多Isseus資訊請訪問 。新增的主要功能如下:
增加了透過註解的方式來配置PageObject(頁面物件),單元測試程式碼如下(本文所有的程式碼都可以在 中獲取):
/* * * * Copyright 2002-2007 the original author or authors. * * * * Licensed under the Apache License, Version 2.0 (the "License"); * * you may not use this file except in compliance with the License. * * You may obtain a copy of the License at * * * * * * * * Unless required by applicable law or agreed to in writing, software * * distributed under the License is distributed on an "AS IS" BASIS, * * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * * See the License for the specific language governing permissions and * * limitations under the License. * */ package org.suren.autotest.web.framework.page; import org.suren.autotest.web.framework.annotation.AutoDataSource; import org.suren.autotest.web.framework.annotation.AutoLocator; import org.suren.autotest.web.framework.annotation.AutoPage; import org.suren.autotest.web.framework.annotation.AutoStrategy; import org.suren.autotest.web.framework.core.LocatorType; import org.suren.autotest.web.framework.core.StrategyType; import org.suren.autotest.web.framework.core.ui.Button; import org.suren.autotest.web.framework.core.ui.Text; /** * 使用註解的示例Page類 * @author suren * @date 2017年6月7日 下午7:10:40 */ @AutoPage(url = ") @AutoDataSource(name = "data", resource = "dataSource/xml/user_data_anno.xml") public class AnnotationPage extends Page { @AutoStrategy(type = StrategyType.PRIORITY) @AutoLocator(locator = LocatorType.BY_PARTIAL_LINK_TEXT, value = "實名動態") private Button toLoginBut; @AutoLocator(locator = LocatorType.BY_XPATH, value = "//input[@placeholder='請輸入手機號碼/脈脈號']") private Text phoneText; public Button getToLoginBut() { return toLoginBut; } public void setToLoginBut(Button toLoginBut) { this.toLoginBut = toLoginBut; } public Text getPhoneText() { return phoneText; } public void setPhoneText(Text phoneText) { this.phoneText = phoneText; } }
測試程式碼如下:
/* * * * Copyright 2002-2007 the original author or authors. * * * * Licensed under the Apache License, Version 2.0 (the "License"); * * you may not use this file except in compliance with the License. * * You may obtain a copy of the License at * * * * * * * * Unless required by applicable law or agreed to in writing, software * * distributed under the License is distributed on an "AS IS" BASIS, * * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * * See the License for the specific language governing permissions and * * limitations under the License. * */ package org.suren.autotest.web.framework.util; import org.junit.*; import org.springframework.context.annotation.ComponentScan; import org.springframework.context.annotation.Configuration; import org.suren.autotest.web.framework.IgnoreReasonConstants; import org.suren.autotest.web.framework.page.AnnotationPage; import org.suren.autotest.web.framework.settings.DriverConstants; import org.suren.autotest.web.framework.settings.SettingUtil; import java.io.IOException; /** * 測試使用註解配置的方式 * @author suren * @date 2017年6月7日 下午7:10:12 */ @Configuration @ComponentScan(basePackages = "org.suren.autotest.web.webframework.page") public class AutoAnnotationTest { private SettingUtil util; @Before public void setUp() { util = new SettingUtil(); } @Test public void basicTest() { util.getEngine().setDriverStr(DriverConstants.DRIVER_HTML_UNIT); util.getEngine().init(); AnnotationPage page = util.getPage(AnnotationPage.class); Assert.assertNotNull(page); Assert.assertNotNull(page.getUrl()); Assert.assertNotNull(page.getToLoginBut()); page.open(); page.getToLoginBut().click(); } @Test @Ignore(value = IgnoreReasonConstants.REAL_BROWSER) public void realTest() { util.getEngine().setDriverStr(DriverConstants.DRIVER_CHROME); util.getEngine().init(); util.initData(); AnnotationPage page = util.getPage(AnnotationPage.class); page.open(); page.getToLoginBut().click(); page.getPhoneText().fillNotBlankValue(); ThreadUtil.silentSleep(3000); } @After public void tearDown() throws IOException { util.close(); } }
相關連結
PhoenixAutotest 的詳細介紹:
PhoenixAutotest 的下載地址:
原文來自:
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69955379/viewspace-2980423/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- WebUI 自動化測試-PO 設計模式入門WebUI設計模式
- 自動化測試框架框架
- Cypress與TestCafe WebUI端到端測試框架簡介WebUI框架
- 自動化測試框架指南框架
- T框架介紹(自動化測試框架)框架
- Python 自動化測試框架unittestPython框架
- 介面自動化測試框架 HttpFPT框架HTTP
- Python自動化測試框架-pytestPython框架
- 測試開發之自動化篇-自動化測試框架設計框架
- 自動化測試框架的AW模式框架模式
- UI自動化測試框架Cypress初探UI框架
- Python自動化測試框架介紹Python框架
- 利用tox打造自動自動化測試框架框架
- Robot Framework自動化測試框架核心指南-如何做好自動化測試平臺框架的設計Framework框架
- android 5個自動化測試Ui框架AndroidUI框架
- 介面自動化測試框架搭建的思路框架
- HamronyOS 自動化測試框架使用指南框架
- 構建高效的自動化測試框架框架
- pytest_BDD + allure 自動化測試框架框架
- 淺談自動化測試框架開發框架
- 介面自動化測試框架搭建總結框架
- 軟體自動化測試有什麼優勢?自動化測試框架有哪些?框架
- 2023年好用的自動化測試框架有哪些?如何提高自動化測試效果?框架
- 移動端 UI 自動化測試框架對比UI框架
- H5 自動化測試框架推薦H5框架
- 常見的自動化測試框架有哪些?框架
- 亮道智慧正式釋出自動駕駛環境感知系統測試驗證服務自動駕駛
- 自動化測試系列 —— UI自動化測試UI
- 自動化測試如此容易!多語言自動化測試框架 Selenium 程式設計(C#篇)框架程式設計C#
- 自動化測試框架Selenium的使用——安裝Selenium框架
- python自動化測試框架pytest和unittest區別!!!Python框架
- 四個類搞定分層自動化測試框架框架
- selenium自動化測試框架之PO設計模式框架設計模式
- 螞蟻金服開源自動化測試框架 SOFAACTS框架
- 一文搞懂自動化測試框架設計框架
- python自動化測試框架,封裝方法方式Python框架封裝
- Python自動化測試框架有哪些?Python入門!Python框架
- Python Selenium自動化測試框架 元素等待機制Python框架