量角器 - 如何在 angular 加载之前在浏览器中 运行 编码

Protractor - how to run code in browser before angular loads

当 运行 进行我的自动化测试时,我需要在 angular 初始化之前在我的浏览器中 运行 编码。

我试过 mockModules 方法:

function setupBrowser(){
    console.log(`Setting up browser`);
}

browser.addMockModule('someRandomStringNotAModuleName', setupBrowser );

browser.get('myAppUrl');

但我从未在浏览器控制台中看到 setting up browser 消息。我想这是因为我不是要模拟 angular 模块,我只是想在我的应用程序启动之前执行代码。

有其他方法吗?

在我导航到我的 angular 应用程序之后但在 angular 启动之前,我需要 运行 这段代码,因为我正在监听 startstop 来自我的应用程序的消息。我有一个等待 stop 消息的函数。如果没有 start 消息,它会立即 returns。

如果我无法在 angular 启动前 运行 编码,我无法确定我是否已正确捕获所有 start 消息。

谢谢

除非遇到配置文件中的 onPrepare 段,否则您的自动化测试将不会启动。如果您希望在浏览器开始执行测试之前执行任何代码,onPrepare 就是放置它的地方。

如果您想在浏览器启动之前执行某些操作,则必须添加一个脚本来执行您需要的功能,并将其添加到 package.json "script" 以在量角器之前执行conf.js 执行。