代码之家  ›  专栏  ›  技术社区  ›  Chowlett

测试多个并发浏览器会话

  •  6
  • Chowlett  · 技术社区  · 15 年前

    我正在RubyonRails中开发一个纸牌游戏,并试图找出最好的测试方法。

    当玩家加入游戏时,其玩家对象将存储在会话中。显然,为了使游戏有效运行,我需要在一个游戏中同时有多个玩家。由于同一个浏览器中不同选项卡的会话是相同的,所以我目前正在测试一个2人游戏,让应用程序同时在Firefox和Internet Explorer中打开。

    在我去下载Chrome测试第三个播放器之前…有更简单的方法吗?

    编辑: 为了澄清这一点,我还没有到要运行自动化测试以查看它是否会中断的阶段。我正处于这样一个阶段,我希望能够破解后端数据库,然后刷新页面并查看它现在的样子,或者单击一个按钮查看(通常)故障响应,或者查看行为是否正确。

    4 回复  |  直到 15 年前
        1
  •  5
  •   JamesH    15 年前

    您可以使用多个配置文件运行firefox。从命令行转到firefox的安装目录并运行 firefox -P . 为要运行的每个实例创建配置文件。关闭配置文件管理器,然后针对每个配置文件运行 firefox -no-remote -P "profile name" . 您可以运行任意多个您想要的firefox实例,每个实例都有一个独立的配置文件,从而独立的会话。

        2
  •  1
  •   Chris McCauley    15 年前

    自动化它!


    你真的不想手动测试这个。您可以将Ruby脚本与 curl libs生成“移动”并管理响应,包括会话cookie。
    作为一个引子,从api文档中看到这个片段,听起来会对您有所帮助。

    easy.cookiejar = "cookiejar.file" => "pwd string"
    
    Set a cookiejar file to use for this Curl::Easy instance. 
    This file will be used to persist cookies. 
    
        3
  •  1
  •   Community CDub    7 年前

    使用 http://watir.com/ 要创建运行游戏的Ruby脚本。

    使用倍数 Watir::Browser 运行多个浏览器的实例。

    使用火狐的个人资料和 -no-remote 切换以保持它们分开。也见 this question .

        4
  •  0
  •   John Topley    15 年前

    与其打开新的选项卡,不如在Web浏览器中创建一个新窗口。新窗口将有自己的会话。这适用于Internet Explorer,但不适用于Firefox。我还没有在基于WebKit的浏览器中测试过它。