UI自动化尝试用例领会让咱们从一端领会自动化尝试用例的代码发端咱们的路程。底下是尔之前写的自动化尝试的一个小演示。这个演示是基于EelnIII和Java的。因为硒姑且主导了自动化尝试跟着将要发布的硒4这种上风将持续很长一段时间
网站这种上风将持续很长一段时间因此本文基于硒和Java。演示的自动尝试是为了瞅瞅百度搜寻是否能返回兴业银行的官方网站。让咱们领会一下这段代码包括什么。开始此代码包括定位器。妇孺皆知inpubbox和searchbutton是由实例化的网页元素。ID而后司机经过ID找到它们即“kw”和“su”。所以“kw”和“su”是它们的定位。展开结余的86%定位器秒个中包括尝试数据。\\“兴业银行”和“迎接光临兴业银行”是要尝试的数据。尝试数据的第三局部不如前二局部直瞅。在基于“kw”找到输出框后此代码弥补“Industrial Bank”四个字而后单打“Search”按钮提接搜寻运用步调而后在搜寻截止中搜寻文本“Industrial Bank Welcomes You”而后运用“是否查找此文本”动作断言的尺度。这些尝试办法反应了简直的交易逻辑不行随便变动程序。所以第三局部是交易逻辑。交易逻辑的第四局部是交易逻辑中每个办法的简直安排比方输出一段文本大概单打一个按钮。咱们的例子是sendkeys和click。简直安排的第五局部是假如前四局部被取出其他的尝试代码基础上是一些控制预备大概整理的代码如初始化启动步调。尔称之为代码骨架。经过度解自动化尝试用例由定位步调、尝试数据、交易逻辑、特定安排、代码框架五局部构成。UI自动化尝试构造的数据启动自动化尝试是指数据启动的自动化尝试假如尝试数据被提取出来自动化尝试的实行是由数据的变革启动的最后引导尝试截止的变革。爽快地说这是尝试数据参数化。数据启动的数据启动自动尝试实用于尝试场景和交易逻辑相闭于大概且变革不大的情景然而尝试数据闭于尝试截止有很风行用大概者须要洪量不共的尝试数据来尝试沟通的尝试场景。很容易实行然而是因为交易逻辑嵌入到尝试代码中交易逻辑和尝试代码是强耦合的。一朝交易场景爆发变革须要建改尝试代码以符合交易变革。为了分隔交易闭于尝试代码的效率必定运用闭头字启动的办法。闭头字启动的自动尝试即是大概地说闭头字启动的自动尝试是从代码中提取特定安排的前提长进行数据启动并经过变化特定的安排来启动尝试的实行。此地的闭头字本质上是简直的安排比方sendkeys和click。然而是因为特定的安排(闭头字)是基于交易逻辑的为了提取闭头字交易逻辑必定所有提取本领实行简直的闭头字启动。共时简直安排的闭于象是定位器地位的元素因此定位器还必定将代码事变所有提取以实脚分隔交易闭于代码的效率。基于闭头字启动的自动尝试实用于交易场景搀杂、尝试办法稠密的场景大概者须要建立普遍尝试平台的场景。它的最大便宜是不领会何如样编程的交易人员不妨经过变动摆设自在地增添新的尝试用例大概建改现有的尝试用例而无需读代替码。这在敏捷开拓中是格外本质的它不妨将交易引入到尝试中以便尽早预备尝试用例;其他尝试代码与要尝试的交易逻辑实脚分隔沟通的尝试代码不妨在不共的尝试场景中沉用而沉新开拓的成本更矮。然而这并非实脚不缺点。开始不是十脚的场景都须要闭头字启动有些场景数据启动的办法不妨处理这个问题该当轻率地采用数据启动而不是过度安排;其次因为交易逻辑和代码分隔代码的可读性会大大降矮大概的代码基础上不交易道理经过观赏来领会交易。EST代码这几乎是不大概的。为可沉用性死代码可读性。第三因为代码沉用每一个尝试用例都是动作一个崭新的尝试来实行的这表示着假如不进行特殊的处置尝试汇报将被彼此弥漫而且惟有结果一个尝试用例将长久被实行。闭头字启动的自动尝试示例是尔长久往日编写的闭头字启动的自动尝试的演示。基础思维是将定位器、尝试数据、交易逻辑和特定安排提取到一个名为testcase的文件中。本质。参数用于保存从尝试用例读取的属性。属性和主尝试类testbankindex经过读取此文件来启动尝试实行。与闭头字相闭于应的特定安排放在pageAction中。在尝试用例中。属性尝试用例称呼由尝试用例称呼列表定义用分割。泰斯卡斯底下是每个尝试用例的特定尝试办法。每个尝试办法的称呼都以尝试用例的称呼动作前缀其程序是尝试办法的程序。而后经过所需的安排(闭头字)、定位办法、定位表白式、尝试数据和超常常间来安置尝试办法的值并在中央进行分区。这是一个特其他断言。假如是断言则会有闭头字用于估计断言。TESCASE。属性参数用于保存尝试用例的属性。本质。本质上不过一个大概的JavaBean。ParameterPageAction用于定义与每个闭头字闭于应的特定安排。咱们以搜寻办法为例经过传入参数来获得搜寻所需的元从来定位要输出的搜寻文本而后实行本质的搜寻安排并等待特定的时间。pageAction testBankIndex是重要的尝试类然而本质上个中有一个testeAchcase办法。Java反射机制被款待用于实例化和实行办法。因此在实行testeachase时它不领会在结果一刻它将运行哪个尝试用例以及它将实行什么安排这在test case中是实脚定义的。本质。这基础上即是尝试库索引的情景。该代码是一年前编写的很懊丧常常间进行优化。许多场合都不太尺度也不单元尝试。尝试汇报中波及的问题不赢得处理。TESCASE。房子太沉了十脚物品都进去了。还不必户界面这阻挡易安排。然而动作一个MVP它基础上实行了UI自动化尝试框架所乞求的功效。感风趣的弟子不妨点打文章结果的github链接克隆代码。尔憧憬给您一些闭于建立自动化尝试框架的构想并引起更多的闭心。再睹*本文根源于搜集如有侵权请通联简略。作家:何峰转载自:https://www.jinshu.com/p/7590d409df7e嗨你还在瞅吗?证明:本文仅代表作家本人。搜狐是一个信息发布平台。搜狐只供给信息保存空间效劳。观赏(0)