我使用 simpletest 作为我的 php 单元测试框架。
我将所有测试用例放入一个 all_tests.php 文件中
然而,由于我们的开发人员倾向于使用 firefox 来运行 all_tests.php,我们往往会错过特定于浏览器的失败案例,尤其是 ie7。
有没有一种方法,当有人在 Firefox 中浏览我们的 all_tests.php 时,它会自动触发一个 ie 窗口为同一页面打开?
我使用 simpletest 作为我的 php 单元测试框架。
我将所有测试用例放入一个 all_tests.php 文件中
然而,由于我们的开发人员倾向于使用 firefox 来运行 all_tests.php,我们往往会错过特定于浏览器的失败案例,尤其是 ie7。
有没有一种方法,当有人在 Firefox 中浏览我们的 all_tests.php 时,它会自动触发一个 ie 窗口为同一页面打开?
有一种方法,但浏览器会在执行此操作之前请求许可。
您可以使用此脚本打开 Internet Explorer(但不要忘记它只有在用户接受安全警告时才有效)
function runExeOnMozilla(path/*as string*/,args/*as array*/) {
try{
netscape.security.PrivilegeManager.enablePrivilege('UniversalXPConnect');
var file = Components.classes["@mozilla.org/file/local;1"]
.createInstance(Components.interfaces.nsILocalFile);
file.initWithPath(path);
var process = Components.classes["@mozilla.org/process/util;1"]
.createInstance(Components.interfaces.nsIProcess);
process.init(file);
process.run(false, args, args.length);
} catch(err){
alert('access denied');
}
}
编写打开所有窗口的命令批处理文件。
@echo off
set URL="http://example.com/"
cd "C:\Program Files\Internet Explorer"
iexplore %URL%
cd "C:\Program Files\Mozilla Firefox"
firefox %URL%
不是我知道的——如果一个网页可以从你的硬盘上运行任意程序,那将是一个安全漏洞。
您可以编写一个简单的 Firefox 扩展来执行此操作,或者,如果您在 Windows 上,则以某种方式使用(或修改)IETab。
除了可能制作(或使用现有的)插件之外,我会说不。这将构成严重的安全威胁。