前面的文章中我们介绍了Selenium Java的自动化测试环境搭建,希望大家的JDK和Eclipse等都安装好了。
因为是在用Java语言写Selenium的脚本,所以也有必要补充下最基本的Java知识。
不少测试工程师一听到编程语言,尤其是Java,往往会心生害怕和抵触,觉得简直太难了,我不可能学会的!
最主要的其实除了心理的因素外,还有一个主要原因是我们测试工程师如果单独学语言,在实际工作中很少有机会参与到项目的开发中,这样学不能致用,不用就永远不会深入理解,也就总觉得掌握不好了。
但是如果结合Selenium学Java语言,你会发现Java语言并不难,在整个过程中你学的Java知识是要用起来的,是要用来解决自动化中各种各样的问题的,用的多了理解就深刻了,代码敲的多了,自然也就掌握了,所以Selenium与Java的学习是相互促进的作用,最后Selenium也学会了,Java也掌握了,一举两得。
而且学会了Java以后不光可以用在Selenium基于Web的自动化测试中,还有很多地方可以应用,比如手机APP的自动化测试Appium中、接口测试中等,对测试工程师的职业发展也会有很大的帮助。
步骤一:创建一个Java项目
打开Eclipse,点击File--New--Java Project
输入项目的名称javabasic(全部小写字母)
注:java的命名规则我们会在后续的文章中具体讲解。
步骤二:创建一个.java文件
展开项目,选择src文件夹,右键菜单中选择New--Class
为.java文件命名为:HelloWorld
以后我们的每一条自动化测试用例都是一个.java文件
步骤三:将HelloWorld.java内容补充为以下完整的内容
步骤四:运行此java文件
选中此java文件,右键菜单中选择Run as--Java Application
运行后会在控制台看到打印输出了Hello Wrold!文字信息,这就是程序运行的结果。
至此恭喜我们的第一个java程序就运行成功了!
1. public class HelloWorld { ..... }
在Java中,每一个.java文件的开始都进行了一个class即类的定义,class是java的关键字用来声明类,HelloWorld是这个类的名字。
大括号里面的部分是这个类的具体实现,一般里面写的是相关属性和方法。
这些类、对象、方法等概念我们后面会进一步讲解,现在大家只需要记住,每一个java文件都需要定义一个类,如果这个类是被public修饰的,则类的名字和对应的.java文件的名字要相同,即HelloWorld.java
2. public static void main(String[] args) { ...... }
这是我们本篇要掌握的一个重点,就是类中的main方法。
大家现在只需要记住main方法的写法是固定的就是上面的写法。public,static,void这些也都是java的关键字在后面的文章中我们会慢慢学习到。
这里我们要掌握的重点是main方法是java程序的执行入口或者起点,java程序在执行时会先找到main方法,然后按照从上到下的顺序执行main方法体即对应大括号{ ... }里的程序语句,如果把java文件中的main方法去掉,那么这个java程序就无法独立运行了,即右键中无法run as--java application,大家可以试一下,因为编译器找不到入口,不知道从哪里开始执行。
关于main方法还有一个要掌握的重点就是,java程序执行时,只会执行main方法体即对应大括号范围内的语句,方法体外的语句是不会被执行的。
例如下面的例子,在main方法后面增加了一个selenium的方法,用来输出hello selenium!
如果执行的话,会发现控制台仍然只输出了Hello World!
就是因为selenium方法不在main方法体内,没有被执行。
3.System.out.println("Hello World!");
这是方法体内的程序语句,每一个java的语句都需要用英文的“;”结尾。
这个语句的作用就是在控制台换行打印出Hello World!文字信息。
这条java语句我们在做自动化时,也经常会用到,比如打印输出跳转页面的标题,打印输出获取到的文本框输入的内容等。
好了,这就是我们的第一个java小程序,是不是特别简单呢?
学编程一定要多敲代码,大家跟着我们第一个java程序一起敲起来吧!
****************************************************************************************************
最近我会持续更新Selenium Java的相关文章,也请大家多多关注我的视频课程
全网最新、最完整、最具性价比、并且会持续保持更新的自动化测试课程
*****************************************************************************************************