使用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、计算机基础

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

相关推荐
霍格沃兹测试开发学社测试人社区1 小时前
提升软件测试报告的质量:Allure2中添加用例失败截图、日志、HTML块和视频的方法
软件测试·测试开发
游客5203 小时前
Selenium 基本用法入门指南
selenium·测试工具
古人诚不我欺3 小时前
Postman之newman
测试工具·postman
善良的修罗4 小时前
postman 最强内置函数使用集合
测试工具·lua·postman
本当迷ya5 小时前
💖2025年不会Stream流被同事排挤了┭┮﹏┭┮(强烈建议实操)
后端·程序员
zhang-zan6 小时前
nodejs操作selenium-webdriver
前端·javascript·selenium
黑客呀6 小时前
抓包 127.0.0.1 (loopback) 使用 tcpdump+wireshark
测试工具·wireshark·tcpdump
霍格沃兹测试开发学社测试人社区11 小时前
数据驱动与并行策略:用 JUnit 5 让软件测试更高效
软件测试·测试开发·junit
霍格沃兹测试开发学社测试人社区11 小时前
软件测试丨探索 JUnit 5 中的参数化与调度执行:提升软件测试的效率与灵活性
软件测试·测试开发·junit
明明跟你说过11 小时前
Linux中的【tcpdump】:深入介绍与实战使用
linux·运维·测试工具·tcpdump