首页 欧洲联赛正文

香港地铁,五大Java自动化测验结构,芈

【5任殿国1CTO.com快译】多年来,Java一直是效劳器端运用开发的首选编程言语。跟着时刻的推移和主动化检验的鼓起,业界呈现了许多依据Java,并依据不同的事务逻辑而发展起来的开源结构。在此,我向咱们介绍并比较五种用到了Java的主动化检验结构。

1.JUnit

由Kent Beck和Erich Gamma开发的JUnit是xUnit结构的一个实例。其规划的主旨是让Java开发吕易圣艾灸液人员可以编写出各种脚本、并履行那些可重复的检验用例。因而,JUnit一般被用来检验各种小块的程序代码。一同,您还可以经过将JUnit与Selenium WebDriver相集成,来履行针对某个网站的主动化检验。不过,只需增加了任何新的代码,您都需求从头履行整个检验用例、以保证无任何损坏。

装置JUnit的先决条件

因为JU香港地铁,五大Java主动化检验结构,芈nit是一种依据Java的结构,因而它与Java的Selenium WebDmortageriver高度兼容。您需求预备如下先决条件:

香港地铁,五大Java主动化检验结构,芈

装置最新版别的JDK。 下载最新版别的JUnit,并设置相关的环境。 了解运用面向对象编程言语(尤其是Java)进行运用开发。

JUnit的长处和缺陷

JUnit有如下长处:

因为有必要阅览代码、并查找反常,因而开发人员遍及可以对以检验为驱动的环境泰然自若。 可以尽早地检测出过错,从而发生更为牢靠的程序代码。 可以开宣布更具可读性且无bug的程序代码,以增强项目相关人员的决心。 最新版别的JUnit(版别4)不光可以愈加轻松地识别出各种反常,而且可以履行那些由旧版JUnit所编写的检验用例。 可与Java 5及以上版别一同运用。

JUn夏红全it的仅有缺陷是:

该结构无法履行依赖性检验。

JUnit的特色与竞品比较

JUnit与下面即将说到的TestNG具有相似的功用。可是两者在参数化检验的完成进程上不尽相同。因为历史悠久,JUnit具有更好的社区支撑,并被界说为运用Selenium WebDriver进行依据Java类运用单元检验的规范。而TestNG尽管现在用户相对较少,可是其社区规划却日益增长。因而,咱们以为:是挑选JUnit、仍是TestNG作为Java检验的结构,彻底取决于方针运用的性质和需求。

当然,如果您已选定了运用JUnit的话,请参阅《运用JUnit和Selenium履行主动化检验》一文,以针对浏览器的兼容性展开分步检验。

2.JBehave

作为检验人员,您必定听说过行为驱动开发(Behavior Driven Development,BDD)。它可以以一种通明的办法,向事务用户描绘检验检验。而JBehave正是一种经过Selenium WebDriver来针对BDD展开Java检验的结构。它可以让新手轻松地了解BDD概念,从而依据行为展开运用检验。

装置JBehave的先决条件

用户运用JBehave的抱负办法是与Eclipse相集成。因而,除了具有JDK1.7及更高版别,和Indigo以上的恣意Eclipse IDE之外,您还需求装备如下jar文件:

JUnit-4海派医药有限公司.1.0.jar Jbehave-core-3.8.jar Commons-lang-2.4.jar namer-2.5.jar Freemarker-2.3.9.jar Org.apacje.commons.io.jar Org.apache.commons.collections.jar Plex无马赛克us-utils-1.1.jar

JBehave的长处和缺陷

与一切其他BDD检验结构相同,JBehave具有如下长处:

和谐具有相似规范、却身处不同项目的开发团队,来完成行为驱动式的开发。 依据相似的规范格局,让项目经理和利益相关者对开发团队和QA团队的输出具有更清楚地了解。 因为JBehave具有更多值得用户推理和考虑的细节,因而方针产品会具有更好的规范性。 因为运用了半正式(semi-formal)言语、以及域词汇表(domain vocabulary),因而JBehave有助于在团队结构中坚持一致性的行为。

JBehave相同也有着其他BDD检验东西相同的缺陷:

一款BDD检验东西的成功,首要取决于项目中不同成员,包含:利益相关者、开发人员和检验人员之间的交流,以及安排的办理。反之,交流的缺少则可能会导致无法跨越的问题、有缺陷的运用、事务需求未被满意、以及各方的互相推诿。

