使用Selenium IDE录制脚本

今天,我们开始介绍基于开源Selenium工具的Web网站自动化测试。

Selenium包含了3大组件,分别为:
1. Selenium IDE

基于Chrome和Firefox扩展的集成开发环境,可以录制、回放和导出不同语言的测试脚本。

2. WebDriver

包括一组为不同语言、浏览器提供的类库和驱动,用编程的方式来识别和操作网页及其元素。

3. Selenium Grid

提供主从架构的、分布式测试执行环境,由Hub(主控)和Node(节点)组成。

老版本的Selenium还包括一个已经被废弃的RC组件,它的原理是通过代理的方式向被测试的网页中注入JavaScript代码,完成对页面的操控。当前,RC已被WebDriver组件所替代。大家如在网上看到于此有关的文章,可直接忽略。

如果对软件测试、接口、自动化、性能测试、测试开发、面试经验交流。感兴趣可以加裙485187702,群内会有不定期的发放免费的资料链接,这些资料都是从各个技术网站搜集、整理出来的,如果你有好的学习资料可以私聊发我,我会注明出处之后分享给大家。

使用Selenium IDE录制自动化测试脚本

  1. 首先安装Chrome浏览器,然后从这里安装Selenium IDE插件;

  2. 点击浏览器右上角的扩展图标(类似1个拼图的符号),选择打开Selenium IDE;

  3. 在弹出的窗口中,点击Record a new test in a new project菜单项;

  4. 输入项目名称(如project1),点击确定;

  5. 在BASE URL文本框中,输入百度网址*https://www.baidu.com*;

  6. 点击Start Recording,开始录制脚本;

  7. 在弹出的百度网站窗口中,完成以下操作:
    7.1. 在关键字文本框中,输入禅道
    7.2. 点击搜索 按钮;
    7.3. 在搜索结果中,点击第1条的标题。

  8. 切换到录制工具窗口,点击右上角红色图标,停止录制;

  9. 输入脚本名称(如script1),进入以下编辑器窗口:

  10. 点击脚本名称(如script1)右侧的更多图标(为纵向排列的3个点),选择Export菜单项;

  11. 此处我们以内嵌Java注释的方式,对脚本做简单的介绍。生成的脚本如下,已忽略其中用于等待窗口的waitForWindow方法和调用。

    // 导入Java类库,如selenium、junit等
    import org.openqa.selenium.WebDriver;

    // 生成的JUnit测试类
    public class Test1Test {

    // 类级别的私有变量
    private WebDriver driver;
    private Map<String, Object> vars;
    JavascriptExecutor js;

    // 使用JUnit的@Before注解,定义在测试执行前,需执行的初始化行为。
    @Before
    public void setUp() {
    // 初始化WebDriver对象
    driver = new ChromeDriver();

    复制代码
    // 初始化JS执行器对象,用于在浏览器中执行Javascript代码。
    js = (JavascriptExecutor) driver;

    }

    // 使用JUnit的@After注解,定义在测试完成后,需执行的清理动作。
    @After
    public void tearDown() {
    // 退出并清理WebDriver对象
    driver.quit();
    }

    // 使用JUnit的@Test注解,标注此方法为一个测试方法。
    @Test
    public void test1() {
    // 打开百度网站首页
    driver.get("https://www.baidu.com/");

    复制代码
    // 设置浏览器窗口大小为1440x875
    driver.manage().window().setSize(new Dimension(1440, 875));
    
    // 找到id为kw的(文本框)控件,在里面输入"禅道"。
    driver.findElement(By.id("kw")).sendKeys("禅道");
    
    // 找到id为su的(按钮)控件,并点击。
    driver.findElement(By.id("su")).click();
    
    // 找到指定内容的链接,并点击。 
    driver.findElement(By.ByPartialLinkText("开源项目管理软件")).click();

    }

    }

最后:下面是配套学习资料,对于做【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你!【100%无套路免费领取】

软件测试面试小程序

被百万人刷爆的软件测试题库!!!谁用谁知道!!!全网最全面试刷题小程序,手机就可以刷题,地铁上公交上,卷起来!

8小时传疯!大厂面试真题全被大佬整理在这个小程序上了!【软件测试,建议收藏】

涵盖以下这些面试题板块:

1、软件测试基础理论 ,2、web,app,接口功能测试 ,3、网络 ,4、数据库 ,5、linux

6、web,app,接口自动化 ,7、性能测试 ,8、编程基础,9、hr面试题 ,10、开放性测试题,11、安全测试,12、计算机基础

全套资料获取方式:点击下方小卡片自行领取即可

相关推荐
奔跑中的小象15 小时前
GuideLLM 压测实战指南:给大模型推理服务做一次完整 SLA 评估
测试工具·guidellm
一拳不是超人17 小时前
做独立开发三个月,我的第一个产品终于有了 1000 个用户
前端·程序员
cpolar技术支持17 小时前
本地 Playwright 测试报告怎么远程复盘?Trace Viewer 跑起来后,用 cpolar 分享失败现场
前端·自动化测试·测试工具·cpolar·playwright
Hilaku18 小时前
作为面试官,我最怕遇到什么样的候选人?
前端·javascript·程序员
更深兼春远19 小时前
Python到底怎么用于测试?
自动化测试·软件测试·python·接口测试
蒸鱼Yuzheng1 天前
Python 游戏测试开发怎么准备:日志解析、接口校验、并发与可维护性
自动化测试·python·测试开发·面试题·游戏测试
尚云第三方软件测试1 天前
数字化项目验收测试:性能、易用性、可靠性一体化框架
软件测试·软件测评·软件验收测试
Sam_Deep_Thinking1 天前
new Thread()之后发生了什么?
java·后端·面试·程序员
测试狗科研平台1 天前
材料热传导能力表征——热导率计算方法与流程解析
科技·测试工具·材料工程