【问题标题】:Automated system testing for chromecast receiver applicationchromecast 接收器应用的自动化系统测试
【发布时间】:2014-05-21 14:37:00
【问题描述】:

我想知道是否有一种对 Chromecast 接收器应用程序进行自动化系统测试的好方法?

如果您在 Chrome 浏览器中打开应用程序 URL,cast_receiver 库无法在以下位置找到 websocket 连接:

ws://localhost:8008/v2/ipc

由于它处理应用程序和 Chromecast 硬件之间的通信,我正在考虑类似 Node.js websocket 服务器的东西,它可以与 chromecast 接收器应用程序通信。有没有这样的系统,或者有人知道谷歌是否有计划为这种测试发布一些东西?

另外,chromecast浏览器和chrome浏览器的区别会不会还有其他问题?据我了解,chromecast 浏览器只是 chrome 的一个子集,这让我认为它应该可以工作。

【问题讨论】:

    标签: automated-tests chromecast google-cast system-testing


    【解决方案1】:

    不,没有简单的方法可以做到这一点。

    免责声明:我没有尝试任何我将要提出的建议。这也可能是一个非常糟糕的想法,因为 Google 可以随时以他们想要的任何方式更改协议,因为它不是公开的东西。

    重大免责声明:您这样做可能违反了 ToS,因为第 3.2 节(开发者政策)规定您“不得……开发独立技术……任何 Google Cast 接收器的任何功能”。可能,您将制作复制 IPC 功能的独立技术。但我不知道。我不是律师。

    如果您想这样做,我建议您制作一份 Google Cast Receiver SDK 的副本(截至 4 月为 www.gstatic.com/cast/sdk/libs/receiver/2.0.0/cast_receiver.js 2015 年 28 月 28 日)并对其进行更改,以便它注销正在发送和接收的消息。

    幸运的是,我们似乎有日志消息来帮助我们找到相关代码。

    接收方法有字符串“Received message”。我猜想“a.message”就是正在接收的内容。

    发送方法有字符串“IPC message sent”。我猜想发送的是“a”。

    检测完代码副本后,您需要将其发布到您的接收器应用可以看到的位置,然后您需要编辑您的接收器应用以指向您的新的和改进的 SDK。请确保您在未发布的应用上执行此操作仅用于测试目的。

    完成后,您需要找到某种方法将您的消息从代码中提取出来并放入您可以访问的内容中。你有几个选择。

    1. 更多地摆弄代码并弄清楚如何让 Chromecast 注销您想要的数据;
    2. 将信息存储在数组中,并使用调试器读取;
    3. 打开您自己的套接字(或 websocket)并将该数据发送到您控制的服务器。

    从这里,您可以运行您的应用程序,与之交互,然后完整记录发送和接收的 IPC 消息。有了这个,您就可以创建自己的 Fake-IPC 服务器来侦听特定消息并吐出日志中的内容。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-05-21
      • 1970-01-01
      • 1970-01-01
      • 2014-07-27
      • 1970-01-01
      • 2020-03-11
      • 2013-11-25
      • 2014-07-25
      相关资源
      最近更新 更多