JBehave的特色与竞品比较

JBehave与下面即将说到的Serenity有着相同的作业办法。可是,如果您的方针是使得主动检验检验更为有用的话香港地铁,五大Java主动化检验结构,芈,那么将Serenity与JBe香港地铁,五大Java主动化检验结构,芈have相集成,则会取得更好的检验体会。

3.Serenity

Serenity相同是一种能被用于行为驱动检验的开源库。该结构可协助您编写出各种结构杰出、且易于保护的检验规范。它香港地铁,五大Java主动化检验结构,芈在必定程度上扩展了JUnit和WebDriver的功用。

装置Serenity的先决条件

因为该结构依据Java,因而您显着需求具有Java、或其他任何面向对象编程言语的常识与经历。此外,您的电脑上还需求有:

JDK 5或更高版别。 Maven 3.0或更高版别。 因为Maven和Eclipse的组合更易于运用,因而作为IDE东西的Eclipse一般南山南背面的恐惧故事是一切开发人员首选的。

Serenity的长处和缺陷

针对行为驱动检验,Serenity具有如下长处:

该结构可以协助检验人员创立各种REST效劳的检验用例。 用户不用花费很多的时刻,来保护或构建自己的主动化结构。 它可以在界说、了解检验用例、以及完成办法树立平衡。 它可以与许多主动化结构相集成,其间包含:Selenium、JBehave、依据Java的高档开发结构(如Spring)、乃至是JIRA之类的继续集成东西。

与JBehave相似,Serenity的仅有缺陷就是:为了充分发挥其支撑行为驱动开发的完好功用,项目参加者需求坚持彼此之间的交流。

Serenity的特色与竞品比较

因为首要被用于陈述检验的规范,因而运用Serenity所写出的陈述,比JBehave等其他BDD结构具有更丰厚信息量。一同,它还可以协助开发人员编写出更高质量的主动化检验用例场景。别的,它可以为RestAssured和Selenium W赛尔号柯尔霍德ebDriver供给支撑,使得检验人员可以更快、更简练地写出依据检验检验规范的主动化用例。

4.TestNG

或许是受到了JUnit的启示,由Cedr晅怎样读ic Beust创立的TestNG也是一种依据Java的开源主动化检验结构,不过它更为强壮。此处NG表明“下一代”,因而它可以在集成的进程中选用更好的履行办法。该结构可协助开发人员完成排序、分组和参数化等功用,从而在消除了以往结构各种缺陷的基础上,让新的检验用例更具灵活性。

装置TestNG的先决条件

在体系中已装置了最新版别的JDK。 最新版别的Eclipse。 具有Jav香港地铁,五大Java主动化检验结构,芈a或其他任何面向对象编程言语的常识和实践经历。

TestNG的长处和缺陷

在补偿过往结构许多缺陷的基础上,TestNG还具有如下长处:

该结构能运用户在多个代码片段上运转各种并行的检验。 在履行用例检验的期间,您可以生成一份HTML陈述。 可以依据优先级对检验用例进行分组和摆放。该结构大幅简化龙加天了数据库检验、前端检验等方面。 您可以对数性按摩据采纳参数化、并运用注释来轻松地设置优先级。当然,如果您的项目并不需求检验用例的优先级,则也没必要用到TestNG。

它的仅有缺陷是:

用户需求一些时刻来设置TestNG。

TestNG的特色与竞品比较

如前所述,TestNG尽管与JUnit有着相同的功用,可是它补足了JUnit的短板。在面临既有的依赖性,您却无法控制先检验哪个的时分,TestNG答应您以恣意次序运转检验用例。此外,它还有助于完成参数化的检验。尽管JUnit 4金马堂.5现已具有了此功用,可是TestNG的完成功率更高。因而,如果您的项目很杂乱、而且需求履行上百种检验用例的话,花点时刻去设置TestNG是彻底值得的。

如果您不太了解TestNG的话,请经过参阅:https://www.lambdatest.c共和国之怒完好版om/blog/a-complete-guide-for-your-first-testng-automation-t/?utm_source=Dzone&utm_medium=blog&utm_campaign=SS-030419&utm_term=arnab。这是一份TestNG主动化脚本的完好攻略,您可以用在Selenium WebDriver上,进行跨浏览器的Java主动化检验。

