测试多个并发浏览器会话

6
我正在使用Ruby on Rails开发一款卡牌游戏,并且正在尝试寻找最佳测试方法。
当玩家加入游戏时,他们的Player对象将存储在会话中。显然,为了使游戏正常运行,在游戏中需要有两个以上的玩家。由于不同选项卡中的会话是相同的,因此我目前通过在FireFox和Internet Explorer中同时打开应用程序来测试双人游戏。
在我下载Chrome以测试第三名玩家之前,是否有更简单的方法?
编辑:澄清一下,我还没有到想要运行自动化测试来查看是否会出错的阶段。我现在处于这样一个阶段:我想能够修改后端数据库,然后刷新页面并查看它的外观或单击按钮以查看(通常)失败的响应或者是否表现得正确。
4个回答

5

您可以使用多个配置文件运行 Firefox。从命令行进入 Firefox 安装目录,然后运行 firefox -P。为您想要运行的每个实例创建一个配置文件。关闭配置文件管理器,然后对于每个配置文件运行 firefox -no-remote -P "profile name"。您可以运行任意数量的 Firefox 实例,每个实例都使用独立的配置文件和独立的会话。


1

自动化它!


你肯定不想手动测试这个功能。你可以使用一个带有curl库的Ruby脚本来生成“动作”,并管理包括会话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. 

“测试”可能不是很准确的词汇,或者范围有误。我不是在检查半成品应用程序是否会出现故障;而是在检查我的初步开发工作是否能够大致达到预期目标。 - Chowlett
watir看起来很不错。好链接! - Chowlett
很棒的是,将它们组合在一起很容易——你可以让几个脚本相互对战。 - Chris McCauley
是的,但对于我现在所需的还是太高级了。让我去编辑我的问题以便更清晰明了。 - Chowlett

1
使用http://watir.com/创建Ruby脚本来测试您的游戏。
使用多个Watir::Browser实例来运行多个浏览器。
使用Firefox的配置文件和-no-remote开关来保持它们分离。另请参阅this question

0

在您的Web浏览器中,不要打开新标签页,而是创建一个新窗口。新窗口将拥有自己的会话。这适用于Internet Explorer,但不适用于Firefox。我还没有在基于WebKit的浏览器中进行测试。


在Firefox中不是真的。我可以让它在IE中工作(文件->新会话),这是一个好消息,但为了使Firebug可用,我可能会选择FF配置文件路线。 - Chowlett
你说得对,我已经有一段时间没有在Firefox上做过了,所以我的记忆有点模糊。我已经编辑了我的回答。 - John Topley

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接