美文网首页软件测试
新手如何学自动化测试二(selenium IDE 功能扩展)

新手如何学自动化测试二(selenium IDE 功能扩展)

作者: A丶咔咔 | 来源:发表于2020-07-06 17:35 被阅读0次

通过上一节的学习,相信我们已经会selnium IDE的基本使用了,为了使selenium 更强大,其实selenium 还提供了良好的扩展能力。

用户扩展

用户扩展就是使用javaScript文件来创建定制化特性,添加新功能,通常情况下这种扩展就是定制化命令,但扩展并不仅限于命令。

1.下面我们利用扩展的方式,产生一个用户随机数字

为了使用用户扩展,我们需要一个创建一个文件,当然也可以从上面的链接中下载。文件名为:user-extention.js

//产生随机数

Selenium.prototype.doStoreRandom = function(variableName){

random = Math.floor(Math.random()*10000000);

storedVars[variableName] = random;

}

//弹出框

Selenium.prototype.doDisplayAlert = function(value, varName) {

    alert(value);

}

//在控件中输入当前日期

Selenium.prototype.doTypeTodaysDate = function(locator){

var dates = new Date();

var day = dates.getDate();

if (day < 10){

day = '0' + day;

}

month = dates.getMonth() + 1;

if (month < 10){

month = '0' + month;

}

var year = dates.getFullYear();

var prettyDay = day + '/' + month + '/' + year;

this.doType(locator, 'dddddd');

}

将上面代码复制到一个记事本里,并另存为一个:user-extention.js的文件

在selenium IDE 中导入此文件,如下图:

选中文件后,点击“确定”按钮。你必须关闭再重启selenium IDE,以便于扩展文件被读取。任何扩展的改变,都要求关闭和重启selenium IDE.

2.转换代码形式

   选择Options 菜单下的Format,允许你选择一种语言来保护和战士测试案例。默认是HTML格式。

   如果你使用selenium RC 运行测试案例。这个特性可以帮助你将测试案例翻译成编程语言。

我们可以选择“文件”----Export test Case As...来转换我们需要的语言格式。具体实例请参考《selenium RC 环境搭建

3.在不同浏览器上执行selenium IDE测试。

   selenium IDE只能在friefox上运行,但是通过selenium IDE 开发的自动化测试,可以在其他浏览器上运行。只要使用一条简单的命令唤醒 selenium RC 服务器就可以了。

   如果浏览器不被直接支持,那么通过使用" *custom "运行模式,你依然可以在浏览器上运行selenium 测试案例。

cmd=getNewBrowserSession&1=*custom c:\Program Files\Mozilla Firefox\MyBrowser.exe&2=http://fnng.cnblogs.com

如下一段代码:

package com.example.tests;

import com.thoughtworks.selenium.*;

import org.junit.After;

import org.junit.Before;

import org.junit.Test;

import java.util.regex.Pattern;

public class test extends SeleneseTestCase {

    @Before

    public void setUp() throws Exception {

        selenium = new DefaultSelenium("localhost", 4444, "*chrome", http://fnng.cnblogs.com/);

//可以用下面一行的代码来替换上面一行代码

//cmd=getNewBrowserSession&1=*custom c:\Program Files\Mozilla Firefox\MyBrowser.exe&2=http://fnng.cnblogs.com

//如果是IE浏览器的话,可以直接修改浏览器名称,代码如下:

//selenium = new DefaultSelenium("localhost", 4444, " *iexplore", http://fnng.cnblogs.com/); 这种方式更为简便。

        selenium.start();

    }

    @Test

    public void testTest() throws Exception {

        selenium.open("/");

        selenium.click("id=homepage1_HomePageDays_DaysList_DayItem_0_DayList_0_TitleUrl_0");

        selenium.waitForPageToLoad("30000");

    }

    @After

    public void tearDown() throws Exception {

        selenium.stop();

    }

}

如何配置java环境来验证我面的一段代码,请参考https://blog.csdn.net/A_Kaka/article/details/107158981

注意:如果通过这种方式启动浏览器,你必须手动配置浏览器,以便将selenium Server 作为代理,通常这仅仅意味着打开你的浏览器参数文件,并指明“localhost:4444”作为HTTP代理。但是,不同浏览器的指令可能完全不一样,这就需要从你的浏览器支持文档中寻找更多细节。

欢迎大家加入笔者的软件测试技术交流群1125760266,进群可免费领取资料,更有大牛在线答疑!

相关文章

网友评论

    本文标题:新手如何学自动化测试二(selenium IDE 功能扩展)

    本文链接:https://www.haomeiwen.com/subject/zrdgqktx.html