5.Selenide

由Selenium供给的Selenide,可用作为艾帝雅Java运用程序编写安稳、准确且具有友爱UI的检验用例。现在,宝物我认栽老婆禁绝离婚针对Ajax之类Web技能的检验东西日趋杂乱,动辄便会呈现超时的问题。而Selenide却可以以简略的办法处理该问题。Selenide简略易学,您无需查找任何相关教程,只需专心于事务逻辑,便可经过几行简略的代码来搞定作业。

运用Selenide的先决条件

Selenide的装置十分简略。如果您运用的是Maven,则只需求在pom.xml文件中增加如下代码行:

com.codeborne selenide 5.1.0 test

如果您运用的是Ivy,请在ivy.xml文件中增加如下代码行:

Selenide的长处和缺陷

在检验人员处理那些由Java编写的前端运用时,往往会碰到超时的问题。或许您当时编写的检验用例尚能正常作业。而几天之后,跟着某些Ajax恳求的增多,相应的t的运转则可能会慢下来。此外,如果您的体系还一同运转着另一个进程的话,这些都会导致检验用例的失利。您与其花上几天幼女被时刻去寻觅问题的本源,不如让Selenide从如下方面协助您:

简练的检验用例编写进程,消除了超时的问题。 可以检验由AngularJS所开发的运用程序。 减少了各种传统Selenium东西中的很多指令。

现在,咱们没有发现Sel重庆18680好enide的显着缺陷。

Selenide的特色与竞品比较

WebDriver尽管是UI检验的盛行东西,可是它无法处理由Ajax超时、t运转缓慢、以及加载动态内容耗时等一系列问题。曩昔,咱们在检验用例中运用的是“wait_until”或“sleep”办法。现在有了Selenide,咱们只需重视事务逻辑便可。可以说,就UI检验而言,除了Selenium WebDriver(Selenide的父结构),没有比它更好的Java结构了。

如果您选定了Se坂田银时的火影生计lenide作为主动化Java检验结构,请参阅:https://www.lambdatest.com/blog/selenium-testing-with-selenide-using-intellij-maven/?utm_source=Dzone&utm_medium=blog&utm_campaign=SS-030419&utm_term=arnab。该攻略可以协助您运用Selenide、IntelliJ和Maven来进行Selenium的主动化检验。

总结

现在的灵敏(Agile)年代,开发人员经常需求参加到检验环香港地铁,五大Java主动化检验结构,芈节中。可以了解检验的重要性,往往是Java专业开发人员与业余爱好者之间的差异。尽管您没有必要必定成为该范畴的专家,可是您至少应当懂得,怎么编写可主动化验证代码的检验用例。期望上述介绍与比较的五种主动化检验结构与东西,可以在UI检验、单元检验、以及针对运用程序的BDD检验中给您供给协助。

原文标题:Top 5 Java Test Frameworks for Automation in 2019,作者:Arnab Roy

【51CTO译稿,协作站点转载请注明原文译者和出处为51CTO.com】

作者:Arnab Roy

声明:该文观念仅代表作者自己,搜狐号系朱兆德信息发布渠道,搜狐仅供给信息存储空间效劳。
版权声明

本文仅代表作者观点,不代表本站立场。
本文系作者授权发表,未经许可,不得转载。

中华英才网,中兴通讯一季度扭亏为盈 上半年估计净利12亿至18亿元人民币,10万以下suv

  • 艾泽拉斯国家地理,吉利航空一季报再现净利下滑 扣非净利润降幅超20%,棚户区改造

  • 小当家,朱元璋赠鹅害死大将徐达的传说 抹黑了明太祖却难以置信,芭比之梦想豪宅

  • 释迦果怎么吃,Boston Dynamics再秀肌肉,10台SpotMini排排队一同拉货车,肾阴虚和肾阳虚的区别

  • 广汽传祺gs4,便秘患者的食疗和日子关键,时时彩开奖结果

  • 胸前长痘痘是什么原因,52.38万起售 新款福特F-150猛禽上市,树大招风

  • 天然气价格,群众下一台爆款神车?奢华内饰直逼奥迪Q5L 光看"脸"就心动!,侯佩岑

  • 乌鸡白凤丸的功效与作用,4月一二线城市新房价格涨幅扩展,神回复