(软件测试)Lab2:Selenium 编程实验报告

Selenium 编程实验报告

1. 录制脚本

  首先下载SeleniumIDE 插件,这里我选择selenium_ide-2.9.1-fx版本。然后拖到firefox浏览器中插件管理界面,点击安装。在所需要进行录制的界面上,点击插件,之后在该界面上完成一系列的操作。当需要停止录制的时候,点击selenium界面右上角的红点。可以通过selenium上的运行按钮来测试脚本录制效果。之后选择文件导出脚本,导出的格式选择Java/JUnit4/WebDriver。命名文件名为Selenium.java。保存到桌面。

2. 添加相关jar

  用ideaIDE新建java项目,将Selenium.java 复制到src目录中。修改该文件中的package; 并将如下的jar包下载下来,并添加到External Libraries.

  在下载的过程中一定要注意版本,在这里我下的selenium-java2.53的。

3. 测试能否运行脚本

  当所有的jar包添加成功后,我们会看到。原本Selenium.java 文件中找不到的类找到了。IDE 不报错了。这个时候,我们就可以先运行一下,这个文件,看能否模拟脚本中的操作。

  不幸的是,并不能很好的运行。我们可以看到firefox 浏览器被程序唤出了,但是界面一直停在那里,并没有动。过一会就会抛出一个异常。经过一番百度,我们得知,这是由于firefox 浏览器的版本太新了。

  于是,我们找到了firefox ftphttps://ftp.mozilla.org/pub/firefox/releases/,我们找到41.0/linux-x86_64/zh-CN/,然后下载。Ubuntu下用“tar -jxvf 文件名来解压该文件,我们把该文件解压到/opt目录下。之后我们需要做的就是删除之前的firefox。用如下命令移除。

  sudo apt-get remove firefox

  sudo apt-get autoremove

  移除了之前版本的firefox 之后,我们还要注意,需要在/usr/bin目录下创建firefox 的链接文件。

  ln -s /opt/firefox/firefox /usr/bin/firefox

  然后用终端打开firefox,点击右上角的菜单键,查看当前firefox 的版本。

  这个时候我们要做的就是马上关闭firefox 的自动更新。在设置中。如下图

  这个时候,我们就算是解决了刚刚的问题了。然后再次点击运行。果然,能够测试成功了。

4. 测试思路

  我们首先要将csv文件中的所有数据提取主来,放到一个List中,之后,让测试通过@RunWith(Parameterized.class)来对List中的数组进行逐一测试。

  对于@Before,我们需要将driver 实例化,并且跳转到baseUrl即可。

  对于@After,我们需要退出driver

  对于@Parameterized.Parameters,我们需要读取csv文件,并将数据转化成List数组。

  还要根据需要写对应的构造函数。

5. 编写程序

  趟过了刚刚所有的艰难之后,我们终于要写程序了。其他的都比较好写,不做赘述。我们将如何写@Parameterized.Parameters函数。我将inputgit.csv文件放在了项目同级目录。这样在程序中,我们需要定位到inputgit.csv文件。因为常识,我们知道csv文件中一行数据是以‘,’为分隔符的,所以,我们用java直接操作文件就好,不过,我在读入的时候会遇到一个问题,就是中文乱码问题,经过百度和测试,才确定这个csv的文件的编码个是GBK的。所以通过

  BufferedReader reader = new BufferedReader(new InputStreamReader(new FileInputStream(inputFile), "GBK"));

  来进行读取,就能解决乱码问题。之后,我们能够将数据按照特定的顺序,组成一个List等待测试。

  在@Test这个函数中,我们要做的就是,接收浏览器界面中的返回数据,我们可以看到有一个div中的innerHTML的文字就是我们所需要的数据,我们可以通过id定位到这个元素,之后再获取它的innerHTML来获得数据。

  String result = driver.findElement(By.id("resultString")).getAttribute("innerHTML").trim();

  获得后的数据中首部会有多余的空格,用.trim(),去掉多余的空格就得到了我们想要的数据,之后在通过Junit中的asserEquals进行比对即可。

6. 结果展示。

  我们可以清楚的看出有5位同学的名字是有错误的。

转载于:https://www.cnblogs.com/lmns/p/6624597.html

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值