`
shijunjuan
  • 浏览: 46878 次
  • 性别: Icon_minigender_2
  • 来自: 上海
社区版块
存档分类
最新评论

使用WebDriver测试Flash

阅读更多
在网上看到一篇介绍如何使用WebDriver测试Flash的文章

http://learnseleniumautomation.blogspot.com/2011/12/driving-flex-application-via-selenium-2.html

Flex应用需要使用ActionScript extension编译。没有测试过。如果以后需要,可以借鉴一下。

import org.openqa.selenium.JavascriptExecutor;
import org.openqa.selenium.WebDriver;

public class FlexWebDriver {
    private final WebDriver webDriver;
   private final String flashObjectId;

    public FlexWebDriver(final WebDriver webDriver, final String flashObjectId) {
        this.webDriver = webDriver;
        this.flashObjectId = flashObjectId;
    }

    public String click(final String objectId, final String optionalButtonLabel) {
        return call("doFlexClick", objectId, optionalButtonLabel);
   }

    public String click(final String objectId) {
         return click(objectId, "");
    }

//... Omitted for clarity ...

    private String call(final String functionName, final String... args) {
      final Object result =
            ((JavascriptExecutor)webDriver).executeScript(
                 makeJsFunction(functionName, args),
                 new Object[0]);

         return result != null ? result.toString() : null;
    }

    private String makeJsFunction(final String functionName, final String... args) {
         final StringBuffer functionArgs = new StringBuffer();

        if (args.length > 0) {
            for (int i = 0; i < args.length; i++) {
                if (i > 0) {
                    functionArgs.append(",");
            }
                functionArgs.append(String.format("'%1$s'", args[i]));
         }
        }
        return String.format(
            "return document.%1$s.%2$s(%3$s);",
            flashObjectId,
            functionName,
            functionArgs);
    }
}
分享到:
评论

相关推荐

    ruby操作flash窗口

    总之,"ruby操作flash窗口"主要涉及使用Ruby的Selenium WebDriver库进行Web自动化测试,尤其是针对Flash内容的交互。虽然随着Flash的淘汰,这样的操作逐渐减少,但对仍然依赖Flash的遗留系统来说,这样的测试技术...

    selenium 扩展jar包 flash flex

    在IT行业中,Selenium是一个...这包括了使用Selenium WebDriver API进行Flash对象的操作,以及对Flex应用程序的组件进行功能验证。在实际工作中,这对于维护和测试那些仍然依赖于Flash和Flex技术的Web应用至关重要。

    WATIR-WEBDRIVER自动化学习指导

    WATIR-WEBDRIVER提供了一套全面且易于使用的API,使得测试人员能够方便地编写自动化测试脚本,覆盖Web页面上几乎所有类型的元素。通过上述示例可以看出,无论是简单的文本输入还是复杂的交互式元素,都可以通过WATIR...

    系统自动化测试实战.pptx

    - **PC端**:对于Flash播放器的自动化测试,可能需要特定的技术如Adobe的Automator或第三方工具。 - **移动端**:Appium用于iOS和Android的自动化测试。 - **语言**:Python常用作自动化测试的编程语言。 综上所...

    flex测试总结

    - **Selenium Flex API**:结合Selenium WebDriver进行自动化UI测试。 - **FDT Profiler**:用于性能分析和内存泄漏检测的工具。 6. **源码控制**:在Flex项目中,使用Git或SVN等源码控制系统是必要的,以便版本...

    selenium

    Selenium 是一个强大的 Web ...它不仅适合初级测试人员使用 IDE 快速生成脚本,还为高级用户提供了丰富的 API 和分布式测试功能。结合其他工具,Selenium 可以为软件开发过程中的测试环节提供高效、可靠的解决方案。

    selenium2 python API

    例如,可以和Sikuli等图像识别工具结合使用,用Sikuli操作Flash等。 - **设置浏览器宽高**:通过`driver.set_window_size(width, height)`方法可以设置浏览器窗口的宽度和高度,这使得可以模拟不同的设备尺寸进行...

    Web Automation Framework-开源

    1. **Selenium**:Selenium 是一个广泛使用的Web自动化测试框架,支持多种浏览器和编程语言。它提供了WebDriver接口,允许与浏览器进行交互,模拟用户行为,如点击按钮、填写表单等。Selenium还支持分布式测试,可以...

    moodle-bot:一个自动登录Moodle学习管理系统的简单机器人,然后参加Adobe在线课程

    它使用Selenium WebDriver和计划模块。入门要启动并运行本地副本,请按照以下步骤操作。先决条件根据您的操作系统下载所有先决条件。 firefox(版本&lt;69,因为从69开始,它不支持不要求允许Flash播放器。我使用...

    谷歌浏览器以及相关驱动

    - **ChromeDriver**:这是一个自动化测试工具,允许开发者通过WebDriver协议控制Chrome浏览器进行自动化测试,确保网站在Chrome中的功能正确无误。 - **GPU驱动**:为了实现高效的图形渲染,Chrome依赖于操作系统...

    electron中文文档

    **使用 Pepper Flash 插件与 Widevine CDM 插件** - **多媒体支持**:讲解如何在 Electron 应用中使用这些插件以增强多媒体内容的支持能力。 #### 打包与分发 **打包应用** - **打包指南**:介绍如何将应用打包...

    electron中文教程.pdf

    - **使用Selenium和WebDriver**:自动化测试工具的集成方法。 - **开发人员工具扩展**:如何扩展或自定义Electron的开发者工具。 - **使用Pepper Flash插件**:如何集成旧版的Flash插件。 - **使用Widevine CDM插件*...

    Python中selenium实现文件上传所有方法整理总结

    文件上传是所有UI自动化测试都要面对的一个头疼问题,今天博主在这里给大家分享下自己处理文件上传的经验,希望能够帮助到广大被文件上传坑住的seleniumer。 首先,我们要区分出上传按钮的种类,大体上可以分为两种...

    python基于phantomjs实现导入图片

    在这个例子中,我们使用了`AutoIt`库来模拟用户界面的操作,因为某些网页的上传按钮可能基于Flash,而PhantomJS不支持Flash。`control_set_text`函数用于设置文本框的值,即图片的URL,然后发送“Tab”键来切换到...

    Progressive Web Apps(PWAS)开发教程

    11. **WebDriver和WebView**:用于自动化测试和开发Web应用的技术,对提高开发效率和质量有重要作用。 12. **WebVR开发者指南**:随着WebVR技术的发展,PWA开发者可以利用这些指南和工具来构建和优化VR应用。 为了...

Global site tag (gtag.js) - Google Analytics