我遇到了zombie.js 测试框架和Google Maps API 的问题。
我有一个简单的zombie.js,它加载一个主页并尝试单击一个登录链接。但是,当我查看返回的主页 HTML 时(从zombie.js 浏览器对象的角度来看),我在正文部分只看到了这个:
<body>
<script src="https://maps.gstatic.com/intl/en_us/mapfiles/api-3/9/12/main.js" type="text/javascript"></script>
</body>
如果我从原始页面中删除 Google Maps javascript,一切正常,我会得到完整的部分。请求不使用地图 API 的其他页面也可以正常工作。
我在这里看到一个相关问题,但没有完全描述解决方法:https ://github.com/assaf/zombie/issues/250
谁能帮我解决这个问题?
这是有问题的zombie.js代码:
suite('Zombie Sign In', function() {
test('Home page should have sign-in link', function(done) {
var browser = new Browser();
browser.debug = true;
browser.authenticate().basic(conf.basicAuth.username, conf.basicAuth.password);
browser.visit(conf.baseURL, function(e, browser) {
console.log(browser.html()); // here is where I get the empty body section
browser.clickLink("Sign In", function() {
browser.text("title").should.eql('my title');
done();
});
});
});
});