gpt4 book ai didi

javascript - Chrome-Extensions Jasmine 测试,未识别 Chrome、onMessage 请求方法

转载 作者:行者123 更新时间:2023-11-28 20:51:37 25 4
gpt4 key购买 nike

所以我写了一个小的 chrome 扩展程序,它在 chrome 中获取我的选择并将它添加到弹出窗口中的一个小文本框。

对于那个 Chrome 扩展,我想使用 Jasmine 编写一些小测试。但是,每当我尝试将我的消息 request.method 测试为一组 request.method 时,Jasmine 总是返回

Error: Expected undefined to be 'get_sel_chrome.

这可能看起来很小,但我就是找不到我做错的地方。

这是我的文件:

//Jasmine Main Specification File

//Creating Suite
describe("Lacy-R Functionality Requirement Min Tests: ", function(){

//telling Jasmine to make sure that these are setup before each tests
beforeEach(function(){
chrome = {
extension: {
onMessage: {
addListener: function(request, sender, sendResponse){}
}
}
}

});

it('Check if Jasmine is loading. Just a small basic Jasmine test', function(){
expect(1).toEqual(1);
});


it('Checks if the request method is get_sel_chrome' , function(){
expect(chrome.extension.onMessage.addListener(function(request, sender, sendResponse){request.method})).toBe("undefined");
});

it('Using Chrome API functions' , function(){

});
});

我的主要 JS 文件:

//stuff chrome does
chrome.extension.onMessage.addListener(function(request, sender, sendResponse){

if (request.method = "get_sel_chrome"){

sendResponse({data: window.getSelection().toString()});
}

else{
sendResponse({});} //empty response
});

第二个文件

$(function(){
$('#btn_run').click(function(){get_Info();});
});

function get_Info() {
chrome.tabs.query({active:true, windowId: chrome.windows.WINDOW_ID_CURRENT},

function(tab) {
chrome.tabs.sendMessage(tab[0].id, {method: "get_sel_chrome"},

function(response){
var text = document.getElementById('text');
text.innerHTML = response.data;

});
});
}

最佳答案

if (request.method = "get_sel_chrome"){

设置 request.methodget_sel_chrome,这可能不是您想要的。

为避免将来出现这种情况,请参阅 Which equals operator (== vs ===) should be used in JavaScript comparisons?为什么要使用 === 进行比较。 JSHint也应该捕获这一点。

关于javascript - Chrome-Extensions Jasmine 测试,未识别 Chrome、onMessage 请求方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44319770/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com