Selenium简介
Selenium是最流行的开源工具,广泛用于自动化在Web浏览器上执行的测试。换句话说,您只能使用Selenium测试Web应用程序。您既不能使用Selenium测试任何桌面(软件)应用程序,也不能测试任何移动应用程序。为了克服这一点,市场上已经推出了许多其他的软件测试和移动应用程序测试工具,如IBM的RFT、HP的QPT、Appium等等。但是,Selenium仍然主导着自动化测试的世界。但问题是,为什么?首先,正如我已经提到的,Selenium是开源的,因此不涉及许可费用。这看起来不是很多,但实际上与其他测试工具相比,它是一个主要的优势。现在,让我们在这篇Java for Selenium文章的学习另一个优势。
使用Selenium的优势
-
可以在任何操作系统(如Windows、Mac或Linux)中进行测试
-
可以使用Internet Explorer、Google Chrome、Mozilla Firefox、Safari或Opera等多种浏览器进行测试
-
可与TestNG&JUnit等多种工具集成,用于测试用例管理和报告生成
-
持续测试,可集成Maven、Jenkins&Docker,实现持续测试
-
广泛使用Java、Python、C# 、PHP、Ruby、Perl&.Net等编程语言编写测试用例。但在所有这些语言中,Java是最常用的。
几个优点是:但是为什么是Java呢?在这篇Java for Selenium文章的下一节中,我将向您说明Java成为最流行的自动化语言的原因。
为何使用Java for Selenium?
-
由于Java在IT行业中是一种广泛使用的语言,因此有一个巨大的社区支持它,同时还有大量的参考资料存储库。
-
近77%的Selenium测试员正在使用Java,这使得知识共享变得非常容易和快捷。
-
Java由来已久,因此,有大量现成的框架、插件、API和库支持Java实现测试自动化。
-
Java使用JVM,这使其成为一种独立于平台的语言。换句话说,您可以在任何安装了JVM的操作环境中使用它。
-
因为Java是静态类型的,所以Java IDE提供了很多关于您在编码时可能会遇到的错误的反馈。
Java是全世界最流行的Selenium编程语言。下图显示了在印度和美国,Java相对于其他编程语言的使用情况。下面我列出了使用Java for Selenium的各种原因:我希望这能给您足够的理由来理解使用Java for Selenium背后的流行程度。 现在问题出现了,您应该了解多少Java才能将其与Selenium一起使用。
如何学习Java for Selenium?
** 什么是Java?
-
数据类型
-
关键词
-
运营商
-
访问修饰符
-
方法
-
控制语句
-
迭代语句
-
适用于
-
虽然
-
Do-While
-
每个
-
评选声明
-
如果
-
If-Else
-
交换机
-
数组
-
字符串
-
正则表达式
-
套餐
-
对象和类
-
构造函数
-
OOPS概念
-
继承
-
抽象
-
封装
-
多态现象
-
异常处理
为了使用Java for Selenium,您需要对Java基础有一个简单的了解,首先要做的是:一旦您了解了所有这些概念,您就可以熟悉编码部分了。在本文的下一节中,我将向您展示实现Java for Selenium的简单代码。
实现Java for Selenium的Demo
在开始编码部分之前,首先需要确保您有一个正确的环境设置。如果您不了解,您可以参考Selenium Installation文章获取分步指导。 现在您已经准备好环境和依赖项,现在让我们开始项目。在这里,我使用一个简单的项目,在那里我将使用GeckoDriver。根据我的测试用例,一旦我执行我的程序,GeckoDriver将启动Mozilla Firefox,导航到http://twitter.com并使用提供的凭据注册。 因为您已经准备好了JAR和其他依赖项,所以您需要做的就是在类文件中键入下面给定的代码并执行它。
<pre spellcheck="false" class="md-fences md-end-block ty-contain-cm modeLoaded" cid="n91" mdtype="fences" style="box-sizing: border-box; overflow: visible; font-family: var(--monospace); font-size: 0.9em; display: block; break-inside: avoid; text-align: left; white-space: normal; background-image: inherit; background-position: inherit; background-size: inherit; background-repeat: inherit; background-attachment: inherit; background-origin: inherit; background-clip: inherit; background-color: rgb(248, 248, 248); position: relative !important; border: 1px solid rgb(231, 234, 237); border-radius: 3px; padding: 8px 4px 6px; margin-bottom: 15px; margin-top: 15px; width: inherit; color: rgb(51, 51, 51); font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-indent: 0px; text-transform: none; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration-style: initial; text-decoration-color: initial;" lang="">package edureka.selenium;
import java.util.concurrent.TimeUnit;
//Importing Selenium WebDrivers
import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.firefox.FirefoxDriver;
import org.openqa.selenium.support.ui.ExpectedConditions;
import org.openqa.selenium.support.ui.WebDriverWait;
public class FirstSeleniumScript {
public static void main(String[] args) throws InterruptedException{
//Setting system properties for GeckoDriver
System.setProperty("webdriver.gecko.driver", "C:geckodriver-v0.23.0-win64geckodriver.exe");
WebDriver driver = new FirefoxDriver();
driver.manage().window().maximize();
driver.manage().deleteAllCookies();
//Specifying the timeouts
driver.manage().timeouts().pageLoadTimeout(40, TimeUnit.SECONDS);
driver.manage().timeouts().implicitlyWait(30, TimeUnit.SECONDS);
//Setting the website URL
driver.get("https://twitter.com/");
//Link text locator to hit the 'Sign Up' button
driver.findElement(By.linkText("Sign up")).click();
//XPath locator to enter values in the 'name' field
driver.findElement(By.xpath("//input[@name='name']")).sendKeys("Edureka");
driver.findElement(By.name("phone_number")).sendKeys("9876543210");
Thread.sleep(1000);
driver.findElement(By.xpath("//span[contains(text(),'Next')]")).click();
}
}</pre>
总结
通过本文,我将让您全面了解为什么应该使用Java for Selenium。
-
Selenium简介
-
Selenium的优势
-
为什么使用Java for Selenium
-
在Java for Selenium中学到什么?
-
实现Java for Selenium的Demo
网友评论